begin writeln ('введите целое число'); readln( a ); x:=a; s:=0; while ( x<>0 ) do begin s := s + (x mod 10); x := x div 10; end;
propercarwashes275
15.03.2020
Предложенные фрагменты программы должны выполнять нахождение и вывод абсолютной величины суммы первых 1, 2, ...8 элементов массива А - всего 8 сумм. В реальности будут восемь раз выведены нули, потому что отсутствует фрагмент, в котором элементам массива А присваиваются какие-либо значения.
Блок-схемы достаточно одной, потому что все три фрагмента определяют одни и те же шаги алгоритма.
1. Pascal
var A: array[1..100] of integer; N, I, J: integer; S: real;
begin N := 8; for I := 1 to N do begin S := 0; for J := 1 to I do S := S + A[J]; S := abs(S); writeln('S=', S:9:2) end; readln; end.
2. QBASIC
DEFINT I-J, N, S DIM A(100) AS INTEGER N = 8 FOR I = 1 TO N S = 0 FOR J = 1 TO I S = S + A(J) NEXT J S = ABS(S) PRINT S NEXT I END
3. Школьный АЯ (КуМИР)
алг слово(рез вещ s) нач цел таб A[1:100] цел n,I,j n:=8 нц для I от 1 до n s:=0 нц для j от 1 до I s:=s+A[j] кц s:=abs(s) вывод s кц кон
mbrilliantova
15.03.2020
Последнее проверяемое число 7FF, поскольку большее число при удвоении будет четырехзначным, нарушая условие задания.
procedure Analyze(n: integer; var sd: integer; var has2: boolean); {Для заданного целого n возвращает: sd - сумму цифр в шестнадцатиричном представлении; has2 - true, если среди шестнадцитиричных цифр имеется хотя бы одна двойка.} const mask = $00F;
var i, r: integer;
begin has2 := false; sd := 0; for i := 1 to 3 do begin r := (n and mask); has2 := (has2 or (r = 2)); sd := sd + r; n := (n shr 4); end end;
function IsSuitable(n: integer): Boolean; {Проверяет, удовлетворяет ли число n набору условий}
var s1, s2: integer; has2, stub: boolean;
begin Analyze(n, s1, has2); Analyze(2 * n, s2, stub); IsSuitable := ((s1 = s2) and has2) end;
var i, n: integer;
begin n := 0; for i := $100 to $7FF do if IsSuitable(i) then n := n + 1; Writeln('Найдено чисел- ', n) end.
Результат выполнения программы: Найдено чисел- 23
Ответить на вопрос
Поделитесь своими знаниями, ответьте на вопрос:
Sos. найти произведения четных чисел от 10 до 20. написать программу в паскаль