Создать процедуру для вывода первых N членов арифметической прогрессии, заданной значением первого члена а и разностью d. Вывести первые 7 членов прогрессии 2, 5, … (a=2, d=3) и первые 10 членов прогрессии 20, 19, ….(a=20, d= -1)
Решение:
Program pr5;
Procedure progres(a,d,n:integer);
Var
i: integer; {i – номер очередного члена прогрессии }
Begin
for i:=1 to n do {перебираем i от 1 до n}
begin
write(a,' '); {выводим очередной член прогрессии}
a:=a+d; {вычисляем следующий член прогрессии}
end;
End;
begin {основная программа}
{вызов процедуры для вывода 7 членов арифметической прогрессии 2, 5,…}
progres(2,3,7);
writeln;
{вызов процедуры для вывода 10 членов прогрессии 20,19,…}
progres(20,-1,10);
Readln;
end.
Результат:
2 5 8 11 14 17 20
20 19 18 17 16 15 14 13 12 11
Пример 6
Выяснить, какие натуральные числа от 2 до 10 являются простыми, а какие - составными (создать процедуру, определяющую простым или составным является данное число).
Число называется простым, если оно не имеет делителей кроме 1 и самого себя. Если у него есть другие делители, то число – составное.
Решение:
Program pr6;
Var
i: integer;
Procedure prostoe(x:integer);
Var
k,n: integer; {n - возможные делители числа, k – количество делителей}
Begin
k:=0;
for n:=2 to x div 2 do {перебираем числа от 2 до x div 2 для поиска делителей}
if x mod n = 0 {если n –делитель числа x}
then k:=k+1; {увеличиваем количество делителей на 1}
if k=0 {если у числа нет делителей}
then writeln (x,' - prostoe') {то число простое}
else writeln (x,' - sostavnoe'); {иначе число составное}
End;
begin {основная программа}
for i:=2 to 10 do {перебираем числа от 2 до 10}
prostoe(i); {вызываем процедуру для проверки очередного числа}
Readln;
end.
Результат:
2 - prostoe
3 - prostoe
4 - sostavnoe
5 - prostoe
6 - sostavnoe
7 - prostoe
8 - sostavnoe
9 - sostavnoe
10 - sostavnoe
ЗАДАНИЯ
1. Создать процедуру для вычисления периметра и площади квадрата по длине его стороны.
2. Создать процедуру для вычисления объема и площади поверхности куба по длине его ребра.
3. Создать процедуру для вычисления длины окружности и площади круга по заданному значению радиуса. (L= 2pR, S=pR2)
4. Создать процедуру для вычисления периметра и площади прямоугольника по длинам его сторон.
5. Создать процедуру для вычисления периметра и площади треугольника по длинам его сторон (
, a, b, c – стороны треугольника, p – полупериметр)
6. Создать процедуру для нахождения корней квадратного уравнения по его коэффициентам a,b,c.
7. Вводятся A, B, C, D. Поменять местами A и C, B и D, создав процедуру обмена значениями 2-х переменных.
8. Создать процедуру для вывода первых N членов арифметической прогрессии, заданной первым членом а и разностью d. С помощью этой процедуры вывести 8 первых членов прогрессии 1, 4, … и 10 первых членов прогрессии 24, 22, ….
9. Создать процедуру для вывода первых N членов арифметической прогрессии, заданной первым членом а и разностью d. С помощью этой процедуры вывести 5 первых членов прогрессии 3, 7, … и 7 первых членов прогрессии 14, 11, ….
10. Создать процедуру для вывода первых N членов арифметической прогрессии, заданной первым членом а и разностью d. С помощью этой процедуры вывести 7 первых членов прогрессии 12, 10, … и 9 первых членов прогрессии 2, 5, ….
11. Создать процедуру для вывода и нахождения суммы первых N членов арифметической прогрессии, заданной формулой an=2n+1.
12. Создать процедуру для вывода и нахождения суммы первых N членов арифметической прогрессии, заданной формулой an=3n-2.
13. Создать процедуру для вывода и нахождения суммы первых N членов арифметической прогрессии, заданной формулой an=5n-3.
14. Определить, какие из целых чисел от -3 до 8 являются решениями неравенства (x-5)(x+1)>0 (создать процедуру, определяющую является или не является данное целое число решением неравенства (x-5)(x+1)>0)
15. Определить, какие из целых чисел от -10 до 2 являются решениями неравенства (x+4)(x+1)<0 (создать процедуру, определяющую является или не является данное целое число решением неравенства (x+4)(x+1)<0)
16. Создать процедуру для вывода и подсчета суммы последовательных целых чисел от a до b. С помощью этой процедуры вывести и найти сумму целых чисел: 1) от 10 до 20; 2) от -5 до 15.
17. Создать процедуру для вывода таблицы значений функции y=sin 3x + 1 для х от a до b с шагом h. Вывести две таблицы: а) для х от 1 до 2 с шагом 0.1 и б) для х от 5 до 10 с шагом 0.5
18. Создать процедуру для вывода таблицы значений функции y=tg x + 1/x для х от a до b с шагом h. Вывести две таблицы: а) для х от 2 до 4 с шагом 0.2 и б) для х от 1 до 10 с шагом 0.5
19. Создать процедуру для вывода таблицы значений функции y= 3x2 + 1 для х от a до b с шагом h. Вывести две таблицы: а) для х от 1 до 2 с шагом 0.1 и б) для х от 2 до 5 с шагом 0.5
20. Создать процедуру для вывода таблицы значений функции y=sin (x + 1)2 для х от a до b с шагом h. Вывести две таблицы: а) для х от 2 до 3 с шагом 0.1 и б) для х от -2 до 3 с шагом 0.5






