Подсчитать суммы элементов массива с 1-го по 10-й - Pascal ABC
Формулировка задачи:
Само задание:
В произвольном одномерном массиве из 30 элементов(массив сформировать и вывести) подсчитать суммы элементов с 1-го по 10-й, с 11-го по 20-й, с 21-го по 30-й и вывести массив этих сумм.
Необходимо разбить программу на процедуры.
Var x: Array[1..30] of Integer; s: Array[1..3] of Integer; i: Byte; sum: Integer; BEGIN Randomize; Writeln('Произвольный массив:'); For i:=1 to 30 do begin x[i]:=Random(50); Write(x[i],' '); end; For i:=1 to 10 do sum:=sum+x[i]; Writeln; Writeln('Сумма элементов с 1 по 10: ',sum); s[1]:=sum; sum:=0; For i:=11 to 20 do sum:=sum+x[i]; Writeln('Сумма элементов с 11 по 20: ',sum); s[2]:=sum; sum:=0; For i:=21 to 30 do sum:=sum+x[i]; Writeln('Сумма элементов с 21 по 30: ',sum); s[3]:=sum; Writeln('Массив сумм:'); For i:=1 to 3 do Write(s[i],' '); Readln END.
Код к задаче: «Подсчитать суммы элементов массива с 1-го по 10-й - Pascal ABC»
const n=30; type mas=array[1..n] of integer; procedure vvod(var a:mas); var i:byte; begin writeln('Исходный массив'); for i:=1 to n do begin a[i]:=random(50); write(a[i]:4); end; writeln; end; procedure summa(a:mas;var b:mas); var i,j:byte; begin for i:=1 to 3 do begin b[i]:=0; for j:=(i-1)*(n div 3)+1 to i*(n div 3) do b[i]:=b[i]+a[j]; end; writeln('Массив сумм третей'); for i:=1 to 3 do write(b[i]:4); end; var a,b:mas; i:byte; begin randomize; vvod(a); summa(a,b); end.
7 голосов, оценка 3.857 из 5
СОХРАНИТЬ ССЫЛКУ