Заметим, что числа образуют арифметическую прогрессию, а её сумма известна:
Поэтому два варианта программы: один вычисляет сумму накоплением, второй сразу определяет результат по формуле. Хороший пример того, что программист должен знать математику.
var n, i, s: integer;
begin Write('Введите натуральное число: '); Readln(n); if (n mod 2) = 0 then begin s := 0; for i := 1 to n do s := s + i; Writeln('Сумма чисел от 1 до ', n, ' равна ', s) end else Writeln('Введено нечетное число') end.
Тестовое решение:
Введите натуральное число: 8 Сумма чисел от 1 до 8 равна 36
var n, s: integer;
begin Write('Введите натуральное число: '); Readln(n); if (n mod 2) = 0 then Writeln('Сумма чисел от 1 до ', n, ' равна ', ((1 + n) * n) div 2) else Writeln('Введено нечетное число') end.
Тестовое решение:
Введите натуральное число: 8 Сумма чисел от 1 до 8 равна 36
Во втором прямоугольнике нужно написать "подойди к платью" и обвести эту рамку зеленым карандашом. Нужно нарисовать стрелки вниз. От треугольника в котором написано "остались платья?" нужно провести стрелку со словом "ДА" до второй черной стрелки(после фразы "выйди из шкатулки).Рамку "остались платья?" тоже надо обвести зелёным цветом. Перед словом "конец" есть пустая рамка,там напиши "иди в шкатулку",а у стрелки которая ведёт к этой рамке нужно написать "НЕТ" И последнее.От треугольной рамки с вопросом "все банты пришиты?" идёт стрелка вниз,рядом с ней напиши слово "ДА".И нужно самому провести стрелку до стрелки вниз от фразы "подойди к платью" и у новой стрелки написать слово "НЕТ" Мы делали это в классе,в году поэтому должно быть правильно:)
113(5)=