ВУЗ:
Составители:
Рубрика:
А.А. Андрианова, Л.Н. Исмагилов, Т.М. Мухтарова .
в виде суммы двух простых чисел.
Напишем отдельную функцию, определяющую, является ли число про-
стым. Напомним, что простыми являются натуральные числа, большие или
равные двум, делящиеся только на единицу и на само себя. Если число про-
стое, функция 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
- …
- следующая ›
- последняя »
