Запишите программу на основе фрагмента программы на алгоритмическом языке и определите результат выполнения, построив трассировочную таблицу. f:=22 f:=f-20 n:=1 Пока n меньше = 5 НЦ f:=f+n n:=n+1 КЦ Вывод(f,n);
//Как-то громоздко получилось, но я так вижу. Эх, выходные. const n=5; var a:array[1..n] of integer; b:array[0..8] of integer; ar:array[1..n] of integer; i,c,j:integer; begin randomize; writeln('Array:'); for i:=1 to n do begin a[i]:=random(8); write(a[i]:4); end; for i:=1 to n do begin; for j:=0 to 8 do if a[i]=j then inc(b[j]); end; for i:=1 to n do begin; for j:=0 to 8 do if (b[j]>1) and (a[i]=j) then a[i]:=9; if a[i]<>9 then begin; inc(c); ar[c]:=a[i]; end; end; writeln; for i:=0 to 8 do writeln(i,'=',b[i]); writeln; writeln('Final array:'); for i:=1 to n do if a[i]=9 then a[i]:=0;
for i:=1 to c do begin; a[i]:=ar[i]; write(a[i]:4); end; end.
Program lol (input, output); var i, n, d, sd, s4d, kd, kn4d, k4d, kbd:integer; begin writeln ('Введите само число и число d'); read (n, d); writeln ('Делители:'); I:=1; sd:=0; s4d:=0; kd:=0; kn4d:=0; k4d:=0; kbd:=0; while I <=n do begin if n mod I = 0 then begin kd:=kd+1; writeln (I); sd:=sd+I; if I > d then kbd:=kbd+1; if I mod 2 = 0 then begin s4d:=s4d+I; k4d:=k4d+1; end else kn4d:=kn4d+1; end; I:=I+1; end; writeln (' '); writeln ('сумма делителей ', sd); writeln ('сумма четных делителей ', s4d); writeln ('количество делителей ', kd); writeln ('количество нечетных делителей ', kn4d); writeln ('количество четных делителей ', k4d); writeln ('количество делителей болеше d ', kbd); end.
0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota
Оформи подписку