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

C++でAの階乗がBの階乗を除算するときの最後の桁を見つけます


2つの整数AとBがあり、B> =Aの場合、Bの最後の桁を計算する必要があります。 / A! A=2およびB=4の場合、結果は2、2になります。 =2と4! =24なので、24/2=12です。最後の桁は2です。

階乗の最後の桁が集合{0、1、2、4、6}に含まれることがわかっているので、次の手順に従ってこの問題を解決します-

  • AとBの違いを見つけます
  • diff> =5の場合、答えは0です
  • それ以外の場合は、(A + 1)からBまで繰り返します。次に、それらを乗算して保存します。
  • 掛け算の最後の桁が答えになります。

#include<iostream>
using namespace std;
int findLastDigit(long long int A, long long int B) {
   int x = 1;
   if (A == B)
      return 1;
   else if ((B - A) >= 5)
      return 0;
   else {
      for (long long int i = A + 1; i <= B; i++)
         x = (x * (i % 10)) % 10;
      return x % 10;
   }
}
int main() {
   cout << "Last digit is: " << findLastDigit(2, 4);
}

出力

Last digit is: 2

  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. 階乗を見つけるためのC++プログラム

    非負の整数nの階乗は、n以下のすべての正の整数の積です。 例:5の階乗は120です。 5! = 5 * 4 * 3 * 2 *1 5! = 120 整数の階乗は、再帰プログラムまたは非再帰プログラムを使用して見つけることができます。これらの両方の例を以下に示します。 非再帰プログラムを使用した階乗 forループを使用して、数値の階乗を見つけることができます。これは、次のプログラムを使用して示されます- 例 #include <iostream> using namespace std; int main() {    int n = 5, fact = 1