Напишите программу, которая находит среднее арифметическое для всех элементов массива [11; 119], которые делятся на 3 и заканчиваются на 1, напечатайте исходный массив.массив заполнить случайным образом. на языке питон
// PascalABC.NET 3.2, сборка 1353 от 27.11.2016 // Внимание! Если программа не работает, обновите версию!
begin // заполним информацию случайным образом; // если хорошистов в результате не окажется, // просто перезапускаем задачу randomize; var a:=MatrRandom(13,10,4,5); // везде только 4 и 5 for var i:=1 to 20 do // раскидаем 20 троек a[Random(13),Random(10)]:=3; a.Println(2); Writeln; // собственно, решение var k:=0; foreach var r in a.Rows do if r.All(x->x<>3) and not r.All(x->x=5) then k+=1; Writeln(k,' хорошистов') end.
Procedure sovp; var i, j, r, c: byte; ar: array[1..10, 1..10]of byte; s: array[1..4] of string; b: boolean; label l1; begin r := random(2, 3); l1: c := 1; b := false; for i := 1 to 10 do for j := 1 to 10 do begin ar[i, j] := random(0, 1); if(i < 5) then s[i] := ''; end; for i := 1 to 9 do begin for j := 1 to 10 do begin if(ar[i, j] <> ar[i + 1, j]) then b := true; end; if(b = false) then begin s[c] := i + ' строка совпалает с ' + (i + 1) + ' строкой'; c := c + 1; end; b := false; end; if(c <> r) then goto l1 else begin for var k := 1 to c do if(k<>c)then writeln(s[k]); for i := 1 to 10 do begin for j := 1 to 10 do write(ar[i, j], ' '); writeln; end; end; end; begin sovp; end.
// Внимание! Если программа не работает, обновите версию!
begin
// заполним информацию случайным образом;
// если хорошистов в результате не окажется,
// просто перезапускаем задачу
randomize;
var a:=MatrRandom(13,10,4,5); // везде только 4 и 5
for var i:=1 to 20 do // раскидаем 20 троек
a[Random(13),Random(10)]:=3;
a.Println(2); Writeln;
// собственно, решение
var k:=0;
foreach var r in a.Rows do
if r.All(x->x<>3) and not r.All(x->x=5) then k+=1;
Writeln(k,' хорошистов')
end.
Пример
5 5 4 4 4 5 3 3 4 4
5 4 4 4 3 4 5 5 4 5
5 5 5 3 5 4 4 5 5 4
3 5 4 3 4 4 5 5 5 3
5 3 4 4 5 4 4 5 5 4
3 5 5 5 5 4 4 4 4 3
4 4 5 3 5 4 4 5 4 5
4 5 4 4 4 4 4 4 5 4
3 5 3 4 4 4 4 4 5 3
5 5 4 5 4 4 4 5 4 5
4 5 4 5 4 5 3 4 5 5
4 5 4 4 4 4 5 4 4 5
4 3 5 4 4 4 5 5 3 5
3 хорошистов
var
i, j, r, c: byte;
ar: array[1..10, 1..10]of byte;
s: array[1..4] of string;
b: boolean;
label l1;
begin
r := random(2, 3);
l1:
c := 1;
b := false;
for i := 1 to 10 do
for j := 1 to 10 do
begin
ar[i, j] := random(0, 1);
if(i < 5) then s[i] := '';
end;
for i := 1 to 9 do
begin
for j := 1 to 10 do
begin
if(ar[i, j] <> ar[i + 1, j]) then b := true;
end;
if(b = false) then
begin
s[c] := i + ' строка совпалает с ' + (i + 1) + ' строкой';
c := c + 1;
end;
b := false;
end;
if(c <> r) then goto l1
else
begin
for var k := 1 to c do if(k<>c)then writeln(s[k]);
for i := 1 to 10 do
begin
for j := 1 to 10 do write(ar[i, j], ' ');
writeln;
end;
end;
end;
begin
sovp;
end.