Составьте алгоритм вычисления суммы всех натуральных чисел,не привышающих заданного натурального числа N . Проверьте алгоритм трассировкой. Напишите программу в Паскале.
Инициализировать переменную sum = 0.Инициализировать переменную i = 1.Пока i <= N: Увеличить sum на i.Увеличить i на 1.Вывести sum.
Пример трассировки для N = 5: sum = 0 i = 1 i <= 5 -> Да sum = sum + i = 0 + 1 = 1 i = i + 1 = 2 i <= 5 -> Да sum = sum + i = 1 + 2 = 3 i = i + 1 = 3 i <= 5 -> Да sum = sum + i = 3 + 3 = 6 i = i + 1 = 4 i <= 5 -> Да sum = sum + i = 6 + 4 = 10 i = i + 1 = 5 i <= 5 -> Да sum = sum + i = 10 + 5 = 15 i = i + 1 = 6 i <= 5 -> Нет
Сумма всех натуральных чисел до 5 равна 15.
Программа на Pascal:
program SumOfNaturalNumbers; var N, sum, i: integer; begin sum := 0; write('Enter a natural number N: '); readln(N); i := 1; while i <= N do begin sum := sum + i; i := i + 1; end; writeln('Sum of all natural numbers up to ', N, ' is ', sum); end.
Алгоритм:
Инициализировать переменную sum = 0.Инициализировать переменную i = 1.Пока i <= N:Увеличить sum на i.Увеличить i на 1.Вывести sum.
Пример трассировки для N = 5:
sum = 0
i = 1
i <= 5 -> Да
sum = sum + i = 0 + 1 = 1
i = i + 1 = 2
i <= 5 -> Да
sum = sum + i = 1 + 2 = 3
i = i + 1 = 3
i <= 5 -> Да
sum = sum + i = 3 + 3 = 6
i = i + 1 = 4
i <= 5 -> Да
sum = sum + i = 6 + 4 = 10
i = i + 1 = 5
i <= 5 -> Да
sum = sum + i = 10 + 5 = 15
i = i + 1 = 6
i <= 5 -> Нет
Сумма всех натуральных чисел до 5 равна 15.
Программа на Pascal:
program SumOfNaturalNumbers;var
N, sum, i: integer;
begin
sum := 0;
write('Enter a natural number N: ');
readln(N);
i := 1;
while i <= N do
begin
sum := sum + i;
i := i + 1;
end;
writeln('Sum of all natural numbers up to ', N, ' is ', sum);
end.