Задать массив и решить Var k, m: integer; Dat: array[1..11] of integer; Begin Dat[1] :=...

0 голосов
118 просмотров

Задать массив и решить
Var k, m: integer;
Dat: array[1..11] of integer;
Begin
Dat[1] := 20; Dat[2] := 25;
Dat[3] := 19; Dat[4] := 25;
Dat[5] := 26; Dat[6] := 22;
Dat[7] := 24; Dat[8] := 28;
Dat[9] := 26; Dat[10] := 21;
Dat[11] := 27;
m := 0;
for k := 1 to 11 do
if Dat[k] > 22 then
begin
m := m + 1
end;
writeln(m)
End.


Информатика (617 баллов) | 118 просмотров
Дано ответов: 2
0 голосов
Правильный ответ

// PascalABC.NET 3.0, сборка 1088
const
  Dat:array[1..11] of integer=(20,25,19,25,26,22,24,28,26,21,27);
var
  k,m:integer;
begin
  m:=0;
  for k:=1 to 11 do
  if Dat[k]>22 then Inc(m);
  Writeln(m)
end.

Тестовое решение:
7

А вот так можно написать программу, если знать немного больше, чем дают в школе:

// PascalABC.NET 3.0, сборка 1088
begin
  var Dat:array[1..11] of integer:=(20,25,19,25,26,22,24,28,26,21,27);
  Writeln(Dat.Where(x->x>22).Count)
end.

Но ведь в школе не ищут простых решений! (((

(142k баллов)
0 голосов

Var k, m: integer;Dat: array[1..11] of integer;
Beginfor k := 1 to 11 do begin
Dat[k]:= random(20)+10;
write(Dat[k]:4);
if Dat[k] > 22 then m := m + 1;
end;
writeln;writeln(m);
End.

(6.5k баллов)