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

C++でチェス盤の正方形の数を見つけるプログラム


この問題では、チェス盤のサイズが与えられます。私たちのタスクは、C++でチェス盤の正方形の数を見つけるプログラムを作成することです。

問題の説明 −チェス盤の正方形の数を見つけるため。チェス盤の内側にある正方形のすべての組み合わせを計算する必要があります。つまり、辺1x1、2x2、3x3…nxnの正方形を検討します。

問題を理解するために例を見てみましょう

入力: n=4。

C++でチェス盤の正方形の数を見つけるプログラム

出力 :30

Squares of size 1x1 -> 16
Squares of size 2x2 -> 9
Squares of size 3x3 -> 4
Squares of size 4x4 -> 1
Total number of squares = 16+9+4+1 = 30

ソリューションアプローチ:

A simple approach is by using the sum formula for nxn grid.
Let’s deduct the general formula for the sum,
sum(1) = 1
sum(2) = 1 + 4 = 5
sum(3) = 1 + 4 + 9 = 14
sum(4) = 1 + 4 + 9 + 16 = 30
The sum is can be generalised as
sum = 12 + 22 + 32 + 42 + … n2
sum = ( (n*(n+1)*((2*n) + 1))/6 )

#include <iostream>
using namespace std;
int calcSquaresCount(int n){
   int squareCount = ( (n * (n+1) * (2*n + 1))/6 );
   return squareCount;
}
int main() {
   int n = 6;
   cout<<"The total number of squares of size "<<n<<"X"<<n<<" is
   "<<calcSquaresCount(n);
}

出力:

The total number of squares of size 6X6 is 91

  1. LCMを見つけるためのC++プログラム

    2つの数値の最小公倍数(LCM)は、両方の倍数である最小公倍数です。 例:15と9の2つの数字があるとします。 15 = 5 * 3 9 = 3 * 3 したがって、15と9のLCMは45です。 2つの数値のLCMを見つけるプログラムは次のとおりです- 例 #include <iostream> using namespace std; int main() {    int a=7, b=5, lcm;    if(a>b)    lcm = a;    else    

  2. GCDを見つけるためのC++プログラム

    2つの数値の最大公約数(GCD)は、両方を除算する最大の数値です。 例:45と27の2つの数字があるとします。 45 = 5 * 3 * 3 27 = 3 * 3 * 3 したがって、45と27のGCDは9です。 2つの数値のGCDを見つけるプログラムは次のとおりです。 例 #include <iostream> using namespace std; int gcd(int a, int b) {    if (b == 0)    return a;    return gcd(b, a % b); } int