Скачиваний:
59
Добавлен:
02.05.2014
Размер:
69.63 Кб
Скачать

Лабораторная работа 2

Простые циклы с заданным числом повторений

Цель работы: Формирование первичных умений в разработке простых циклических программ с заданным числом повторений.

Что нужно знать для выполнения работы

1. Структура цикла, назначение и порядок следования его отдельных частей.

2. Структуры: «цикл-пока» и «цикл-повторить».

3. Операторы цикла «while … do», «repeat … until», «for … do».

Примеры выполнения задания лабораторной работы

Пример 1

Составьте программу, находящую сумму значений функции sin(x) для х, изменяющегося от 0 до 10 с шагом /3.

Схема алгоритма

S:=0

x:=0

Нет

Да

S:=S+sin(x)

x:=x+/3

Рис. 2.1 Схема алгоритма программы примера 1 (вариант 1 «цикл-пока»)

S:=0

x:=0

S:=S+sin(x)

x:=x+/3

Да

Нет

Рис. 2.2 Схема алгоритма программы примера 1 (вариант 2 «цикл-повторить»)

Приведенные схемы удобно изображать с использованием символов «начало цикла» и «конец цикла».

S:=0

x:=0

S:=S+sin(x)

x:=x+/3

Рис. 2.3 Схема алгоритма программы примера 1 (вариант 3 «цикл-пока»)

S:=0

x:=0

S:=S+sin(x)

x:=x+/3

Рис. 2.4 Схема алгоритма программы примера 1 (вариант 4 «цикл-повторить»)

Текст программы

program lr2_1_1;

{Нахождение суммы значений функции sin(x) для

х, изменяющегося от 0 до 5*пи}

uses

crt;

const

p:real=pi;

var

x,s:real;

begin

clrscr;

s:=0;

x:=0;

while x<=5*p do

begin

s:=s+sin(x);

x:=x+p/3;

end;

writeln(' x=',x:4:2,' s=',s:6:2);

readkey;

end.

program lr2_1_2;

{Нахождение суммы значений функции sin(x) для

х, изменяющегося от 0 до 5*пи.

Использование цикла-повторить}

uses

crt;

const

p:real=pi;

var

x,s:real;

begin

clrscr;

s:=0;

x:=0;

repeat

s:=s+sin(x);

x:=x+p/3;

until x>5*p;

writeln(' x=',x:4:2,' s=',s:6:2);

readkey;

end.

Пример 2

Найти n-й член ряда Фибоначчи. Члены ряда Фибоначчи можно вычислить по формуле a1 = a2 = 1, ai = ai-1 + ai-2, для i > 2.

Приведем вариант решения данной задачи с использованием трех переменных для вычисления членов ряда.

a:=1

b:=1

c:=a+b

a:=b

b:=c

Рис. 2.5 Схема алгоритма программы примера 2

Текст программы

program lr2_2_1;

{Найти n-ый член ряда Фибоначчи}

uses

crt;

var

i,n,a,b,c :word;

begin

clrscr;

write('n= ');

readln(n);

a:=1;b:=1;

for i:=3 to n do

begin

c:=a+b;

a:=b;

b:=c;

end;

writeln('F(n)= ',c:8);

readkey;

end.

Задания

Выделить повторяющиеся действия (цикл). Выбрать управляющую переменную цикла. Составить список переменных программы. Составить схему и программу для решения задачи. В программе предусмотреть вывод заголовка. Выполнить программу вручную, заполняя таблицу выполнения. Проверить работу программы на ЭВМ.

1. Вычислить S= 2n , где nN.

m

2. Вычислить S= (-1)nn2, где mN.

n=1

3. Напечатать таблицу стоимости порций сыра весом 50, 100, 150, ..., 1000 г (цена 1кг 280р.)

4. Вычислить приближенно площадь фигуры, ограниченной функцией у=x2 и прямой у=25, разбивая интервал изменения x на 100 частей и суммируя площади прямоугольников с основанием, равным 0,10 интервала изменения x, и высотой, определяемой значением функции в середине основания (высота прямоугольника в точке x равна 25-x2).

5. Начав тренировки, спортсмен в первый день пробежал 10 км. Каждый следующий день он увеличивал дневную норму на 10% от нормы предыдущего дня. Какой суммарный путь пробежит спортсмен за N дней.

6. Определить суммарный объем (л) 12 вложенных друг в друга шаров со стенками 5 мм. Внутренний диаметр внутреннего шара равен 10 см. Считать, что шары вкладываются друг в друга без зазоров.

7. Вычислить сумму 1 + 1/2 + 1/3 + … + 1/n.

8. Пусть n-натуральное число и пусть n!! означает 1*3*...*n для нечетного n и 2*4*...*n для четного n. Для заданного натурального n вычислить n!!

9. Вычислить сумму

n

 1/ i!

i=1

10. Найти n-ый член ряда Фибоначчи, элементы которого вычисляются по формулам: a1=a2=1; ai=ai-1 + ai-2, (i>2).

Примечание. Для нахождения членов ряда использовать только две переменные а и b.

11. Найти сумму n-членов ряда Фибоначчи (см. 10).

12.Для любых вещественных положительных a и h находит в последовательности 1, 1 + h, 1 + 2h,… первое значение, большее а.

13. Проверить формулу 1 + 2 + 3 +…+ n = n(n + 1)/2.

14. Проверить формулу 12 + 22 + 32 +…+ n2 = n(n + 1)(2n + 1)/6.

15. Вычислить сумму

n

 1/ 2i

i=1

16. Вычислить число сочетаний из n по m Сnm = n! /(m!(n-m)!).

17. Вычислить число размещений из n по m Аnm = n(n-1)…(n-m+1).

18. Найти знакопеременную сумму цифр данного натурального числа n.

19. Вычислить сумму

n

 1/ i3

i=1

20. Вычислить сумму

n

 (-1)n 2i

i=1

21. Вычислить сумму

n

 (-1)n / (2i)

i=1

22. Вычислить произведение Р = 1 . 3 . 5 . 7 .. (2n+1) для заданного n.

23. Вычислить произведение Р = 2 . 4 . 6 . 8 .. 2n для заданного n.

24. Вычислить сумму S = 1 . 3 + 3 . 5 + 5 . 7 + … + (2n-1) (2n+1) для заданного n.

25. Вычислить произведение S=(1 + 3) . (5 + 7) .. ((2n-1) + (2n+1)) для заданного n.

26. Вывести на экран элементы последовательности an =an-1 + nd для n, изменяющегося от 1 до k, a0=0; k и d заданные натуральные числа.

27. Вычислить сумму

А =1+(1+2)+(2+3)+(3+4)+…+((n-1)+n)

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

29. Составить таблицу умножения для заданного числа N, которая содержит результаты умножения 1*N, 2*N, ..., N*N.

30. Напечатать таблицу значений функции y=x3 при изменении x в интервале от A до B с шагом H.

Задания второго уровня

1. Вычислить значение интеграла по формуле трапеций с заданным числом разбиений.

2. Вычислить значение интеграла по формуле Симпсона с заданным числом разбиений.

3. Решить задачу Коши для обыкновенного дифференциального уравнения на отрезке [0; 1] при условии у(0) = 0 методом Эйлера, разбивая отрезок интегрирования на n частей.

4. Решить задачу Коши для обыкновенного дифференциального уравнения на отрезке [0; 1] при условии у(0) = 0 усовершенствованным методом Эйлера, разбивая отрезок интегрирования на n частей.

5. Найти n-ый член ряда Фибоначчи, элементы которого вычисляются по формулам: a1=a2=1; ai=ai-1 + ai-2, (i>2).

Примечание. Для нахождения членов ряда не использовать операторов цикла, т.е. программа должна быть линейной.

9

Соседние файлы в папке Лабораторный практикум по программированию на Паскале