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

与えられた数の累乗を計算するCプログラム


底と指数の2つの整数をユーザーから取得し、以下で説明するように累乗を計算します。

Cプログラムを作成するには、次のことを考慮してください。

  • ベース=3と仮定します
  • 指数=4
  • 電力=3* 3 * 3 * 3

アルゴリズム

以下に示すアルゴリズムに従ってください-

Step 1: Declare int and long variables.
Step 2: Enter base value through console.
Step 3: Enter exponent value through console.
Step 4: While loop.
Exponent !=0
   i. Value *=base
   ii. –exponent
Step 5: Print the result.

次のプログラムは、C言語で与えられた数の累乗を計算する方法を説明しています。

#include<stdio.h>
int main(){
   int base, exponent;
   long value = 1;
   printf("Enter a base value:\n ");
   scanf("%d", &base);
   printf("Enter an exponent value: ");
   scanf("%d", &exponent);
   while (exponent != 0){
      value *= base;
      --exponent;
   }
   printf("result = %ld", value);
   return 0;
}

出力

上記のプログラムを実行すると、次の結果が得られます-

Run 1:
Enter a base value:
5
Enter an exponent value: 4
result = 625
Run 2:
Enter a base value:
8
Enter an exponent value: 3
result = 512

実数の累乗を求めたい場合は、math.hにある事前定義された関数であるpow関数を使用できます。

#include<math.h>
#include<stdio.h>
int main() {
   double base, exponent, value;
   printf("Enter a base value: ");
   scanf("%lf", &base);
   printf("Enter an exponent value: ");
   scanf("%lf", &exponent);
   // calculates the power
   value = pow(base, exponent);
   printf("%.1lf^%.1lf = %.2lf", base, exponent, value);
   return 0;
}

出力

上記のプログラムを実行すると、次の結果が得られます-

Enter a base value: 3.4
Enter an exponent value: 2.3
3.4^2.3 = 16.69

  1. 与えられた数を単語に変換するCプログラム

    数値で構成される文字列が与えられた場合、タスクはそれらの与えられた数値を単語で隠すことです。 入力「361​​」があるように。その場合、出力は「三百六十一」という言葉である必要があります。次の問題を解決するには、1、数万、数千などの数と場所を覚えておく必要があります。 コードは最大4桁の数字、つまり0〜9999のみをサポートします。したがって、入力は0〜9999である必要があります。 場所が-のようになるように1,111を考えてみましょう 例 Input: “1234” Output: one thousand two hundred thirty four

  2. 与えられた数がdの累乗であるかどうかを確認します。ここで、Pythonではdは2の累乗です。

    数値nと別の値xがあるとすると、それがxの累乗であるかどうかを確認する必要があります。ここで、xは2の累乗です。 したがって、入力がn =32768 x =32の場合、nはx ^ 3であるため、出力はTrueになります。 これを解決するには、次の手順に従います- メインの方法から次のようにします- cnt:=0 nが0でなく、(n AND(n --1))が0と同じである場合、 1の場合、do n =n / 2 cnt:=cnt + 1 return cnt mod(log c base 2)は0と同じです Falseを返す 例 理解を深めるために、次の実装