与えられた数を見つけるためのCプログラムは強いかどうか
強い数とは、桁の階乗の合計が数自体に等しい数です。
例
- 123!=1!+2!+3!
=1 + 2 + 6 =9
ここで、123は、桁の階乗の合計が数値自体と等しくないため、強い数値ではありません。
- 145!=1!+4!+5!
=1 + 24 + 120
=145
ここで、桁の階乗の合計は数値自体に等しいため、145は強い数値です。
指定された数値が強いかどうかを見つけるために使用するロジック 次のとおりです-
while(n){
i = 1,fact = 1;
rem = n % 10;
while(i <= rem){
fact = fact * i;
i++;
}
sum = sum + fact;
n = n / 10;
}
if(sum == temp)
printf("%d is a strong number\n",temp);
else
printf("%d is not a strong number\n",temp); プログラム
以下は、与えられた数が強いかどうかを調べるためのCプログラムです-
#include<stdio.h>
int main(){
int n,i;
int fact,rem;
printf("\nEnter a number : ");
scanf("%d",&n);
printf("\n");
int sum = 0;
int temp = n;
while(n){
i = 1,fact = 1;
rem = n % 10;
while(i <= rem){
fact = fact * i;
i++;
}
sum = sum + fact;
n = n / 10;
}
if(sum == temp)
printf("%d is a strong number\n",temp);
else
printf("%d is not a strong number\n",temp);
return 0;
} 出力
上記のプログラムを実行すると、次の結果が得られます-
Run 1: Enter a number : 145 145 is a strong number Run 2: Enter a number : 25 25 is not a strong number
-
Pythonで指定された数のビット1の数を見つけるプログラム
数nがあるとすると、その数のバイナリ表現に存在するビット1の数を見つける必要があります。 したがって、入力が12のような場合、出力は2になります これを解決するには、次の手順に従います- count:=0 nがゼロ以外の場合は、 count:=count +(n AND 1) n:=(n / 2)のフロア 返品数 理解を深めるために、次の実装を見てみましょう- 例 class Solution: def solve(self, n): count = 0 whi
-
Pythonで指定された数値のすべての桁の合計を見つけるプログラム
数値がnumであるとすると、その桁の合計を見つける必要があります。文字列を使用せずに解決する必要があります。 したがって、入力がnum =512の場合、出力は8 =5 + 1+2になります。 8 =5 + 1 + 2であるため、tputは8になります。これを解決するには、次の手順に従います- sum:=0 numは0と同じではありませんが、 sum:=sum +(num mod 10) num:=num/10の商 合計を返す 理解を深めるために、次の実装を見てみましょう- 例 class Solution: def solve(self, nu