帕斯特语言编程:小兔子数(rabbit)设S(N)表示N的各位数字之和,如S(484)=4+8+4=16,S(22)=2+2=4.如果一个正整数满足S(x * x)= S(x) * S(x),我们称之为Rabbit Number.比方说,22就是一个Rabbit Number,因为S(484)= S(22) *
来源:学生作业帮助网 编辑:作业帮 时间:2024/07/06 16:52:16
![帕斯特语言编程:小兔子数(rabbit)设S(N)表示N的各位数字之和,如S(484)=4+8+4=16,S(22)=2+2=4.如果一个正整数满足S(x * x)= S(x) * S(x),我们称之为Rabbit Number.比方说,22就是一个Rabbit Number,因为S(484)= S(22) *](/uploads/image/z/13574263-31-3.jpg?t=%E5%B8%95%E6%96%AF%E7%89%B9%E8%AF%AD%E8%A8%80%E7%BC%96%E7%A8%8B%EF%BC%9A%E5%B0%8F%E5%85%94%E5%AD%90%E6%95%B0%EF%BC%88rabbit%29%E8%AE%BES%28N%29%E8%A1%A8%E7%A4%BAN%E7%9A%84%E5%90%84%E4%BD%8D%E6%95%B0%E5%AD%97%E4%B9%8B%E5%92%8C%2C%E5%A6%82S%28484%29%3D4%2B8%2B4%3D16%2CS%2822%29%3D2%2B2%3D4.%E5%A6%82%E6%9E%9C%E4%B8%80%E4%B8%AA%E6%AD%A3%E6%95%B4%E6%95%B0%E6%BB%A1%E8%B6%B3S%28x+%2A+x%29%3D+S%28x%29+%2A+S%28x%29%2C%E6%88%91%E4%BB%AC%E7%A7%B0%E4%B9%8B%E4%B8%BARabbit+Number.%E6%AF%94%E6%96%B9%E8%AF%B4%2C22%E5%B0%B1%E6%98%AF%E4%B8%80%E4%B8%AARabbit+Number%2C%E5%9B%A0%E4%B8%BAS%28484%29%3D+S%2822%29+%2A)
帕斯特语言编程:小兔子数(rabbit)设S(N)表示N的各位数字之和,如S(484)=4+8+4=16,S(22)=2+2=4.如果一个正整数满足S(x * x)= S(x) * S(x),我们称之为Rabbit Number.比方说,22就是一个Rabbit Number,因为S(484)= S(22) *
帕斯特语言编程:小兔子数(rabbit)
设S(N)表示N的各位数字之和,如S(484)=4+8+4=16,S(22)=2+2=4.如果一个正整数满足S(x * x)= S(x) * S(x),我们称之为Rabbit Number.比方说,22就是一个Rabbit Number,因为S(484)= S(22) * S(22).
现在,给出一个区间[L,R],求在该区间内的Rabbit Number的个数.
记住!是FPC语言!
帕斯特语言编程:小兔子数(rabbit)设S(N)表示N的各位数字之和,如S(484)=4+8+4=16,S(22)=2+2=4.如果一个正整数满足S(x * x)= S(x) * S(x),我们称之为Rabbit Number.比方说,22就是一个Rabbit Number,因为S(484)= S(22) *
#include <iostream>
using namespace std;
int S(int x) //求各位的和的函数
{
int sum=0,y;
while (x>10 )
{
y = x % 10;
sum+=y;
x = x/10;
}
sum += x;
return sum;
}
int main()
{
int L,R,num = 0;
cout<<"输入一个区间【L,R】,L小于R:"<<endl;
cin>>L;
cin>>R;
for (int j = L ; j<R ;j++)
{
if( S(j)*S(j) == S(j*j) )
{
cout<<j<<" is rabbit num!"<<endl;
num++;
}
}
cout<<"区间【"<<L<<','<<R<<"】上共计有"<<num<<"个rabbits数~"<<endl;
}