Упражнения на C ++: проверьте, являются ли два числа дружественными числами или нет
Числа C ++: упражнение 28 с решением
Напишите программу на C ++, чтобы проверить, являются ли два числа дружественными числами или нет.
Пример решения :
Код C ++:
#include <bits/stdc++.h>
using namespace std;
int ProDivSum(int n)
{
int sum = 1;
for (int i=2; i<=sqrt(n); i++)
{
if (n%i == 0)
{
sum += i;
if (n/i != i)
sum += n/i;
}
}
return sum;
}
bool chkAmicable(int a,int b)
{
return(ProDivSum(a) == b && ProDivSum(b) == a);
}
int main()
{
int n, i, j, ctr,nm1,nm2;
cout << "\n\n Check whether two numbers are Amicable pairs or not: \n";
cout << "\n Sample: (220, 284), (1184, 1210), (2620, 2924).. \n";
cout << " --------------------------------------------------------\n";
cout<<" Input the 1st number : ";
cin>>nm1;
cout<<" Input the 2nd number : ";
cin>>nm2;
if( chkAmicable(nm1,nm2))
cout << " The given numbers are an Amicable pair."<<endl;
else
cout << " The given numbers are not an Amicable pair."<<endl;
return 0;
}
Пример вывода:
Проверьте, являются ли два числа дружественными парами или нет: Образец: (220, 284), (1184, 1210), (2620, 2924). -------------------------------------------------- ------ Введите 1-е число: 220 Введите 2-е число: 284 Указанные числа являются дружественной парой.
Блок - схема:
Редактор кода C ++:
Внесите свой код и комментарии через Disqus.
Предыдущий: Напишите программу на C ++, чтобы найти номера утки от 1 до 500.
Далее: Напишите программу на C ++ для подсчета пар Amicable в массиве.
Каков уровень сложности этого упражнения?
Новый контент: Composer: менеджер зависимостей для PHP , R программирования
disqus2code