Edited at

[C言語] 1からnまでの和、nの階乗

More than 3 years have passed since last update.

GitHubにも公開中。


正の整数nを入力し、$1$〜$n$までの和、$1^{3/2}$ 〜$n^{3/2}$までの和、$n!$を求める。

#include <stdio.h>

#include <math.h>

int main(void) {
double n, i, sum1, sum2, factorial;

printf("n = ");
scanf("%lf", &n);

factorial = 1;

for (i=1; i<=n; i++) {
sum1 += i;
sum2 += pow(i, 3./2.);
factorial *= i;
}

printf("%f %f %f\n", sum1, sum2, factorial);

return 0;
}

$n^{3/2}$をpow(n, 3/2)のようには書けなかったから、$\frac{2}{2}$乗×$\frac{1}{2}$乗とした。

[追記]

i * sqrt(i) としていたのを、コメントでの指摘通り pow(i, 3./2.) に修正。