はじめに
どうも! みなため(@MinatameT)です。
この記事では、pow関数を使わずに累乗の計算をする方法を説明します。それは、繰り返し文(for文)を使う方法です。
文法
文法for(L=1; L<x; L=L+1)
{
b = a*b;
}
※xは指数の値(何乗するか)、bは累乗計算の結果(初期値はaと同じ値にしてください。)、aは累乗計算したい値です。
{
b = a*b;
}
※xは指数の値(何乗するか)、bは累乗計算の結果(初期値はaと同じ値にしてください。)、aは累乗計算したい値です。
使用例は、以下のソースコードを見てください。
使用例1
ソースコード
#include<stdio.h>
int main(void)
{
float a,b;
int L;
a = b = 2; //2の
for(L=1; L<3; L=L+1) //3乗
{
b = a*b;
}
printf("%lf",b);
return(0);
}
「a = b = 2;」というのは、「a = 2;」と「b = 2;」を1行でまとめて書いているものです。
実行結果
8.000000
aとbは同じ初期値にしてください。Lはループ用の変数で、for文で初期値を与えています。
2の3乗を計算したので、実行結果は8で正解です。なお、float型なので小数の計算にも対応しています。
次に、数字の一部を変えて実行してみます。
使用例2
ソースコード
#include<stdio.h>
int main(void)
{
float a,b;
int L;
a = b = 4; //4の
for(L=1; L<3; L=L+1) //3乗
{
b = a*b;
}
printf("%lf",b);
return(0);
}
「a = b = 4;」というのは、「a = 4;」と「b = 4;」を1行でまとめて書いているものです。
実行結果
64.000000
aとbは同じ初期値にしてください。Lはループ用の変数で、for文で初期値を与えています。
今回は4の3乗を計算しましたから、64が出力されました。
pow関数を使ったほうが簡単ですが、「このような方法もある」ということを覚えておいて損はありません。
なお、pow関数を使う方法は以下の記事で説明しています。
今回はここまでです。皆さん、お疲れ様でした。