Упражнения на C ++: поиск нарциссических десятичных чисел в определенном диапазоне
Числа C ++: упражнение 37 с решением
Напишите программу на C ++, чтобы найти нарциссические десятичные числа в определенном диапазоне.
Пример решения :
Код C ++:
#include <iostream>
#include <cmath>
using namespace std;
int main()
{
int nl,nu;
cout << "\n\n Find the Narcissistic decimal numbers between a specific range: \n";
cout << " --------------------------------------------------------------------\n";
cout << " Input the lower limit: ";
cin>>nl;
cout << " Input a upper limit: ";
cin>>nu;
cout << " The Narcissistic decimal numbers between "<<nl<<" and "<<nu<<" are: \n";
int i,ctr,j,orn,n,m,sum;
for(orn=nl;orn<=nu;orn++)
{
ctr=0;
sum=0;
n=orn;
while(n>0)
{
n=n/10;
ctr++;
}
n=orn;
while(n>0)
{
m=n % 10;
sum=sum+pow(m,ctr);
n=n/10;
}
if(sum==orn)
{
cout<<" "<<orn<<" ";
}
}
cout<<endl;
}
Пример вывода:
Найти нарциссические десятичные числа между определенным диапазоном: -------------------------------------------------- ------------------ Введите нижний предел: 25 Введите верхний предел: 200 Нарциссические десятичные числа от 25 до 200: 153
Блок - схема:
Редактор кода C ++:
Внесите свой код и комментарии через Disqus.
Предыдущий: Напишите программу на C ++ для генерации простых чисел Мерсенна в диапазоне чисел.
Далее: Напишите программу на C ++, чтобы проверить, является ли данное число палиндромом или нет.
Каков уровень сложности этого упражнения?
Новый контент: Composer: менеджер зависимостей для PHP , R программирования
disqus2code