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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 14.07.2013, 11:23   #1
Gromul
Новичок
Джуниор
 
Регистрация: 14.07.2013
Сообщений: 1
По умолчанию Builder C++ совершенные числа

Написать программу в которой выполняется 2 потока. Один из которых предназначен для открытия большого текстового файла и вывода его, например в компонент Memo, а второй поток – для решения одной из следующих задач.Определить является ли число совершенным. Совершенным называется такое натуральное число, которое равно сумме всех своих делителей, за исключением самого числа, например: 28=1+2+4+4+14.
Первый поток сделан. Теперь проблема состоит в решении задачи.
Код:
bool IsPerfect( int n )
{
int sum = 1;
for ( int i = 2; i <= n / 2; ++i )
if ( !( n % i ) )
sum += i;
if ( sum == n )
return true;
return false;}

        {if( IsPerfect( 28 ) ) Form1->Label1->Caption = "Совершенное!";
        }

        else
            {
            Form1->Label1->Caption="Не совершенно";
            }

Последний раз редактировалось Stilet; 14.07.2013 в 12:19.
Gromul вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
вычислить все числа до n которые равны сумме своих делителей (совершенные числа)//не могу найти ошибку в своей програме на паскале games_vandal Паскаль, Turbo Pascal, PascalABC.NET 0 22.12.2012 14:24
совершенные числа druger Помощь студентам 1 25.09.2011 14:04
Совершенные числа на C++ Slavytich Помощь студентам 4 28.10.2010 21:05
Совершенные числа Franzs Общие вопросы .NET 1 18.05.2010 11:54