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

C ++を使用して、N階乗の合計の最後の2桁を検索します。


ここでは、最後の2桁を取得する方法を説明します。 N階乗の合計の単位桁と10桁。したがって、N =4の場合、1になります。 + 2! + 3! + 4! =33.したがって、単位の場所は3で、10の場所は3です。結果は33になります。

これをはっきりと見ると、N> 5の階乗であるため、単位の場所は0であるため、5を超えると、単位の場所の変更には寄与しません。そして、N> 10の後、10の場所は0のままになります。N=10以上の場合、00になります。階乗数のN=1から10のグラフを作成できます。

C ++を使用して、N階乗の合計の最後の2桁を検索します。

これらの手順を使用してこの問題を解決できます-

  • nの値が10未満の場合、(1!+ 2!+…+ n!)mod 10
  • それ以外の場合、nの値が10以上の場合、(1!+ 2!+…+ 10!)mod 10 =13

#include<iostream>
#include<cmath>
using namespace std;
int getTenAndUnitPlace(long long N) {
   if (N <= 10) {
      long long ans = 0, factorial = 1;
      for (int i = 1; i <= N; i++) {
         factorial = factorial * i;
         ans += factorial;
      }
      return ans % 100;
   }
   return 13;
}
int main() {
   for(long long i = 1; i<15; i++){
      cout << "Ten and Unit place value of sum of factorials when N = "<<i<<" is: " <<getTenAndUnitPlace(i) << endl;
   }
}

出力

Ten and Unit place value of sum of factorials when N = 1 is: 1
Ten and Unit place value of sum of factorials when N = 2 is: 3
Ten and Unit place value of sum of factorials when N = 3 is: 9
Ten and Unit place value of sum of factorials when N = 4 is: 33
Ten and Unit place value of sum of factorials when N = 5 is: 53
Ten and Unit place value of sum of factorials when N = 6 is: 73
Ten and Unit place value of sum of factorials when N = 7 is: 13
Ten and Unit place value of sum of factorials when N = 8 is: 33
Ten and Unit place value of sum of factorials when N = 9 is: 13
Ten and Unit place value of sum of factorials when N = 10 is: 13
Ten and Unit place value of sum of factorials when N = 11 is: 13
Ten and Unit place value of sum of factorials when N = 12 is: 13
Ten and Unit place value of sum of factorials when N = 13 is: 13
Ten and Unit place value of sum of factorials when N = 14 is: 13

  1. C ++を使用して、N階乗の合計の単位桁を求めます。

    5の階乗として、単位の場所は0であるため、5を超えると、単位の場所の変更には寄与しません。 N =4以上の場合は3になります。単位の場所のグラフを作成し、それをプログラムで使用します。 例 #include<iostream> #include<cmath> using namespace std; double getUnitPlace(int n) {    int placeVal[5] = {-1, 1, 3, 9, 3};    if(n > 4){       n = 4; &

  2. Pythonを使用して基数Kの桁の合計を見つけるプログラム

    10進数システム(基数10)に数値nがあり、別の値kがあるとすると、与えられた数値nを基数10から基数kに変換した後、nの桁の合計を求める必要があります。桁の合計を計算するときは、各桁を10進数(基数10)と見なします。 したがって、入力がn =985 k =8の場合、8進数の985は1731であるため、出力は12になります。したがって、桁の合計は1 + 7 + 3 + 1=12になります。 これを解決するには、次の手順に従います- ans:=0 =kの場合、実行 ans:=ans + n mod k n:=n/kの商 ans:=ans + n