artbogema2016
?>

Напишите в паскале программу дан двумерный массив из n элементов к-это количество элементов двумерного массива которые без остатка делятся на 5 программа заменяет элементы равные к на 0 а если нет таких элементов то программа заменяет все элементы на 1

Информатика

Ответы

olgakozelskaa492

const n=5;

var

 a:array [1..n,1..n] of integer;

 i,j,k:integer;

begin

 k:=0;

 for i:=1 to n do

   begin

     for j:=1 to n do

       begin

         a[i,j]:=random(151)-50;

         write(a[i,j]:4);

         if (a[i,j] mod 5 =0) then  

             inc(k);

       end;

     writeln;

   end;

   writeln;

     if k<>0 then

       begin

         for i:=1 to n do

           begin

             for j:=1 to n do

               begin

                 if a[i,j]=k then a[i,j]:=0;

                 write(a[i,j]:4);

               end;

             writeln;

           end;

         writeln('K= ',k);

       end

         else  

           begin

             for i:=1 to n do

               begin

                 for j:=1 to n do

                   begin

                     a[i,j]:=0;

                     write(a[i,j]:4);

                   end;

                 writeln;

               end;

              writeln('K= 0');  

           end;

end.

skorykin123371

Объясняю: создаёте переменную, лучше целочисленную (int foo), после чего можно либо перевести число в строку и найти сумму цифр путём сложения двух символов (sum = bar[0] - '0' + bar[1] - '0'), либо с остатка от деления (конечно, это не очень красиво, но если известно, что число двузначное, то можно так: sum = (foo / 10) + (foo % 10)). Дальше банальная обработка условия: <если сумма чётная (if (sum % 2 == 0)), то увеличить число на 2 (foo += 2), иначе (else) уменьшить число на 2 (foo -= 2)>. После этого можете вывести результат на монитор (printf("%d\n", &sum)). :)

Евгеньевна_Хусинов
Var
a : array[1..10] of word;
max : word;
begin
   
  randomize;
 
  for I : byte := 1 to 10 do
  a[i] := random(1, 60000);

  max := 0;
  for I : byte := 1 to 10 do
  if a[i] > max then max := a[i];

  writeln(max*3);

end.

Добавлю и объяснение. Алгоритм заполняет целочисленный массив из десяти элементов случайными числами. Возможны диапазон числе: от 1 до 60000. Затем в следующем цикле выискивается максимальное число, которое выдал генератор случайных чисел. В строке writeln выводится значение этого числа умноженное на три.

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

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

Напишите в паскале программу дан двумерный массив из n элементов к-это количество элементов двумерного массива которые без остатка делятся на 5 программа заменяет элементы равные к на 0 а если нет таких элементов то программа заменяет все элементы на 1
Ваше имя (никнейм)*
Email*
Комментарий*

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

snezhanaklimenkova
Вайнер
KIRILLSHURYGIN98
Filintver
latoyan817
Merkuloff78
Galina3241
apro3444595
jim2k
aananasAnastiya1270
diana-kampoteks
ilkindadashov935232
Lapushkin1988
tsigankova2018
lbondareva