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

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

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

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 20.04.2008, 20:43   #1
Танюсик
 
Регистрация: 20.04.2008
Сообщений: 4
По умолчанию подпрограмма-процедура в Pascal

Здравствуйте, многоуважаемые программисты=))))
Помогите мне плиз решить одну такую малюсенЬкую задаЧку!))...
вот она:"Дано четное число К>2. Проверить для него гипотезу Гольдбаха: любое число большее 2 представимо в виде суммы двух простых чисел. Написать процедуру, позволяющую для заданного К найти эти простые числа".
Заранее спасиБки=))))
Танюсик вне форума Ответить с цитированием
Старый 20.04.2008, 21:14   #2
mihali4
*
Старожил
 
Регистрация: 22.11.2006
Сообщений: 9,201
По умолчанию

Напишите математическое решение задачи, а мы вам поможем оформить его в подпрограмму-процедуру.
Давайте решение.
Цитата:
Сообщение от SunKnight Посмотреть сообщение
Наверно недождемся...
Так я ей мягко и намекнул, что и она не дождется
[OFF]
В последнее время просто наплыв "блондинок", называющих себя кошачьими именами и считающих, что тут все настолько сексуально озабочены, что тут же бросятся выполнять для них задания сломя голову...
[/OFF]

Последний раз редактировалось mihali4; 20.04.2008 в 21:30.
mihali4 вне форума Ответить с цитированием
Старый 20.04.2008, 21:21   #3
SunKnight
Участник клуба Подтвердите свой е-майл
 
Аватар для SunKnight
 
Регистрация: 14.12.2007
Сообщений: 1,434
По умолчанию

Цитата:
Сообщение от mihali4 Посмотреть сообщение
Давайте решение.
Наверно недождемся, т.к. такие топики, в большенстве случаев, направлены на поиск халявного решения. Они (залетные юзеры) думают что если форум программерский, так значит мы должны для них и за них решать.
Проповедую design patterns, верую в MVC, доверяю eXtrime programming.
SunKnight вне форума Ответить с цитированием
Старый 20.04.2008, 23:01   #4
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

ох... извините, уважаемые мэтры Михалыч и СолнечныйРыцарь... я не хотел помогать халявщикам...
но, пытаясь почитать, как звучит гипотеза Гольдбаха
наткнулся на
Задачи с простыми числами
задача 4 полностью идентична запрашиваемой. Есть решение...
Serge_Bliznykov вне форума Ответить с цитированием
Старый 20.04.2008, 23:07   #5
gred
Пока ещё
Форумчанин
 
Аватар для gred
 
Регистрация: 26.02.2008
Сообщений: 116
Счастье

Вопрос не очень понял ну врод так(только доделать надо)
Код:
Var n,item1:integer; hypot:boolean;
Function Simple(n:integer):boolean;
Var i:integer;
simp:boolean; {simp=False, если встретится делитель числа n}
begin
if n=2 then Simple:=True
else if n mod 2=0 then Simple:=False
else begin
simp:=True;
i:=3;
while (i<=trunc(sqrt(n))) and simp do
if n mod i=0 then simp:=False
else i:=i+2;
if simp then Simple:=True else Simple:=False;
end;
end;
BEGIN
n:=1; {условно для выполнения цикла}
while n mod 2 = 1 do
begin
write('n='); readln (n);
if n mod 2 = 1 then writeln('Число n должно быть четным!')
end;
hypot:=False;
if n=4 then begin {проверяем и число 4}
item1:=2;
hypot:=True
end
else begin {n>4}
item1:=3;
while (item1<=n div 2) and not hypot do
if Simple(item1) and Simple(n-item1) then hypot:=True
else item1:=item1+2
end;
if hypot then
begin
writeln('Для данного n гипотеза справедлива');
writeln('Простыми слагаемыми являются числа ',item1,' и ',n-item1) end
else writeln('Для данного n гипотеза не справедлива');
END.
Чтот злые вы стали товарищи программисты добрее надо быть
Я мегапрограммер потерявший память.
Если кому помог, поставте '+' я буду благодарен

Последний раз редактировалось gred; 20.04.2008 в 23:11. Причина: меня опередили млин.
gred вне форума Ответить с цитированием
Старый 20.04.2008, 23:35   #6
puporev
Старожил
 
Регистрация: 13.10.2007
Сообщений: 2,740
По умолчанию

Не хотел сюда лезть, но после творчества доброго товарища, утверждающего, что четное число, это когда n mod 2=1 и еще много чего непонятного написал, решил все таки выложить свое решение этой задачи, а то подумают люди, что у нас люди либо недобрые, либо мало чего знают.
Код:
program prost_chis;
uses crt;
var k,m:longint;//если не будете исследовать большие числа, можно Word;
function Prost(n:longint):boolean;//функция для определения простых чисел
var i:longint;
begin
  for i:=2 to (n div 2) do
  if n mod i=0 then
    begin
      Prost:=false;
    end;
end;
Procedure Goldbah(n:longint);//процедура нахождения нужных чисел
var i,p:longint;
begin
  p:=0;
  for i:=1 to n div 2 do
  if Prost(i)and Prost(n-i)then //если оба слагаемые простые числа
    begin
       writeln(i,'+',n-i);  //выводим их на экран
       p:=p+1;
       if p mod 20=0 then   //если таких пар больше 20, то после 20 делаем паузу
       readln;
    end;
end;
puporev вне форума Ответить с цитированием
Старый 21.04.2008, 07:28   #7
Танюсик
 
Регистрация: 20.04.2008
Сообщений: 4
По умолчанию

огромное ВАМ спасибо!...=))))
Танюсик вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Оконная процедура HunterMan Win Api 5 04.06.2008 12:10
Процедура () GAGARIN-NEW Помощь студентам 3 17.12.2007 21:42
С++.Массив и подпрограмма функции SkyDreamer Помощь студентам 0 23.11.2007 20:45
процедура Sergik1977 Паскаль, Turbo Pascal, PascalABC.NET 7 28.10.2007 16:36
подпрограмма в Борланд Паскаль Jasper Паскаль, Turbo Pascal, PascalABC.NET 1 05.12.2006 20:40