Сейчас решаю задачки С2 по информатике.Написал две программы,но репетитор сказал,что их надо решать рационально.Вот я бы и хотел себя проверить,рационально ли я их решил.
Задачи то легкие:
1)Дан целочислительный массив из 30 элементов.Они могут принимать значения от 0 до 100 - баллы,полученные на Егэ учениками.Нужно написать программу,которая подсчитывает и выводит средний балл учащихся,сдавших экзамен(более 29 баллов набравшие).Гарантируется,что хотя бы один ученик сдал экзамен.
Вот программа:
Const N=30;
Var A: array [1..N] of Integer;
i,x,y:Integer;
s:real;
Begin
for i:=1 to N do
readln(A[i]);
For i:=1 to N do
If (A[i]<0) or (A[i]>100) then Writeln('Takogo balla net' , '(',A[i],')');
x:=0; {SUMMA}
y:=0; {kolichestvo}
i:=1;
for i:=1 to N do
if (A[i]>20) and (A[i]<=100) then begin
X:=X+A[i];
y:=y+1;
end;
S:=X/Y; {sredniy ball}
Writeln('x=',x);readln;
writeln('y=',y);readln;
Writeln('S=',S :2:2);
Readln;
End.
2)Дан целочислительный массив из 30 элементов.Они могут принимать значения от 160 до 200 - рост учащихся выпускного класса.Нужно написать программу,которая подсчитывает и выводит минимальный рост игрока баскетбольной команды.Гарантируется,что хотя бы один ученик играет в команде.
Программа:
Const N=30;
Var A: array [1..N] of Integer;
i,x,y:Integer;
s:real;
Begin
for i:=1 to N do
readln(A[i]);
For i:=1 to N do
If (A[i]<160) or (A[i]>200) then Writeln('S takim rostom uchenika ne vozmut v komandu');
If (A[i]<70) or (A[i]>220) then Writeln('Nakogo rosta ne mozhet bit u vipusknika');
If (A[i]<0) then Writeln('Takogo rosta ne bivaet');
x:=200; {min}
for i:=1 to N do
if (A[i]>=160) and (A[i]<=200) then
if A[i]
Writeln('x=',x);
readln;
End.
__________________
|