MDubovikov73
?>

Дан целочисленный массив из 40 элементов. элементы массива могут принимать целые значения от 0 до 10000 включительно. опишите алгоритм, позволяющий найти и вывести максимальное значение среди двузначных элементов массива, не делящихся на 3. если в исходном массиве нет элемента, значение которого является двузначным числом и при этом не кратно трём, то выведите сообщение «не найдено». запрещается использовать переменные, не описанные ниже, но разрешается не использовать некоторые из описанных переменных. const n = 40; var a: array [1..n] of integer; i, j, max: integer; begin for i : = 1 to n do readln(a[i]); end

Информатика

Ответы

Negutsa_Kseniya524
Const
N = 40;
var
a: array [1..N] of integer;
i, j, max: integer;
begin
for i := 1 to N do
 begin a[i]:=random(200); write(a[i],' ');end;
//readln(a[i]);
writeln;
max:=0;
for i := 1 to N do
 if (a[i]>9)and(a[i]<100)and(a[i] mod 3<>0)and(a[i]>max)
  then max:=a[i];
if max>0 then writeln('max = ',max)
else writeln('Не найдено');
end.

Пример:
32 42 155 33 159 73 194 51 173 175 176 154 70 67 194 159 63 33 81 183 54 166 75 196 150 165 61 162 54 196 182 195 124 133 76 191 197 69 125 118 
max = 76
Кирилл_Гульницкий
Uses graphABC;
const
  c: array [1..7, 1..3] of byte = ((50, 50, 133), (0, 0, 255), (0, 160, 227), (0, 255, 0), (255, 255, 0), (239, 127, 26), (255, 0, 0));

var
  i: byte;

procedure ColArc(x, y: integer; r: integer; nc: byte);
begin
  SetPenColor(rgb(c[nc, 1], c[nc, 2], c[nc, 3]));
  Arc(x, y, r + 10, 0, 180);
  Arc(x, y, r - 10, 0, 180);
  line(x - r - 11, y - 2, x - r + 11, y - 2);
  line(x + r - 11, y - 2, x + r + 11, y - 2);
  floodfill(x, y - r, rgb(c[nc, 1], c[nc, 2], c[nc, 3]));
end;

begin
  setwindowsize(500, 300);
  for i := 1 to 7 do
    ColArc(250, 300, 100 + (i * 20), i);
end.
dimanov
// PascalABC.NET 3.2, сборка 1427 от 24.04.2017
// Внимание! Если программа не работает, обновите версию!

begin
  var s1:=SeqRandom(ReadInteger('n1='),-50,50);
  var s2:=SeqRandom(ReadInteger('n2='),-50,50);
  var p:=ReadInteger('0-по неубыванию, иное- по невозрастанию:');
  var q1:=new Queue<integer>;
  foreach var m in s1 do q1.Enqueue(m);
  Write('Очередь 1: ',q1); Writeln;
  var q2:=new Queue<integer>;
  foreach var m in s2 do q2.Enqueue(m);
  Write('Очередь 2: ',q2); Writeln;
  // очереди сформированы
  var q:=new Queue<integer>;
  var a:=(q1.ToArray+q2.ToArray);
  var s:sequence of integer;
  if p=0 then s:=a.OrderBy(i->i)
  else s:=a.OrderByDescending(i->i).ToArray;
  foreach var m in s do q.Enqueue(m);
  Write('Очередь-результат: ',q); Writeln;
end.

Пример
n1= 10
n2= 7
0-по неубыванию, иное- по невозрастанию: 1
Очередь 1: [-26,6,26,-48,-21,-29,27,-39,5,-40]
Очередь 2: [50,36,37,46,18,41,-39]
Очередь-результат: [50,46,41,37,36,27,26,18,6,5,-21,-26,-29,-39,-39,-40,-48]

Ответить на вопрос

Поделитесь своими знаниями, ответьте на вопрос:

Дан целочисленный массив из 40 элементов. элементы массива могут принимать целые значения от 0 до 10000 включительно. опишите алгоритм, позволяющий найти и вывести максимальное значение среди двузначных элементов массива, не делящихся на 3. если в исходном массиве нет элемента, значение которого является двузначным числом и при этом не кратно трём, то выведите сообщение «не найдено». запрещается использовать переменные, не описанные ниже, но разрешается не использовать некоторые из описанных переменных. const n = 40; var a: array [1..n] of integer; i, j, max: integer; begin for i : = 1 to n do readln(a[i]); end
Ваше имя (никнейм)*
Email*
Комментарий*

Популярные вопросы в разделе

Ольга
nane2924329
sve-lysenko
Ye.Vadim
Алиференко_Елена342
Vladimirovich1898
Оксана
saytru5850
родичева1812
silantyevevgeny
jnrhjq3597
tyrenumberone
serov555zaq5
rstas
qwe54344