Написать задачу в паскале,используя алгоритм функции:
300 учеников заданы 3 оценками.Для каждого сосчитать количество учеников,средний бал которых больше 4.
Аноним:
Функция всегда имеет свой алгоритм, в соответствии с которым она написана. Но фраза "используя алгоритм функции" некорректна. Правильно писать "используя функцию", а еще лучше - "используя пользовательскую функцию", что подчеркивает необходимость определения функции и обращение к ней из основной программы.
А "Для каждого сосчитать количество учеников..." - это имеется в виду, что каждая из трех оценок выставлена по какому-то предмету и для каждого предмета надо найти "количество учеников, средний балл которых превышает 4"?
Если все это так, то последний вопрос: какая версия Паскаля? Турбо, Фри, АБЦ, АБЦ.Нет... ?
турбо паскаль,да всё верно
Всегда указывайте версию Паскаля, особенно когда разговор о функциях и массивах. У версий в этом плане серьезные отличия.
оки я просто турбо пользуюсь всегда
А все почти уже давно работают с PascalABC.NET поскольку он а) мощнее б) работает в Windows, не в DOS-окне
я просто не признаю ABC как то
Ну это Ваше дело и Ваше право
а написать само решение можешь если не сложно? пожалуйста
Ответы
Ответ дал:
1
uses Crt;
const
n=300;
type
V=array[1..n,1..3] of 0..5;
function Cnt4(var a:V):integer;
{ Количество учеников со средним баллом выше 4 }
var
i,j,k:integer;
sb:real;
begin
k:=0;
for i:=1 to n do
begin
sb:=0;
for j:=1 to 3 do sb:=sb+a[i,j];
sB:=sb/3;
if sb>4 then
Inc(k);
end;
Cnt4:=k
end;
var
i,j:integer;
M:V;
begin
ClrScr;
Writeln('Для каждого ученика вводите через пробел три его оценки');
for i:=1 to n do
begin
Write(i,': ');
for j:=1 to 3 do Read(M[i,j])
end;
Write('Количество учеников со средним баллом выше 4: ');
Writeln(Cnt4(M),' ');
ReadKey
end.
const
n=300;
type
V=array[1..n,1..3] of 0..5;
function Cnt4(var a:V):integer;
{ Количество учеников со средним баллом выше 4 }
var
i,j,k:integer;
sb:real;
begin
k:=0;
for i:=1 to n do
begin
sb:=0;
for j:=1 to 3 do sb:=sb+a[i,j];
sB:=sb/3;
if sb>4 then
Inc(k);
end;
Cnt4:=k
end;
var
i,j:integer;
M:V;
begin
ClrScr;
Writeln('Для каждого ученика вводите через пробел три его оценки');
for i:=1 to n do
begin
Write(i,': ');
for j:=1 to 3 do Read(M[i,j])
end;
Write('Количество учеников со средним баллом выше 4: ');
Writeln(Cnt4(M),' ');
ReadKey
end.
Вас заинтересует
2 года назад
2 года назад
2 года назад
2 года назад
7 лет назад
7 лет назад
9 лет назад