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

у меня сор. Если у кого есть все правельные ответы . Сори что так мало потом дам тому кто


у меня сор. Если у кого есть все правельные ответы . Сори что так мало потом дам тому кто

Показать ответ
Ответ:
артбар
артбар
26.06.2022 07:17
Const
  n=20;
var
  p:array[1..n] of integer;
  i,k,s:integer;
begin
  Randomize;
  Writeln('Последовательность чисел');
  for i:=1 to n do
  begin
    p[i]:=Random(51)-25;
    Write(p[i],' ')
  end;
  Writeln;
  k:=0; s:=0; i:=1;
  repeat
    if p[i]>0 then begin s:=s+p[i]; Inc(k) end;
    Inc(i);
  until (k=4) or (i>n);
  Writeln('Сумма первых четырех положительных чисел равна ',s)
end.
   
Тестовое решение:
Последовательность чисел
-12 6 -21 5 -10 11 19 19 19 17 21 -4 -14 12 2 0 -20 10 17 -14
Сумма первых четырех положительных чисел равна 41
0,0(0 оценок)
Ответ:
MissVika2007
MissVika2007
28.12.2020 03:26
Скорее всего, условие задачи сформулировано некорректно, ибо составить программу, содержащую не более пяти команд не получится, и сейчас объясню почему.

Так как нужно из числа 4 получить число 80, то первая команда не может являться "2", в противном случае мы уйдем в отрицательные числа. Тогда первая команда - "1", и теперь нам нужно из числа 20 получить число 80. Рассмотрим несколько случаев, когда последней командой мы получаем число 80.

1 случай.

Если последняя команда - "1", то это возможно, когда предпоследний результат будет равен 16, однако так как наша траектория точно содержит число 20, которое кратно 5, то, применяя далее наши команды, мы всегда будем получать число, кратное 5, а нам нужно получить 16. Противоречие.

2 случай.

Теперь рассмотрим ситуацию, когда последняя команда - "2". То есть предпоследний результат равен 85. Если получать число 85 командой "1", то траектория должна содержать число 17. Из соображений  кратности (см. 1 случай) это невозможно. Значит вторая с конца команда должна являться "2". Аналогично рассуждая, приходим к выводу о том, что и третья, и четвертая команды с конца тоже должны быть "2". То есть наша траектория имеет вид 1*2222, причем на месте "*" должна быть такая траектория команд, которая позволит получить из числа 20 число 100. Ясно, что наименьшая траектория будет 112222, но она содержит 6 команд. Противоречие.

Получается, что из числа 4 получить число 80 программой, которая бы содержала не более 5 команд, действительно не получится. Но если говорить о наименьшей траектории, то 112222 - будет являться ответом на эту задачу.
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота