[ЗМІСТ] [Далі] [Назад] [Початок
розділу]
3.3. Програмування
арифметичного
циклу
У мові
Паскаль
передбачені
тільки такі
арифметичні
цикли, які
мають лічильник,
причому
інструкція Р
не змінює вираз n
і лічильник k,
тобто
k <- 0;
повт n раз
k <- k+1; (Ln-P)
Р
кц,
де
змінна k
натуральна.
Цикл вигляду
(Ln-P)
програмується
так:
for K:=1 to N do
begin
Pas(Р)
end,
коли
Р - ланцюг
команд. Операторні
дужки "begin - end"
можна
опустити, якщо Р
не ланцюг
інструкцій.
Приклад
1P. Степінь з
натуральним
показником
(задача 3.2).
program Power;
var х,
у: real;
k, n: word;
begin
write('х,
n=? '); readln(х, n);
у:=
1;
for k:=1 to n do у:= у*х;
writeln(х:5:2,' ^ ', n:2,'=', у:11:4)
end.
Приклад
2P. N член
послідовності
{tn}
(задача 3.4).
program Tn;
var X, Т: real;
K, N: word;
begin
write('х,
n=? '); readln(X, N);
Т:= 1;
for K:=1 to N do Т:= -
Т*Х/K;
writeln(' Т = ', Т)
end.
Приклад
3P. Числа
Фібоначчи
(задача 3.6).
program Fibonacci;
var F, Т, Sf: integer;
K, N: word;
begin
write('n=? '); readln(N);
F:= 0; Sf:= 1;
for K:=1 to N do begin
Т:= F+Sf; F:= Sf; Sf:= Т
end;
writeln('Fib( ', N:2,' )= ', F:1)
end.
У мові
Сі арифметичний
цикл повинен
містити
лічильник за
схемою,
аналогічною
(Ln-P) для Паскаля
Цикл вигляду
(Ln-P) у
мові Сі
програмується
так:
for (k=1; k<=n; k++)
{
C(Р)
}
коли
Р - ланцюг
команд. Операторні
дужки "{ - }" можна
опустити, якщо Р
не ланцюг
інструкцій.
Приклад
1C.
Степінь з
натуральним
показником
(задача 3.2).
#include <stdio.h>
/* Power */
main()
{
double x, y;
unsigned k, n;
printf(“х, n=? ”); scanf(“%lf %u”, &х, &n);
у = 1;
for (k = 1; k<=n; k++) у *= х;
printf(“%lf ^ %u = %lf”,x,n,у);
}
Приклад
2C. N член
послідовності
{tn}
(задача 3.4).
#include <stdio.h>
/* Tn */
main()
{
double x, t;
unsigned k, n;
printf(“х, n=?”); scanf(“%lf %u”, &х, &n);
t = 1;
for (k = 1; k<= n; k++) t = - t*x/k;
printf(“ Т = %lf”, t);
}
Приклад
3C. Числа
Фібоначчи
(задача 3.6).
#include <stdio.h>
/* Fibonacci */
main()
{
int f, t, sf;
unsigned k, n;
printf(“n=?”); scanf(“%u”, &n);
f = 0; sf = 1;
for (k = 1; k<=n; k++)
{
t = f+sf; f = sf; sf = t;
}
printf(“Fib( %u )= %d”, n, f);
}
[ЗМІСТ] [Далі] [Назад] [Початок
розділу]