5の倍数の和について教えてください。

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
pu

5の倍数の和について教えてください。

#1

投稿記事 by pu » 16年前

みなさん。お世話になります。
C言語の勉強を始めてみたのですが、とにかくループ処理で引っかかってます。

5の倍数の和をもとめたいのですが(範囲は5以上150以下です)
以下の方法は全く違っていますか?

#include <stdio.h>
int main(void){

int input,n,sum

sum=0;
for(input=5;input<=150;input++){
if((input%3)==0 sum=sum+input);

}
printf("5の倍数の和は%dです\n",sum);

ritrun(0);

}

チンプンカンプンの内容でしたらごめんなさい。
どうかよろしくお願いします。

box

Re:5の倍数の和について教えてください。

#2

投稿記事 by box » 16年前

とりあえず、コンパイルエラーが出ないようにすることから始めましょう。
それから、「5の倍数の和」なのに

>(input%3)==0

これは明らかにおかしいですね。

pu

Re:5の倍数の和について教えてください。

#3

投稿記事 by pu » 16年前

ごめんなさい。

(input%5)==0

の 間違いです。

box

Re:5の倍数の和について教えてください。

#4

投稿記事 by box » 16年前

>     int input,n,sum

文の最後にはセミコロンが必要です。

>     for(input=5;input<=150;input++){
>     if((input%3)==0 sum=sum+input);

inputを1ずつ増やしていくよりも、5ずつ増やしていけば、
5で割り切れるかどうかのチェックが不要になります。

>     ritrun(0);

スペルが違っています。return です。

ビギナー

Re:5の倍数の和について教えてください。

#5

投稿記事 by ビギナー » 16年前

int input,n,sum

セミコロン「;」が抜けています。

if文ですが

if(input%5==0)
   sum=sum+input;
カッコは1つあれば十分な気もします。


ritrun(0);

return(0);ですね。


150までの確認はしてないので、合ってるかどうかは定かではないですが、
まずはコンパイルできるものを貼ることをオススメします。

//下記は追記です

ハッカーさんと投稿時間と内容ががほぼかぶってしまいました。
すみません。

pu

Re:5の倍数の和について教えてください。

#6

投稿記事 by pu » 16年前

> int input,n,sum

→  int input,n,sum;

文の最後にはカンマが必要です。

> for(input=5;input<=150;input++){
> if((input%3)==0 sum=sum+input);

→ for(input=5;input<=150;input=input+5){
sum=sum+input;

inputを1ずつ増やしていくよりも、5ずつ増やしていけば、
5で割り切れるかどうかのチェックが不要になります。

> ritrun(0);

→ return(0)

と いう感じでよろしいのでしょうか?

pu

Re:5の倍数の和について教えてください。

#7

投稿記事 by pu » 16年前

自分で考えておきながら・・・

#include <stdio.h>
int main(void){

int input,n,sum

scanf("%d\n",input);

for(input=5;input<=150;input=input+5){
sum=sum+i

......

などとすると 変数nはなんであるのか?いらないですか?

kazuoni

Re:5の倍数の和について教えてください。

#8

投稿記事 by kazuoni » 16年前

>sum=sum+i

sum=sum+input

の記述ミスですか?

>変数nはなんであるのか?いらないですか?
上述のコードでは使っていないので、不要ですね。

>ビギナーさん
>ハッカーさんと投稿時間と内容ががほぼかぶってしまいました。
boxさんですよ^^;
ハッカーは昇進状態によるものです。

#ハッカーの称号を持つ御三方はたまにハッカーさんと間違われますね^^;

pu

Re:5の倍数の和について教えてください。

#9

投稿記事 by pu » 16年前

上記投稿に名前が未入力でした。
すみません<(_ _)>

pu

Re:5の倍数の和について教えてください。

#10

投稿記事 by pu » 16年前

あの~何度もすみません。

#include <stdio.h>
int main(void){

int input,n,sum

sum=0;
scanf(%d",&input);
for(n=5;n<=150;n=n+5){
sum=sum+n;

}
printf("5の倍数の和は%dです\n",sum);

return(0);
}

では だめでしょうか?

kazuoni

Re:5の倍数の和について教えてください。

#11

投稿記事 by kazuoni » 16年前

>scanf(%d",&input);

これはただ標準入力から読み込むだけで、
変数inputは一度も使っていないようなので、
>int input;
>scanf(%d",&input);
の二つは必要ありません。

pu

Re:5の倍数の和について教えてください。

#12

投稿記事 by pu » 16年前

今度こそ?
だめでしょうか?

#include <stdio.h>
int main(void){

int input,n,sum;

scanf("%d",&input);
for(n=5;n<=150;n=n+5){
sum=sum+n;

}
printf("5の倍数の和は%dです\n",sum);

return(0);
}

pu

Re:5の倍数の和について教えてください。

#13

投稿記事 by pu » 16年前

みなさんに大変お世話になっておりますが、
もう 頭がもうろうとしてきました。

頭ひやして 再度考えてみます。

遅くまでありがとうございました。

kazuoni

Re:5の倍数の和について教えてください。

#14

投稿記事 by kazuoni » 16年前

コードを載せる際はプレタグを使用してください。

>今度こそ?
>だめでしょうか?

No:33824はご覧になりましたか?

また、No:33825のコードでは、
sum+=sum+n;
の一回目でプログラムが止まるまたは結果がおかしな値になるはずです。
理由はsumの初期化ができおらず、
sum=不定値+n

としているからです。
sumを0で初期化またはfor文の前で0を代入してください。


ちなみにですが、コンパイル・実行していますか?
百聞は一見にしかずってことで一度実行してみてはいかがですか?
無償でVC++などがあります。

pu

Re:5の倍数の和について教えてください。

#15

投稿記事 by pu » 16年前

みなさんにいただいたヒントから
再度考えてみます。

本当にありがとうございました。

lbfuvab

Re:5の倍数の和について教えてください。

#16

投稿記事 by lbfuvab » 16年前

反則かもしれませんが、
1~30までの数値の和を5倍しては駄目なのでしょうか?

やそ

Re:5の倍数の和について教えてください。

#17

投稿記事 by やそ » 16年前

lbfuvab さんの
>反則かもしれませんが、
>1~30までの数値の和を5倍しては駄目なのでしょうか?

は、答えが欲しいだけならアリ。
規則性をもった繰り返しや+=を利用した足しこみなどの練習が主題であればナシ。
ですよね。

まあ、頭をクールダウンして考えてみるとのことですので、
次の答えを待ちましょう^^

閉鎖

“C言語何でも質問掲示板” へ戻る