目次
の中国語訳は次のとおりです:
ホームページ バックエンド開発 C++ 数値の階乗内の末尾のゼロの数を計算する C/C++ プログラム

数値の階乗内の末尾のゼロの数を計算する C/C++ プログラム

Aug 29, 2023 pm 12:29 PM
階乗 c/c++ 末尾のゼロ

ここでは、任意の数値の階乗結果の末尾の 0 の数を計算する方法を見ていきます。つまり、n = 5 の場合は 5 になります。 =120。末尾の 0 は 1 つだけです。 20! の場合、20! = 2432902008176640000 としてゼロが 4 つになります。

最も簡単な方法は、階乗を計算して 0 を計算することです。ただし、n の値が大きい場合、このアプローチは失敗します。そこで、別のアプローチをとってみます。素因数が 2 と 5 の場合、末尾にゼロが表示されます。 2と5を計算すると結果が得られます。これを行うには、このルールに従います。

Trailing 0 =階乗(n)素因数の5の数

数値の階乗内の末尾のゼロの数を計算する C/C++ プログラム

##アルゴリズム

countTrailingZeros(n)

begin
   count := 0
   for i := 5, (n/i) >= 1, increase i := i * 5, do
      count := count + (n / i)
   done
   return count;
end
ログイン後にコピー

Example

の中国語訳は次のとおりです:

Example

#include <iostream>
#include <cmath>
#define MAX 20
using namespace std;
int countTrailingZeros(int n) {
   int count = 0;
   for (int i = 5; n / i >= 1; i *= 5)
      count += n / i;
   return count;
}
main() {
   int n = 20;
   cout << "Number of trailing zeros: " << countTrailingZeros(n);
}
ログイン後にコピー

Output

Number of trailing zeros: 4
ログイン後にコピー

以上が数値の階乗内の末尾のゼロの数を計算する C/C++ プログラムの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

C言語でnの階乗を計算する方法 C言語でnの階乗を計算する方法 Jan 04, 2023 pm 03:18 PM

C 言語で n の階乗を計算する方法: 1. 「for (i = 1; i <= n; i++){fact *= i;}」などのコードを使用して、for ループを通じて階乗を計算します。 2. while ループで階乗を計算する、「while (i <= n){fact *= i;i++;}」などのコード; 3. 階乗を再帰的に計算する、「int Fact(int n){int res =」などのコードn;if (n > 1) 結果...」。

C プログラムの階乗プログラム C プログラムの階乗プログラム Sep 09, 2023 am 11:17 AM

shenumbernthetaskistoculateTheTetheTheEtheTheEfctorialofanumber.factorialofAnumberisculatedByMultiplyingTheNumberwithitssssSOReQualintegervalues -0!= 11!= 12!= 2x1 = 23!= 3x2x1 = 64!= 4x3x2x2x2x1 = 225 n-1

phpとc#の違いは何ですか phpとc#の違いは何ですか Jun 02, 2023 pm 01:45 PM

php と c# の違いは次のとおりです: 1. 言語の型システムが異なります。PHP は動的型ですが、C# は静的型です。 2. 使用されるプラットフォームが異なります。PHP はクロスプラットフォームを実現できますが、C# は Windows 専用です。 3. . プログラミングのパラダイムが異なり、PHP はオブジェクト指向、手続き型、関数型プログラミングをサポートし、C# はオブジェクト指向プログラミングに傾いている; 4. 実行速度が異なり、PHP の方が高速で、C# は比較的遅い; 5.アプリケーションのシナリオは異なります。PHP は Web 開発、サーバーなどに使用されます。C# は Windows デスクトップおよび Web アプリケーションに使用されます。

C/C++ では、構造体の sizeof が各メンバーの sizeof の合計と等しくないのはなぜですか? C/C++ では、構造体の sizeof が各メンバーの sizeof の合計と等しくないのはなぜですか? Aug 26, 2023 am 09:29 AM

sizeof() で取得される構造体型の要素のサイズは、個々のメンバーのサイズと必ずしも同じではありません。コンパイラは、アライメントの問題を回避するためにパディングを追加する場合があります。したがって、寸法が変更される可能性があります。パディングは、構造メンバーの後に大きいサイズのメンバーが続く場合、または構造の最後にある場合に追加されます。コンパイラが異なれば、アライメント制約のタイプも異なります。 C 標準では、全体的なアライメント構造は実装に依存します。ケース 1 この場合、double z の長さは 8 バイトであり、x (4 バイト) よりも大きくなります。したがって、さらに 4 バイトのパディングが追加されます。さらに、short 型データ y にはメモリ内に 2 バイトのスペースがあるため、余分な 6 バイトがパディングとして追加されます。サンプルコード #include<stdio.h>structmyS

Clang ツールを使用して C/C++ コード整形ツールを作成する Clang ツールを使用して C/C++ コード整形ツールを作成する Aug 26, 2023 pm 01:09 PM

このチュートリアルでは、helpofclangtools を使用して C/C++ コード形式設定ツールを作成するプログラムについて説明します。SETUPsudoaptinstallpythonsudoaptinstallclang-format-3.5 次に、現在のユーザーが読み取りおよび書き込み権限を持つ場所に Python ファイルを作成します。例 importoscpp_extensions=(".cxx",".cpp&

数値の階乗内の末尾のゼロの数を計算するための C/C++ プログラミング? 数値の階乗内の末尾のゼロの数を計算するための C/C++ プログラミング? Sep 20, 2023 pm 10:05 PM

階乗数の末尾のゼロの数を計算するには、その数値の因数に含まれる 2 と 5 の数を数えます。 2*5 は 10 に等しく、10 は階乗数の最後のゼロであるためです。例 7 の階乗 = 5040、最後の 0 の数は 1 です。ロジックによれば、7!=2*3*4*5*6*7 となり、2 が 3 つと 5 が 1 つあるため、最後の 0 の数は 1 になります。 #include<iostream>usingnamespacestd;intmain(){ intn=45; intcount=0; &nb

vscode 構成 C/C++ 実行環境について詳しく説明した記事 [乳母レベルの指導] vscode 構成 C/C++ 実行環境について詳しく説明した記事 [乳母レベルの指導] Feb 27, 2023 pm 07:33 PM

VScode で C/C++ を開発するにはどうすればよいですか? C/C++環境を構成するにはどうすればよいですか?次の記事では、VScode 構成 C/C++ 実行環境のチュートリアル (乳母レベルの指導) を紹介します。

C/C++ には、前置インクリメントと後置インクリメントの 2 つの操作があります。 C/C++ には、前置インクリメントと後置インクリメントの 2 つの操作があります。 Aug 25, 2023 pm 02:25 PM

ここでは、C または C++ におけるプリインクリメントとポストインクリメントとは何かを見てみましょう。前置インクリメントと後置インクリメントは両方ともインクリメント演算子です。しかし、それらの間にはほとんど違いはありません。前置インクリメント演算子は、まず変数の値をインクリメントしてから、それを他の変数に代入しますが、後置インクリメント演算子の場合は、まず変数に代入してから、値を増分します。例 #include<iostream>usingnamespacestd;main(){ intx,y,z; x=10; y=10;&nb

See all articles