Да се напише програма, която позволява да се въведат брой ученици, брой предмети и след това срочната оценка за всеки от учениците за всеки предмет. След това да се отпечата:
- средния успех на всеки ученик за срока
- средния успех по всеки предмет
По желание: да може да се въведат и имена на учениците и предметите и после да се използват и те при отпечатването.


VAR a:array[1..100,1..100] of integer; m,n,i,j,suma:integer; BEGIN write('Broi uchenici, predmeti: '); readln(m,n); for i:=1 to m do begin writeln('UCHENIK ',i); for j:=1 to n do begin write('Predmet ',j,': '); readln(a[i,j]); end; end; for i:=1 to n do begin suma:=0; for j:=1 to m do suma:=suma+a[i,j]; writeln('Ucenik ',i,': ',suma/m:0:2); end; for i:=1 to m do begin suma:=0; for j:=1 to n do suma:=suma+a[j,i]; writeln('Predmet ',i,': ',suma/n:0:2); end; readln; END.Много добро решение! Оптимално и в най-дребния детайл…
Ето го и решението с „По желание-то“
VAR a:array[1..100,1..100] of integer; m,n,i,j,suma:integer; ime:array[1..100] of string; predmet:array[1..100] of string; BEGIN write('Broi uchenici, predmeti: '); readln(m,n); writeln('Vavedi imenata:'); for i:=1 to m do readln(ime[i]);//Въвеждаме имената на учениците, които след това ще извеждаме чрез индексите writeln; writeln('Vavedi predmetite:'); for i:=1 to n do readln(predmet[i]);//Въвеждаме предметите, които след това ще извеждаме чрез индекси writeln; for i:=1 to m do begin writeln(ime[i]);//извеждаме името на ученика for j:=1 to n do begin write(predmet[j],': '); readln(a[i,j]);//извеждаме предмета и след това въвеждаме оценката на съответното място end; writeln; end; writeln; for i:=1 to m do begin suma:=0; for j:=1 to n do suma:=suma+a[i,j]; writeln(ime[i],': ',suma/n:0:2); end; writeln; for i:=1 to n do begin suma:=0; for j:=1 to m do suma:=suma+a[j,i]; writeln(predmet[i],': ',suma/m:0:2); end; readln; END.Супер! Много добре!