ページ 11

〇と☓を表示

Posted: 2013年1月30日(水) 21:17
by nnshjm
初心者な質問ですみません。
入力した数値の列だけ、〇と☓を縦に、段々になるように表示するプログラムを作りたいです。

実行例:

〇と☓を表示します。何列?:10

             ☓
          〇☓
          ☓〇☓
         〇☓〇☓
       ☓〇☓〇☓
    〇☓〇☓〇☓
     ☓〇☓〇☓〇☓
   〇☓〇☓〇☓〇☓
 ☓〇☓〇☓〇☓〇☓
〇☓〇☓〇☓〇☓〇☓


他力本願で申し訳ないのですが、わかる方はプログラムしていただけるとありがたいです。
よろしくお願いします。

Re: 〇と☓を表示

Posted: 2013年1月30日(水) 21:19
by みけCAT
フォーラムルールをお読みください。
課題なら、丸投げは禁止です。

こんな感じの出力でいいですか?

コード:

(princ "○と×を表示します。何列?:")
(setq n (read))
(setq i 0)
(loop
	(if (= i n) (return 0))
	(if (> i n) (return 0))
	(setq j 0)
	(loop
		(if (= j n) (return 0))
		(if (> j n) (return 0))
		(if (< j (- n i 1))
			(princ " ")
			(princ (if (= (* (truncate (/ j 2)) 2) j) "○" "×"))
		)
		(setq j (+ j 1))
	)
	(princ #\LineFeed)
	(setq i (+ i 1))
)

コード:

○と×を表示します。何列?:10
         ×
        ○×
       ×○×
      ○×○×
     ×○×○×
    ○×○×○×
   ×○×○×○×
  ○×○×○×○×
 ×○×○×○×○×
○×○×○×○×○×

コード:

○と×を表示します。何列?:9
        ○
       ×○
      ○×○
     ×○×○
    ○×○×○
   ×○×○×○
  ○×○×○×○
 ×○×○×○×○
○×○×○×○×○

Re: 〇と☓を表示

Posted: 2013年1月30日(水) 21:56
by box

コード:

#include <stdio.h>

int main(void)
{
    int x, y, n;

    do {
        printf("○と×を出力します。何段ですか? > "), scanf("%d", &n);
    } while (n <= 0);

    for (y = n - 1; y >= 0; y--) {
        for (x = 0; x < n; x++) {
            printf((y <= x) ? ((x % 2) ? "×" : "○") : "  ");
        }
        putchar('\n');
    }
    return 0;
}

Re: 〇と☓を表示

Posted: 2013年1月30日(水) 22:07
by asd
丸投げの上にマルチポストですか。
http://detail.chiebukuro.yahoo.co.jp/qa ... 2101166522

Re: 〇と☓を表示

Posted: 2013年1月30日(水) 22:37
by nnshjm
ありがとうございます。
丸投げしてしまい申し訳ありません・・・
ありがとうございました。参考にさせていただきます。