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

Дан рекурсивный алгоритм: procedure f(n: integer); begin writeln(n); if n > 1 then begin writeln(n); f(n-2); f(n-5) end end; найдите сумму чисел, которые будут выведены при вызове f(9).

Показать ответ
Ответ:
valya83
valya83
05.07.2020 14:27
Решение задачи в прикрепленном текстовом файле.
Описание алгоритма:
Полученные строки хранятся в массиве s.
Элементы массива сортируются так называемой "пузырьковой" сортировкой. Для сравнения двух строк используется функция less, возвращающая истину если первая из двух переданных в функцию строк лексикографически меньше.
А дальше дело за малым: просто выводим элементы отсортированного массива без первых трех символов (номера строк).
Единственная проблема, которая может возникнуть: на некоторых компьютерах программа не работает с русским языком. Но это уже технические проблемы. Само же решение верно.
Удачи!
0,0(0 оценок)
Ответ:
karina36517
karina36517
15.07.2022 17:29
9) Запишите значение переменной s, полученное в результате работы следующей программы на языке программирования Паскаль.
Var s, i:integer;
Begin
S := 3;
For i := 2 to 5 do
S := S + 2*i;
Writeln(S);
end.

10) В таблице Sea хранятся данные о количестве россиян, отдыхавших на Черном море (Sea[1] - число россиян в 2001 году, Sea[2] - в 2002 и т.д.). Определите, какое число будет напечатано в результате работы следующей программы, написанной на языке программирования Паскаль.
Var k, s: integer;
Sea: array [1..12] of integer;
begin
Sea[] := 170; Sea[2] := 170;
Sea[3] := 190; Sea[4] := 210;
Sea[5] := 230; Sea[6] := 220;
Sea[7] := 240; Sea[8] := 160;
Sea[9] := 190; Sea[10] := 210; 
Sea[11] := 170; Sea[12] := 170;
s := 100;
For k := 1 to 12 do
if Sea[k] > 220 then
begin
s := s + Sea[k];
end;
Writeln(s);
end.

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