Помощь - Поиск - Пользователи - Календарь
Полная версия: найти простое шестизначное число
Форум «Всё о Паскале» > Pascal, Object Pascal > Задачи
maksimla
Задание напишите функцию которая нашла бы хотябы один любой шестизначное простое число. функции запись
function pervicnoe(pr:string):longint;

pr это начало числa пример '123'. Строчки pr длина от 0 до 6 символов, и строчка неначинается с 0.
Если первичное число несуществует то тогда результат функции должен быть 0.
пример
123
результат
123001
пример
999
результат
999007


вот что написал только без функции и без string
program prostoje;
var a,b,c:longint;
begin
WriteLn('vvedite trexznacnoe cislo');
Readln(a);
a:=a*1000;
repeat
c:=0;
for b:=1 to a do
if (a mod b =0) or (a=b) then c:=c+1;
if c=2 then writeln(a);
inc(a);
until (c=2) or (a=999999);

readln;
end.

Википедия простое число
andriano
1. Я бы перевел строку в число. Например: val(s,i,j); i := i*1000;.
2. Перебор потенциальных делителей нужно начинать не с 1, а с 2 и заканчивать не самим числом, а корнем из него.
3. Хорошо бы заранее составить таблицу простых чисел от 2 до 1000 и при переборе делить не на все числа подряд, а только на простые.
maksimla
спасибо
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.