- ベストアンサー
計算処理に関して
始めと終わりの値を入力して その間の整数値を加算し 合計を表示できる プログラムを できるけ簡単に 使う関数は少なくできないでしょうか? 宜しくお願い致します。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
実際には、もう少しエラーチェックをちゃんとしないといけませんけど #include <stdio.h> void main(void){ long start, end, sum, i; char inpBuff[80]; redo: printf("\n開始の数字を入力して下さい>"); fgets(inpBuff,80,stdin); sscanf(inpBuff,"%ld",&start); printf("\n終了の数字を入力して下さい>"); fgets(inpBuff,80,stdin); sscanf(inpBuff,"%ld",&end); if(start>end){ printf("\n入力された数値の範囲がおかしいです!\n"); goto redo; } for(sum=0L,i=start;i<=end;i++) sum+=i; printf("和は、%ldです\n",sum); }
その他の回答 (1)
- sha-girl
- ベストアンサー率52% (430/816)
回答No.1
等差数列の和の事でしょうか? 10、11、12、13、14の合計みたいな? 5 * (10 + 14) / 2 (項数) * (初項 + 末項) / 2 int fnc(int a1,int aL) { return ( aL - a1 + 1 ) * ( a1 + aL ) / 2; } int main() { int sum = fnc(10,14); }