07.10.2012, 11:33. Просмотров 364. Ответов 6
Добрый день!
Возникла проблема с вывод совершенных чисел в интервале от m до n. Почему-то вообще не выводит, хотя проверял похожий алгоритм на паскале, все ок. Здесь почему-то не выходит, можете помочь? Буду благодарен.
C++ (Qt) |
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
| #include "stdafx.h"
#include <stdio.h>
#include <clocale>
#include <math.h>
int _tmain(int argc, _TCHAR* argv[])
{
setlocale(LC_ALL,"RUSSIAN");
setlocale(LC_ALL,"rus");
long c,m,i,n,del,sum=0;
printf("Программа для вывод всех совершенных чисел от M до N включитально\n");
//Начальная инициализация
printf("Введите 2 любых числа 1<=m<=n\n");
scanf("%d", &m);
scanf("%d", &n);
//Решение
sum=1;
for(i=m; i<=n;i++)
{ for (del=1;del<=ceil(sqrt((float)i+1));del++)
{
if(i%del==0)
{sum=sum+del;
}
}
if(i==sum)
{
printf("%d\n",i);
}}
getchar();
getchar();
return 0;
} |
|