Досье на сотрудника занимает 12 страниц. на каждой странице 32 строки по 64 символа в строке. используется 8-битная кодировка символов. сколько килобайт требуется для хранения сведений о 5 сотрудниках?
Честно, не поняла ваш код вообще. Почему нет цикла? Предлагаю свое решение: 1)Cначала заполняем массив случайными числами от 2 до 5 (включительно) 2)Потом выводим его (Для проверки) 3) Потом считаем оценки. Но сначала нужно обнулить переменные( В самом начале это делали), а то получится кака (:
program N_0547847; var b, c, d, f, i:integer; a: array [1..20] of integer; begin; randomize; b:=0; c:=0; d:=0; f:=0; for i:=1 to 20 do begin a[i]:=random(4)+2; write(a[i],' '); end; writeln; for i:=1 to 20 do begin if a[i]=2 then b:=b+1; if a[i]=3 then c:=c+1; if a[i]=4 then d:=d+1; if a[i]=5 then f:=f+1; end; writeln('Двоек: ', b); writeln('Троек: ', c); writeln('Четверок: ',d); writeln('Пятерок: ',f); end.
Function IsPrime(n:integer):Boolean; var p:integer; found:Boolean; begin found:= (n Mod 2 = 0); p:=3; while (not found) and (sqr(p)<=n) do begin found:=(n Mod p = 0); p:=p+2 end; IsPrime:=(not found) or (p = 2) end;
const n = 12; var a:array[1..n,1..n] of integer; i,j,s,k:integer; begin Randomize; Writeln('Исходный массив'); for i:=1 to n do begin for j:=1 to n do begin a[i,j]:=Random(99)+1; { интервал [1..99] } Write(a[i,j]:3) end; Writeln end; { решаем } s:=0; for i:=1 to n do begin k:=a[i,i]; if IsPrime(k) then a[i,i]:=s; s:=s+a[i,i] end; { выводим } Writeln('Результирующий массив'); for i:=1 to n do begin for j:=1 to n do Write(a[i,j]:5); Writeln end end.