質問: yPosition + 10; for(int j=0; j<10; j++){ if(i
回答: > > 図3のように、3色以上および3種類以上の文字を用いて13x13個の文字を出力するプログラムを作成せよ。 > > なお、図において使用している文字は「★」、「◆」、「♪」である。 > > > まずは「決まった法則で順番に文字を出力する」という点に着目してみましょうか。 提示されているイメージでは先頭2行は下記のようになっています。 ``` 1 4 7 10 13 ★◆♪★◆♪★◆♪★◆♪★ ◆♪★◆♪★◆♪★◆♪★◆ ``` ↑これより、「★◆♪」という文字列に含まれる文字が規則的に出力されていることが分かります。 「n文字目に出力される文字はxである」 -- 命題1 ↑この命題に対して、xの求め方は分かりますか? 「★」が出力されるのは、1文字目、4文字目、7文字目... というようになりますね。 ここに規則性は見出せませんか? 13文字目を出力したら改行し、引き続き同じ規則に従って出力文字を変えていきます。 次に、文字色について。 提示されているイメージでは、出力される文字色にも法則があるようです。 ``` 1 2 3 4 5 青赤赤緑青青赤赤緑青青赤赤 青赤赤緑青青赤赤緑青青赤赤 ``` 行頭から数えて何文字目か、によって出力される文字色に規則性は見出せませんか? 「行頭からm文字目に出力される文字の文字色はyである」 -- 命題2 > > ●繰り返し処理を用いての文字列を表示するプログラム > > > 繰り返し処理を用いる、ということについてはすでに学習済みのようです。 ・現在の文字が処理開始から何番目の出力か? ・現在の文字が行頭から何番目の出力か? ↑これについては、学習済みの内容から判定できそうですね。 > > ●条件分岐処理を用いての文字列を表示するプログラム > > > ↑命題1、命題2の判定もここからの応用でできそうです。