

c言語で
2つの整数を読み込んで小さいほうの数以上で大きいほうの数以下の整数をすべて加えた値を表示するプログラム
で最後の表示の仕方がわかりません。
実行結果は
整数1:37
整数2:28
28以上37以下の全整数は325です。と表示されるはずです。
この表示の3行目の28と37の表示がどうやればよいのかわかりません。
#include <stdio.h>
int main(void)
{
int a, b;
int sum=0;
printf("整数1:");scanf("%d",&a);
printf("整数2:");scanf("%d",&b);
if(a>b)
do{
sum=sum+b;
b=b+1;
}while(b<=a);
else
do{
sum=sum+a;
a=a+1;
}while(a<=b);
printf("%d以上%d以下の全整数の和は%dです。",a,b,sum);
return(0);
}
全整数の表示はできます。
do文の中でa=cとかにしてやってみましたが、うまくいきませんでした。
お願いします。
No.1ベストアンサー
- 回答日時:
別の変数がいるでしょ、、
int i, a, b, sum;
a = 28;
b = 37;
sum = 0;
if ( a < b ) {
for ( i = a; i <= b; i++ ) {
sum += i;
}
} else {
for ( i = b; i <= a; i++ ) {
sum += i;
}
}
printf("%d と %d の全整数の和は %d です", a, b, i);
No.4
- 回答日時:
1+2+…+n=n*(n+1)/2ですから、
a<bとおいて、a+(a+1)+…+(b-1)+b=(b-a+1)*(a+b)/2
で一発で計算させるとか。
で、a>bのときは、bとaを交換するだけで済みます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
配列を使って魔方陣
-
#if 1 #elseの意味について
-
構文エラー";"が型の前にあり...
-
C言語 数字以外を入力させない...
-
計算結果がlong型以上になる場...
-
scanf関数を用いての加減乗除%...
-
c言語 プログラム
-
for文の中にswitch文はいれられ...
-
配列を関数に渡す方法
-
階乗のプログラム!!
-
C言語です
-
scanfが実行されません
-
C言語 マスターマインドゲーム...
-
2÷3などの余りについて
-
Enterキーを押されたら次の処理...
-
「Aに対するBの割合」と「Aに対...
-
Aの値からBの値を除するとは??
-
「指定されたキャストは有効で...
-
visualstudio C# テキストボッ...
-
マイナスからプラスへ転じた時...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
構文エラー";"が型の前にあり...
-
#if 1 #elseの意味について
-
for文の中にswitch文はいれられ...
-
配列を関数に渡す方法
-
プログラム
-
C言語の二分法のプログラムにつ...
-
C言語階乗の総和を求める
-
C言語です
-
初心者です。for文、if文を使っ...
-
C言語 数字以外を入力させない...
-
配列を使って魔方陣
-
C言語で電卓を作成する。
-
C言語初心者です。次の問題で質...
-
scanfが実行されません
-
getcの改行判定
-
直角三角形を表示するプログラム
-
C言語 マスターマインドゲーム...
-
while文について、c言語...
-
C言語のwhile文を使った素数判...
-
行列をべき乗させるプログラム
おすすめ情報