При решении этой задачи нам понадобилось выполнить преобразование типов.
Пример 2
Найти k−е простое число в арифметической прогрессии 11, 21, 31, 41, 51, 61,…
Решение
Для решения поставленной задачи необходимо просматривать числа последовательности и проверять каждое из них на простоту. Поскольку нам неизвестно, сколько членов последовательности необходимо просмотреть, мы должны просматривать последовательность до тех пор, пока не найдем k−е простое число. Для этого воспользуемся циклом с условием:
Program Example_68;
Var k: Integer;
n, p, d: Longint:
Begin
Writeln('введите номер числа');
Readln(k);
n:=0; p:=1;
While n<k Do
Begin
Inc(p, 10); d:=2;
While (p mod d<>0) and (d<sqrt(p)) Do
Inc(d);
If d>=sqrt(p) Then Inc(n);
End;
Writeln(p);
Readln;
End.
В этом решении мы смогли записать условие d<sqrt(p), так как типы Integer и Real совместимы.
Пример 3
Вычислить сумму значений 1/n5 в прямом и обратном порядке.