В
Все
М
Математика
О
ОБЖ
У
Українська мова
Д
Другие предметы
Х
Химия
М
Музыка
Н
Немецкий язык
Б
Беларуская мова
Э
Экономика
Ф
Физика
Б
Биология
О
Окружающий мир
Р
Русский язык
У
Українська література
Ф
Французский язык
П
Психология
А
Алгебра
О
Обществознание
М
МХК
В
Видео-ответы
Г
География
П
Право
Г
Геометрия
А
Английский язык
И
Информатика
Қ
Қазақ тiлi
Л
Литература
И
История
ксюша1693
ксюша1693
12.06.2021 23:53 •  Информатика

Выбрать программу утилиту которую необходимо использовать в следующих ситуациях


Выбрать программу утилиту которую необходимо использовать в следующих ситуациях

Показать ответ
Ответ:
polilaibe
polilaibe
01.03.2020 17:11

Объяснение:

В общем алгоритм такой.

Пусть мы имеем массив a[1..n, 1..n] из n*n элементов,

i - номер строки, j - номер столбца.

Спускаемся вниз по строкам до строки, номер которой отличается от того,

n - четное или нечетное.

В общем случае это номер i_ser, равный n делить на 2, и округленный до целого вниз.

Например, если n = 4, i_ser = 2, если n = 7, то i_ser = 3.

Для i от 1 до i_ser делать

 начало

   Для j от 1 до i делать

     // здесь мы получаем нужные нам координаты i, j

 конец

Если i_ser нечетно, то отдельно проходимся по строке с номером i_ser+1

Если i_ser нечетно то

 начало

   i_ser = i_ser + 1

Для j от 1 до i_ser делать

     // здесь мы получаем нужные нам координаты i_ser, j

 конец

 

i_ser = i_ser + 1      

Для i от i_ser до n делать

 начало

   Для j от 1 до n - i + 1 делать

     // здесь мы получаем нужные нам координаты i, j

 конец

0,0(0 оценок)
Ответ:
flora21345
flora21345
06.08.2022 15:45
Var m : array[0..6] of Integer;
  i,k,N : Integer;
Begin
  For i:=0 to 6 do m[i]:=0;
  Readln(N);
  k:=6;
  While N>0 do
  Begin
    If N>=Power(2,k) then
    Begin
      N:=N-Trunc(Power(2,k));
      Inc(m[k]);
    end else Dec(k);
  end;
  For i:=0 to 6 do Writeln(Power(2,i),'  ',m[i],' шт.');
end.

Еще вариант:
Const
  NN = 7;
  money : array[1..7] of Integer = (1,2,4,8,16,32,64);
Var m : array[1..NN] of Integer;
  i,k,N : Integer;
Begin
  For i:=1 to NN do m[i]:=0;
  Readln(N);
  k:=NN;
  While N>0 do
  Begin
    If N>=money[k] then
    Begin
      N:=N-money[k];
      Inc(m[k]);
    end else Dec(k);
  end;
  For i:=1 to NN do Writeln(money[i],'  ',m[i],' шт.');
end.
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота