我用c语言编写了一个程序,以确定一个整数是否为三位数的。如果用户给出的数字是一个阿姆斯特朗数字,它将打印它是一个阿姆斯特朗数字,如果它不是一个阿姆斯特朗数字,它将打印它不是阿姆斯特朗数字。它是打印出来的,它不是阿姆斯特朗数字,尽管它是阿姆斯特朗数字。有人能告诉我这里出了什么问题吗。is not an armstrongnumber\n");}
如果输入一个三位数的阿姆斯特朗数字,我将得到以下
这个程序没有将153显示为Armstrong数字,而对于其他数字,输出是正确的。就像我检查407一样,它给出了正确的答案,但当我检查153时,它显示的不是Armstrong数字。#include <math.h>
int no, copy, re, n = 0, ans = 0;
printf("\n\tEnter a new numberans +
def armstrong(x): length = len(number) for i in number:sum = sum + pow(int(i),length)
print("Yes {0} is an ArmstrongNumber" .format(x) if(sum==x) elseprint("No {0} is not an Armstrong
scan= new Scanner(System.in); String num=String.valueOf(number); // simple way to get the number of digits in a number for(int i=0;i<num.lengthSystem.out.print(number+" "+&q