Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

алгоритм по совершенным числам

9.9K
16 марта 2007 года
o1ps
51 / / 11.10.2006
Задача напечатать все совершенные числа, меньшие, чем заданное M. (Натуральное число называется совершенным, если оно равно сумме всех своих собствен-ных делителей, включая 1.)
622
16 марта 2007 года
nilbog
507 / / 19.12.2006
вот функция проверяет совершенно ли число
 
Код:
function perf(n:integer):boolean;
var i,s:integer;
begin s:=0;
for i:=1 to n div 2 do
 if n mod i = 0 then s:=s+i;
perf:=s=n
end;

остальная часть программы совсем простая
9.9K
17 марта 2007 года
o1ps
51 / / 11.10.2006
А допустим как можно записать полученный результат в Массив?
622
17 марта 2007 года
nilbog
507 / / 19.12.2006
ну если уж нужно то создаете массив делаете по нему цикл и проверяя каждый раз perf(i) записываете
9.9K
18 марта 2007 года
o1ps
51 / / 11.10.2006
Если не затруднит, напишите пожалуйста кусок кода, переведенного на C++ по нахождению совершенного числа, меньше определенного N и запись его в массив. Спасибо.
271
18 марта 2007 года
MrXaK
721 / / 31.12.2002
Код:
int arr[];

bool perf(int x)
{
    for( int i = 1, s = 0; i < (x/2); i++ )
        if( (x % i) == 0 )
            s += i;
    return (s == x);
}
void c(int N)
{
    for( int i = 1, q = 0; i < N; i++ )
        if( perf(i) == true )
            arr[q++] = i;
}
622
18 марта 2007 года
nilbog
507 / / 19.12.2006
Цитата: Mr.Hacker
if( perf(i) == true )


не увлекайтесь такими записями
не проще if perf(i)

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог