
C言語の問題です
1!からn!までの合計値を求めるnの範囲は(1以上10以下)
5を入力した場合153
このような問題で階乗を求めるプログラムはできたのですが総和を求めることができないので修正方法を教えてほしいです。
#include
int main
{
int n,sum=1,i;
printf("1以上10以下の整数を入力してください\n")
scanf("%d,&n);
if(n<1II n>10)
{
return 1;
}
i=1;
while(i<=n)
{
sum *= i;
i++;
}
printf("%d\n",sum)
return 0;
}
実行結果は5を入力したら120になってしまいます
A 回答 (2件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
No.1
- 回答日時:
この問題で求めるのは、1!からn!までの合計値です。
つまり、1! + 2! + 3! + ... + n!を求める必要があります。修正するためには、以下のように変更することができます。
#include <stdio.h>
int main()
{
int n, sum = 0, i, fact = 1;
printf("1以上10以下の整数を入力してください\n");
scanf("%d", &n);
if(n < 1 || n > 10)
{
return 1;
}
for(i = 1; i <= n; i++)
{
fact *= i;
sum += fact;
}
printf("%d\n", sum);
return 0;
}
この修正したプログラムでは、forループを使って1からnまでの各数の階乗を求め、それらを合計しています。初期値としてsumを0に設定しています。また、各数の階乗は変数factに保存しています。最初にfactを1に設定し、ループ内でiを掛け合わせることで、各数の階乗を計算しています。
また、if文の条件式で、論理和(||)を使うべきところで、論理積(&&)を使ってしまっていました。修正したプログラムでは、条件式を正しく修正しています。
この修正後のプログラムを実行すると、5を入力した場合に153が出力されます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- C言語・C++・C# C言語 3 2022/10/04 15:07
- C言語・C++・C# C言語のエラーについて 2 2022/07/11 13:56
- C言語・C++・C# 至急教えてください!プログラミングの問題です。 割られる整数と割る整数を受け取って、商と余りを出力す 3 2022/07/05 10:23
- C言語・C++・C# 至急教えてください。プログラミングの問題です。 最初に正の整数nの入力を受け付け、次に分数の分子と分 1 2022/07/19 17:03
- C言語・C++・C# 至急お願いします。プログラミングの問題です。 最初に正の整数nの入力を受け付け、次に分数の分子と分母 3 2022/07/19 17:09
- C言語・C++・C# c言語の問題です 3 2023/01/10 16:15
- C言語・C++・C# 至急教えてください。プログラミングの問題です。 malloc関数を使ってください!お願いします! 最 1 2022/07/21 09:28
- C言語・C++・C# C言語: ポインタ 5 2022/06/01 08:33
- C言語・C++・C# C言語 プログラミング 4 2022/05/22 11:53
- C言語・C++・C# c言語の問題の説明、各所ごとに 5 2023/07/26 11:03
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
プログラミングについて。 1つ...
-
gccを行ってもexeファイルが生...
-
c言語
-
visual studio 2022でのC#プロ...
-
C# DatagridviewにExcelシート...
-
mallocについて
-
C言語って古いですか?
-
C言語関数違いについて。
-
逆コンパイルと逆アセンブルの...
-
プログラムの実行時に'<'でリダ...
-
パソコン
-
CPUが16bitでも32bitOSでコンパ...
-
Python、プログラミングについ...
-
だれがとけるの?
-
バッチファイルで以下のような...
-
Notepad++の関数リスト表示の変...
-
VisualStudio2022でC言語プログ...
-
License='MIT' ってなんでmitな...
-
C言語 ストリームについて。
-
c言語でイベントフラグを使った...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
c言語
-
gccを行ってもexeファイルが生...
-
大量のデータを読み込んで表示...
-
visual studio 2022でのC#プロ...
-
C++でデスクトップGUIアプリ開...
-
【C言語】全角文字の配列を、全...
-
Windows Formアプリからコンソ...
-
VisualStudio2022でC言語プログ...
-
C#でログファイルにファイルパ...
-
C#でTreeViewのCheckBoxのサイ...
-
c#のTLS1.2での通信について
-
VisualStudioでC++クラスを追加...
-
C言語について。
-
int16_t の _t は何?
-
プログラマー達は何故、プログ...
-
逆コンパイルと逆アセンブルの...
-
C言語の関数のextern宣言
-
c言語でイベントフラグを使った...
-
C言語 関数、変数の宣言について
-
[C言語]fputsとfprintfの違い
おすすめ情報