【掲示板ご利用上の注意】

 ※題名は具体的に!
 ※学校の課題の丸投げ禁止!
 ※ソースの添付は「HTML変換ツール」で字下げ!
 ※返信の引用は最小限に!
 ※環境(OSとコンパイラ)や症状は具体的に詳しく!
 ※マルチポスト(多重投稿)は謹んで!

 詳しくはこちら



 本当はこんなに大きく書きたくはないのですが、なかなか守っていただけなくて…。
 守ってくださいね。お願いします。(by管理人)

C言語ソース⇒HTML形式ツール   掲示板2こちら


管理者用メニュー    ツリーに戻る    携帯用URL    ホームページ    ログ    タグ一覧

No.19683

while文にかえたい
投稿者---tom(2005/02/01 14:55:41)


#include<stdio.h>
int main(void)
{
int i,j,a[10],k;
int box[3][3];

for(i=1;i<=9;i++){
a[i]=i;
printf("数値を九つ入力せよ");
scanf("%3d",&a[i]);
}
printf("\n");
k=1;
for(i=0;i<3;i++){
for(j=0;j<3;j++){
box[i][j]=a[k];
k++;
printf("%3d",box[i][j]);
}
printf("\n");
}
return 0;
}
このプログラムをwhile文に変えるにはどうしたらいいですか?


この投稿にコメントする

削除パスワード

発言に関する情報 題名 投稿番号 投稿者名 投稿日時
<子記事> Re:while文にかえたい 19684 επιστημη 2005/02/01 15:08:41
<子記事> Re:while文にかえたい 19695 おでん 2005/02/01 23:11:31


No.19684

Re:while文にかえたい
投稿者---επιστημη(2005/02/01 15:08:41)


>このプログラムをwhile文に変えるにはどうしたらいいですか?

どこを?

for ( A; B; C ) { ... } は、

A;
while ( B ) {
 ...
 C;
}

に置き換えられます。



この投稿にコメントする

削除パスワード

No.19690

Re:while文にかえたい
投稿者---tom(2005/02/01 15:26:18)


やっぱり質問変えて、このプログラムは面倒くさいやり方でやってるんですけど、もっとスマートにできないですか?



この投稿にコメントする

削除パスワード

No.19693

Re:while文にかえたい
投稿者---επιστημη(2005/02/01 15:44:53)


> やっぱり質問変えて

不快です。

> このプログラムは面倒くさいやり方でやってるんですけど、もっとスマートにできないですか?

どこがどう面倒くさいのですか?
どうなればスマートですか?



この投稿にコメントする

削除パスワード

No.19696

Re:while文にかえたい
投稿者---nop(2005/02/01 23:45:43)


>やっぱり質問変えて、このプログラムは面倒くさいやり方でやってるんですけど、もっとスマートにできないですか?

スマートに考えればスマートになるのでは?
そもそも、プログラムは同じ動作をするものでも、
10人居れば10通りのプログラムができる、
と言う程、考え方を変えるだけで色々な書き方が出来ます。

「面倒くさいやり方」であることが判っているのなら、
「スマートなやり方」も判るのでは無いですか?

難しい方法と簡単な方法があった場合、
難しい方法が判れば簡単な方法も判りますよね?


参考までに、私なら以下のように書くかな。
# なお、コンパイルもしてないのでコンパイル通るか判りません。(^^;
# 雰囲気だけ書いてみた。(※そのまま使われないようにって事で。)


#include  <stdio.h>

int  main( void )
{
    int  iBox[3][3] = {0};
    int  i;

    printf( "数値を九つ入力せよ\n" );

    for( i=0; i<9; i++ )
    {
        printf( "%d>", 1+i );
        scanf( "%d", &(iBox[i/3][i%3]) );
    }
    for( i=0; i<9; i++ )
    {
        printf( "%d", &(iBox[i/3][i%3]) );
        if( i%3==2 ) putchar('\n');
    }
    return 0;
}



この投稿にコメントする

削除パスワード

No.19697

Re:while文にかえたい
投稿者---通りすがり(2005/02/02 00:06:43)


>やっぱり質問変えて、このプログラムは面倒くさいやり方でやってるんですけど、もっとスマートにできないですか?

何がやっぱりなんですか? 最初からそれが目的だったように読み取れますけど。
これはただの丸投げにしか見えません。あなたの言うスマートってなんですか?


この投稿にコメントする

削除パスワード

No.19695

Re:while文にかえたい
投稿者---おでん(2005/02/01 23:11:31)


ちゃんと字下げしましょう。

#include<stdio.h>
int main(void){
    int i,j,a[10],k;
    int box[3][3];

    for(i=1;i<=9;i++){ ←1からはじまっているのはなぜ?
        a[i]=i; ← iを入れてるのはなぜ?
        printf("数値を九つ入力せよ");← 9回表示させているのはなぜ?

        scanf("%3d",&a[i]);
    }
    printf("\n");
    k=1;
    for(i=0;i<3;i++){
        for(j=0;j<3;j++){
            box[i][j]=a[k];
            k++;
            printf("%3d",box[i][j]); 
        }
        printf("\n");
    } 
    return 0;
}




この投稿にコメントする

削除パスワード

管理者用メニュー    ツリーに戻る    携帯用URL    ホームページ    ログ    タグ一覧