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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 08.10.2009, 01:36   #11
Frame1992
Пользователь
 
Аватар для Frame1992
 
Регистрация: 21.09.2009
Сообщений: 31
По умолчанию

прога последовательно делит а на числа от 2 до а/2, выясняя простое ли оно, если простое, то b=а+2 и на b делается точно такая же проверка на "сложность".. Если все гут, то прога выводит на экран пару а b, если нет, то а=а+1
Frame1992 вне форума Ответить с цитированием
Старый 08.10.2009, 01:38   #12
Frame1992
Пользователь
 
Аватар для Frame1992
 
Регистрация: 21.09.2009
Сообщений: 31
По умолчанию

и еще, я буквально только что подредачил прогу, вот в каком она виде -
Код:
#include<stdio.h>
#include<conio.h>
void main()
{ int n, a, i, k, b;
   printf("\nВведите n");
   scanf("%d", %n);
   a=3;
   k=0;
   do
         { i=2;
            while ((a%i!=0)&&(i<=a/2))
            i=i+1;
                    if (i>a/2)
                    {b=a+2;
                     i=2;
                    }
                while ((b%i!=0)&&(i<=b/2))
                i=i+1;
                        if (i>b/2)
                        {printf("\n  %d   %d", a, b);
                          k=k+1;
                        }
                a=a+1;
                b=b+1;
           }
 while (k!=n);
 printf("\n Найденые пары");
}
Так вот, в этом случае у мя все практически гут, тока иногда b попадаются не простые..в чем причина??помогите, мне сегодня её сдавать((

Последний раз редактировалось Frame1992; 08.10.2009 в 01:56.
Frame1992 вне форума Ответить с цитированием
Старый 08.10.2009, 01:45   #13
netrino
Участник клуба
 
Аватар для netrino
 
Регистрация: 15.07.2008
Сообщений: 1,933
По умолчанию

До сих пор не могу понять, как это пропускает компилятор.
Код:
void main(); // тут НЕ надо точки с запятой.

b=a+2: // А здесь
...
k=k+1 // и здесь надо.

 scanf("%d", %n); // % - остаток от деления, Вы уверены, что именно оно тут необходимо?
netrino вне форума Ответить с цитированием
Старый 08.10.2009, 01:56   #14
Frame1992
Пользователь
 
Аватар для Frame1992
 
Регистрация: 21.09.2009
Сообщений: 31
По умолчанию

Ой, на счет точек с запятой - эт да, согласен, торопился написать на форум, нечаянно поставил лишку/не поставил..

Последний раз редактировалось Frame1992; 08.10.2009 в 02:01.
Frame1992 вне форума Ответить с цитированием
Старый 08.10.2009, 02:01   #15
Frame1992
Пользователь
 
Аватар для Frame1992
 
Регистрация: 21.09.2009
Сообщений: 31
По умолчанию

юхуууу!!! Я кажется понял в чем моя ошибка!!!!Она вот в чем!!!
Код:
#include<stdio.h>
#include<conio.h>
void main()
{ int n, a, i, k, b;
   printf("\nВведите n");
   scanf("%d", %n);
   a=3;
   k=0;
   do
         { i=2;
            while ((a%i!=0)&&(i<=a/2))
            i=i+1;
                    if (i>a/2)
                    {b=a+2;
                     i=2;
                    }
                while ((b%i!=0)&&(i<=b/2))
                i=i+1;
                        if (i>b/2)
                        {printf("\n  %d   %d", a, b);
                          k=k+1;
                        }
                a=a+2; //и дальше, как видно, я удалил b=b+1   
           }
 while (k!=n);
 printf("\n Найденые пары");
}
Короч, теперь все работает!!!!Спасиб, что откликнулся на помощь))

Последний раз редактировалось Frame1992; 08.10.2009 в 02:04.
Frame1992 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
помогите найти ошибку darika Паскаль, Turbo Pascal, PascalABC.NET 7 10.09.2009 19:20
помогите найти ошибку deadh5n1 Помощь студентам 1 13.03.2009 20:56
Помогите найти ошибку alex2008ean Паскаль, Turbo Pascal, PascalABC.NET 2 17.12.2008 15:43
Помогите найти ошибку ( с++ ) JOFRIF Помощь студентам 10 23.05.2008 14:34