Условие
Напишите программу, которая ищет среди целых чисел, принадлежащих числовому отрезку [245 690; 245 756] простые числа. Выведите на экран все найденные простые числа в порядке возрастания, слева от каждого числа выведите его порядковый номер в последовательности. Каждая пара чисел должна быть выведена в отдельной строке. Например, в диапазоне [5; 9] ровно два различных натуральных простых числа — это числа 5 и 7, поэтому для этого диапазона вывод на экране должна содержать следующие значения:
1 5
3 7
Примечание. Простое число — натуральное число, имеющее ровно два различных натуральных делителя — единицу и самого себя.
Решение
Целесообразно написать функцию N_Prosto(), которая будет возвращать ответ, является ли число простым. Все остальное можно сделать в программе. Кроме того, посмотрите про простые числа здесь.
Паскаль (PascalABC Net)
var k:=0; function N_Prosto(d: integer): boolean; var g: integer; b: boolean; begin g:=Round(Sqrt(d)); b:=true; for h : integer := 2 to g do if (d mod h) = 0 then begin b:=false; break; end; N_Prosto:=b; end; begin k:=0; // номер числа в последовательноcти for n: integer := 245690 to 245756 do begin k:=k+1; // увеличение счетчика if N_Prosto(n) then // если простое, то печать writeln(k, ' ', n); end; end.
C#
class Program { static bool N_Prosto(int d) { bool b = true; int g = Convert.ToInt32(Math.Sqrt(d))+1; for (int h = 2; h < g; h++) if (d % h == 0) { b = false; break; } return b; } static void Main(string[] args) { int k = 0; for (int n = 245690; n <= 245756; n++) { k++; if (N_Prosto(n)) Console.WriteLine(k + " " + n); } } }
NEW: Наш Чат, в котором вы можете обсудить любые вопросы, идеи, поделиться опытом или связаться с администраторами.