Упражнения на C ++: поиск чисел Disarium от 1 до 1000
Числа C ++: упражнение 19 с решением
Напишите программу на C ++, чтобы найти числа Disarium от 1 до 1000.
Пример решения :
Код C ++:
#include<bits/stdc++.h>
using namespace std;
int DigiCount(int n)
{
int ctr_digi = 0;
int tmpx = n;
while (tmpx)
{
tmpx = tmpx/10;
ctr_digi++;
}
return ctr_digi;
}
bool chkDisarum(int n)
{
int ctr_digi = DigiCount(n);
int s = 0;
int x = n;
int pr;
while (x)
{
pr = x % 10;
s = s + pow(pr, ctr_digi--);
x = x/10;
}
return (s == n);
}
int main()
{
int i;
cout << "\n\n Find Disarium Numbers between 1 to 1000: \n";
cout << " ---------------------------------------------\n";
cout << " The Disarium numbers are: "<<endl;
for(i=1;i<=1000;i++)
{
if( chkDisarum(i))
cout <<i<<" ";
}
cout <<endl;
}
Пример вывода:
Найти числа дисариума от 1 до 1000: --------------------------------------------- Числа Disarium: 1 2 3 4 5 6 7 8 9 89 135 175 518 598
Блок - схема:
Редактор кода C ++:
Внесите свой код и комментарии через Disqus.
Предыдущий: Напишите программу на C ++, чтобы проверить, является ли число Disarium или нет.
Далее: Напишите программу на C ++, чтобы проверить, является ли число Харшадом или нет.
Каков уровень сложности этого упражнения?
Новый контент: Composer: менеджер зависимостей для PHP , R программирования
disqus2code