Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 06.07.2010, 13:22   #1
Devid92
 
Регистрация: 30.05.2010
Сообщений: 6
По умолчанию Проверить для этого числа N гипотезу Гольдбаха

Дано четное число N. Проверить для этого числа гипотезу Гольдбаха. Эта гипотеза(по сегодняшний день не опровергнутая и полностью недоказанная) заключается в том, что каждое четное N>=2 представляется в виде суммы двух простых чисел.( Определить процедуру распознавания простых чисел.)




Помогите мне с этой задачкой. второй день голову ломаю не знаю как сделать(((
Devid92 вне форума Ответить с цитированием
Старый 06.07.2010, 13:44   #2
Snejnaya
Форумчанин
 
Регистрация: 12.05.2010
Сообщений: 219
По умолчанию

Код:

function proverka(chislo:integer):boolean;
var j:integer;
    flag:boolean;
begin
flag:=true;
for j:=2 to (chislo-1) do
if ((chislo mod j)=0) then flag:=false;
result:=flag;
end;


var N, i, N1, N2:integer;
    fl:boolean;

begin
writeln('vvedite chetnoe chislo');
readln(N);

fl:=false;
for i:=1 to (N div 2) do
if (proverka(i) and proverka(N-i)) then 
begin
fl:=true;
N1:=i;
N2:=N-i;
end;

if fl then writeln(N1, '+', N2, '=', N)
else writeln ('gipoteza ne podtverdilas!');
readln;
end.
если что непонятно - спрашивай))
Snejnaya вне форума Ответить с цитированием
Старый 06.07.2010, 15:03   #3
Devid92
 
Регистрация: 30.05.2010
Сообщений: 6
По умолчанию

Спасибо приогромное
Devid92 вне форума Ответить с цитированием
Старый 30.11.2016, 21:32   #4
Мажор7625
Новичок
Джуниор
 
Регистрация: 30.11.2016
Сообщений: 1
По умолчанию

Цитата:
Сообщение от Snejnaya Посмотреть сообщение
Код:

function proverka(chislo:integer):boolean;
var j:integer;
    flag:boolean;
begin
flag:=true;
for j:=2 to (chislo-1) do
if ((chislo mod j)=0) then flag:=false;
result:=flag;
end;


var N, i, N1, N2:integer;
    fl:boolean;

begin
writeln('vvedite chetnoe chislo');
readln(N);

fl:=false;
for i:=1 to (N div 2) do
if (proverka(i) and proverka(N-i)) then 
begin
fl:=true;
N1:=i;
N2:=N-i;
end;

if fl then writeln(N1, '+', N2, '=', N)
else writeln ('gipoteza ne podtverdilas!');
readln;
end.
если что непонятно - спрашивай))
А как это можно реализовать в си++
Мажор7625 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Дано целое число. Уменьшить каждую цифру этого числа на 1. Makcumqa Помощь студентам 2 18.03.2010 08:09
в поле ввести число и при нажатии кнопки получить рандом от этого числа NIQK HTML и CSS 4 03.03.2010 10:51
Дано число в двоичной системе счисления. Проверить правильность ввода этого числа isus Помощь студентам 2 29.11.2009 23:32
a=42339, как все цифры этого числа разделить пробелами??? MjRed Помощь студентам 6 19.12.2008 11:09