Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Пример 2. Вычислить сумму первых N натуральных чисел. Блок-схема алгоритма нахождения суммы Процедура (цикл while) - Procedure




Вычислить сумму первых N натуральных чисел.

Блок-схема алгоритма нахождения суммы Процедура (цикл while)
-

Procedure summa(N: integer; var s:longint); var i:integer; begin s := 0; i := 1;     While i <= N do   begin S := S + i; i:=i+1; end;     end;  

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


Program Pr2;

var N: integer; S: LongInt;

Procedure summa(N: integer; var s:longint);

var i:integer;

begin

s := 0; i := 1;

While i <= N do

begin

S := S + i;

i:=i+1;

end;

end;

Begin

Write('Введите значение N= '); Readln(n);

summa (n, s);

Writeln('Сумма чисел = ',S);

End.


 

Пошаговое исполнение процедуры вычисления суммы

действия N s i i<=N
передача в процедуру аргумента N      
s := 0;      
i := 1;      
i <= N       1<=2 истино
S := S + i;      
i:=i+1;      
i <= N       2<=2 истино
S := S + i;      
i:=i+1;      
i <= N       3<=2 ложно
передача в основную программу значения S      

 

Алгоритм нахождения суммы Процедура (цикл с параметром)
-

Procedure summa(N: integer; var s:longint); var i:integer; begin s := 0;     For i = 1 to N do   begin S := S + i; end;     end;  

 

Блок-схема алгоритма нахождения суммы Процедура (цикл с предусловием)
+
-

Procedure summa(N: integer; var s:longint); var i:integer; begin s := 0; i := 1;   Repeat S := S + i; i:=i+1     Until i>N     end;  

Задание 1.2 (1 балл)

По заданной формуле члена последовательности с номером k (k=1,2,3..,n) составить программу вычисления суммы первых n членов последовательности.

Указания:

1) вычисление k-го члена последовательности оформить как функцию;

2) решить задачи двумя способами: с использованием циклов с предусловием и с использованием цикла с постусловием. Алгоритмы решения записать с помощью блок-схемы. Реализовать алгоритмы решения с помощью всех возможных видов циклов;

3) подготовить тесты для проверки правильности программы (например, для n=1, 2, 3 вычислить S алгебраически);

4) выполнить программы по шагам, для указанной программы протокол исполнения оформить в отчете по лабораторной работе.

Задание 1.3 (2 балла)

Задана формула члена последовательности с номером k (см. задание 1.2). Написать программу, суммирующую члены последовательности до тех пор, пока сумма остается меньше заданного значения n.

Задание 1.4 (2 балла)

Задана формула члена последовательности с номером k (см. задание 1.2). Написать программу вычисления суммы всех членов последовательности, не меньших заданного числа ε.

Указания к заданиям 1.3, 1.4:

1) записать алгоритм с помощью блок-схемы;

2) самостоятельно определить какой из видов циклического оператора целесообразно использовать;

3) подготовить тесты для проверки правильности программы;

4) выполнить программы по шагам, для указанной программы протокол исполнения оформить в отчете по лабораторной работе.







Дата добавления: 2015-08-12; просмотров: 3662. Нарушение авторских прав


Рекомендуемые страницы:


Studopedia.info - Студопедия - 2014-2020 год . (0.002 сек.) русская версия | украинская версия