Cプログラミング
 Computer >> コンピューター >  >> プログラミング >> Cプログラミング

番号がアームストロングであるか、Cを使用していないことを確認してください


問題

与えられた番号がアームストロング番号であるかどうかをCプログラミング言語を使用して確認するにはどうすればよいですか?

解決策

アームストロング数は、その桁の立方体の合計に等しい数です。

構文

pqrs………=pow(p,n)+pow(q,n)+pow(r,n)+……….

たとえば、153、371、1634などはアームストロング数です。

153=1*1*1 + 5*5*5 + 3*3*3
   =1+125+27
   =153 (Armstrong number)

プログラム

#include<stdio.h>
int main(){
   int number,remainder,total=0,temp;
   printf("enter the number=");
   scanf("%d",&number);
   temp=number;
   while(number>0){
      remainder=number%10;
      total=total+(remainder*remainder*remainder);
      number=number/10;
   }
   if(temp==total)
      printf("This number is Armstrong number");
   else
      printf("This number is not Armstrong number");
   return 0;
}

出力

enter the number=371
This number is Armstrong number
Check: 371=3*3*3 +7*7*7 + 1*1*1
           =27 + 343 +1
           =371
enter the number=53
This number is not Armstrong number

説明

53 = 5*5*5 + 3*3*3
   =125 +27
   = 152 != 53

  1. 与えられた番号がPythonで鉱石番号であるかどうかを確認します

    数nがあるとします。 nが鉱石番号かどうかを確認する必要があります。私たちが知っているように、鉱石の数は除数が整数の調和値を持つ数です。 したがって、入力が28のような場合、28の約数が6つあるため、出力はTrueになります:[1、2、4、7、14、28]、したがって 3は整数なので、28は鉱石の数です。 これを解決するには、次の手順に従います- 関数get_all_div()を定義します。これにはnがかかります div:=新しいリスト 範囲1から(nの平方根)の整数部分のiの場合、do nがiで割り切れる場合、 (n / i)の商がiの場合、 divの最後にiを挿入

  2. Pythonで数値がアキレス数であるかどうかを確認します

    数nがあるとします。 nがアキレス数であるかどうかを確認する必要があります。私たちが知っているように、数は強力な数の場合はアキレス数です(数Nは、その素因数pごとに、p ^ 2もそれを除算する場合、強力な数と呼ばれます)が、完全なべき数ではありません。アキレス数の例には、72、108、200、288、392、432、500、648、675、800、864、968、972、1125があります。 したがって、入力が108のような場合、6と36の両方がそれを分割し、完全な正方形ではないため、出力はTrueになります。 これを解決するには、次の手順に従います- 関数check_powerful(