ВУЗ:
Составители:
Рубрика:
А.А. Андрианова, Л.Н. Исмагилов, Т.М. Мухтарова .
в виде суммы двух простых чисел.
Напишем отдельную функцию, определяющую, является ли число про-
стым. Напомним, что простыми являются натуральные числа, большие или
равные двум, делящиеся только на единицу и на само себя. Если число про-
стое, функция PrimeNumber возвращает 1, иначе – 0. Само число передается
в функцию как параметр.
В главной программе проверяем на «простоту» все возможные слагае-
мые. Если найдем пару простых чисел, составляющих в сумме заданное чис-
ло, значит, гипотеза Гольдбаха подтвердилась, и выведем соответствующее
сообщение. Если же таких чисел нет, то мы опровергли гипотезу.
Заметим, что проверку гипотезы можно также оформить в виде отдель-
ной функции.
# include <stdio.h>
# include <math.h>
// прототип функции проверки, является ли число k простым
int PrimeNumber(int k);
void main(void)
{
int n,i;
printf("Введите число:");
while(true)
{
scanf("%d",&n);
if(n%2==1 || n<=2)
printf("Введите четное положительное число,
большее двух");
else break;
}
// проверка гипотезы Гольдбаха
int f=0;
for(i=2;i<=n/2; i++)
if(PrimeNumber(i))
if(PrimeNumber(n-i))
{
f=1;
printf("%d=%d+%d\n",n,i,n-i);
}
if(f==0)
printf("Гипотеза не верна\n");
}
12
А.А. Андрианова, Л.Н. Исмагилов, Т.М. Мухтарова . в виде суммы двух простых чисел. Напишем отдельную функцию, определяющую, является ли число про- стым. Напомним, что простыми являются натуральные числа, большие или равные двум, делящиеся только на единицу и на само себя. Если число про- стое, функция PrimeNumber возвращает 1, иначе – 0. Само число передается в функцию как параметр. В главной программе проверяем на «простоту» все возможные слагае- мые. Если найдем пару простых чисел, составляющих в сумме заданное чис- ло, значит, гипотеза Гольдбаха подтвердилась, и выведем соответствующее сообщение. Если же таких чисел нет, то мы опровергли гипотезу. Заметим, что проверку гипотезы можно также оформить в виде отдель- ной функции. # include# include // прототип функции проверки, является ли число k простым int PrimeNumber(int k); void main(void) { int n,i; printf("Введите число:"); while(true) { scanf("%d",&n); if(n%2==1 || n<=2) printf("Введите четное положительное число, большее двух"); else break; } // проверка гипотезы Гольдбаха int f=0; for(i=2;i<=n/2; i++) if(PrimeNumber(i)) if(PrimeNumber(n-i)) { f=1; printf("%d=%d+%d\n",n,i,n-i); } if(f==0) printf("Гипотеза не верна\n"); } 12
Страницы
- « первая
- ‹ предыдущая
- …
- 10
- 11
- 12
- 13
- 14
- …
- следующая ›
- последняя »