0 / 0 / 0
Регистрация: 31.05.2011
Сообщений: 28
1

Определить, является ли заданное натуральное число простым (рекурсия)

08.06.2011, 13:13. Показов 5598. Ответов 11
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
11. Определить, является ли заданное натуральное число простым
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
08.06.2011, 13:13
Ответы с готовыми решениями:

Определить, является ли заданное натуральное число простым
Определить, является ли заданное натуральное число простым. Выходные данные: Вывести YES или NO....

Определить, является ли заданное натуральное число простым
Определить, является ли заданное натуральное число простым

Является ли заданное натуральное число n > 1 простым
9. Проверить, является ли заданное натуральное число n > 1 простым.

Определить является ли заданное число A простым
6.Определить является ли заданное число A простым?

11
go
Эксперт С++
3646 / 1378 / 243
Регистрация: 16.04.2009
Сообщений: 4,526
08.06.2011, 13:26 3
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
var n:integer;
    f:boolean;
procedure nat (var f:boolean;n,i:integer);
begin
 if i<=n/2 then
   begin
     if (n mod i) = 0 then f:=false;
     Inc (i);
     nat (f,n,i);
   end;
   
end;
 
begin
 f:=true;
 readln (n);
 nat (f,n,2);
 write (f);
 
end.
Добавлено через 53 секунды
интерфейс доработаете сами
1
Путешественник вселенной
189 / 160 / 119
Регистрация: 01.03.2011
Сообщений: 664
08.06.2011, 13:29 4
А что такое рекурсия?
0
go
Эксперт С++
3646 / 1378 / 243
Регистрация: 16.04.2009
Сообщений: 4,526
08.06.2011, 13:32 5
Просто лис, воспользуйтесь википедией
я решил с помощью рекурсии (процедура вызывает сама себя)
0
Почетный модератор
64300 / 47595 / 32743
Регистрация: 18.05.2008
Сообщений: 115,181
08.06.2011, 13:55 6
С помощью функции.
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
uses crt;
function Prost(n,i:integer):boolean;
begin
if n<2 then Prost:=false else{первое простое число - это 2}
if n=2 then Prost:=true else{если Pr=2, то сразу говорим ДА}
if n mod i=0 then{делится ли число без остатка на i (первоначально i=2) }
    Prost:=false
  else
    if i*i<=n then
      Prost:=Prost(n,i+1){если не делится, то пытаемся делить на i+1}
    else
      Prost:=true{возникает в случае если Pr не делится ни на одно число из промежутка (2, sqrt(n)]  }
end;
var n:integer;
begin
clrscr;
write('n=');
readln(n);
write(Prost(n,2));
readln
end.
1
go
Эксперт С++
3646 / 1378 / 243
Регистрация: 16.04.2009
Сообщений: 4,526
08.06.2011, 15:25 7
Определить, является ли заданное натуральное число простым (рекурсия) Работает и на ABCPascal.
0
go
Эксперт С++
3646 / 1378 / 243
Регистрация: 16.04.2009
Сообщений: 4,526
08.06.2011, 16:12 8
немного оптимизировал
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
var n:integer;
    f:boolean;
procedure nat (var f:boolean;n,i:integer);
begin
if n<2 then f:=false else
if n=2 then f:=true else
 if i<=trunc(sqrt(n)) then
   begin
     if (n mod i) = 0 then f:=false;
     Inc (i);
     nat (f,n,i);
   end;
 
end;
 
begin
 f:=true;
 readln (n);
 nat (f,n,2);
 write (f);
 
end.
0
0 / 0 / 0
Регистрация: 31.05.2011
Сообщений: 28
12.06.2011, 13:56  [ТС] 9
Задан массив с количеством элементов N. Сформировать два массива: в первый включить элементы исходного массива с четными номерами, а во второй - с нечетными
0
0 / 0 / 0
Регистрация: 31.05.2011
Сообщений: 28
12.06.2011, 13:58  [ТС] 10
39. Задан массив с количеством элементов N. Сформировать два массива: в первый включить элементы исходного массива с четными номерами, а во второй — с нечетными.
0
К.О.
534 / 499 / 344
Регистрация: 26.03.2011
Сообщений: 1,141
12.06.2011, 14:52 11
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
var
   a,b,c: array[1..100] of integer;
   i,n: byte;
begin
   randomize;
   write('введите N: ');
   readln(n);
   for i:=1 to n do
      begin
         a[i]:=random(101)-50;
         write(a[i],' ');
      end;
   writeln;
   for i:=1 to n div 2 do
      b[i]:=a[i*2];
   for i:=1 to n+1 div 2 do
      c[i]:=a[i*2-1];
   writeln('1 массив');
   for i:=1 to n div 2 do write(b[i],' ');
   writeln;
   writeln('2 массив');
   for i:=1 to n - n div 2 do write(c[i],' ');
   readln
end.
1
go
Эксперт С++
3646 / 1378 / 243
Регистрация: 16.04.2009
Сообщений: 4,526
12.06.2011, 15:07 12
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
var arr, arr1, arr2 : array [1..100] of integer;
i, n : integer;
begin
 write ('write n= '); readln (n);
 for i:=1 to n do 
   begin
     arr[i]:= random (100);
     write (arr[i]:4);
   end;
 
 for i:= 1 to n do
   if odd (i) then arr1[(i div 2)+1]:= arr[i]
              else  arr2[(i div 2)]:= arr[i];
 
end.
0
12.06.2011, 15:07
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
12.06.2011, 15:07
Помогаю со студенческими работами здесь

Определить является ли заданное натуральное число совершенным
буду очень благодарна за помощь . задача: Определить является ли заданное натуральное число...

Определить, является ли заданное натуральное число совершенным
определить,является ли заданное натуральное число совершенным,т.е равным сумме всех (положительных)...

Определить, является ли заданное натуральное число совершенным
составить программу, определяющую, является ли заданное натуральное число Р совершенным....

Определить, является ли заданное натуральное число совершенным
Определить, является ли заданное натуральное число совершенным, то есть равным сумме всех своих...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru