技術・家庭
中学生
解決済み

明日テストなんですけど、わかる方教えてください!!

1)命令を組み合わせて、目的にあわせたプログラムをかけるようにしておこう ○命令は、以下のように簡略化したものを使用します Xのお出 最初には必ずつけましょう 最後には必ずつけましょう )秒 ) の秒) .. )秒 ) )秒】 【終 【直進 【右旋 【左旋回 今回のテストでは、1秒で2cm進むものとします 今回のテストでは、1秒で2cm後進するものとします 今回のテストでは、1秒で30度回転するものとします 今回のテストでは、1秒で30度回転するものとします ※この条件は、テストにも書いておくので、覚える必要はありません。 く問題例 1> ○スタートから直進して、 ロボットの進んだ跡が、一辺20cmの正方形になり、スタート地点 まで戻ってくるプログラムをつくりなさい。 くちなみに。 課題としてみんなで取り 組んだ『課題1~3』 と じような動きをさせる プログラムを問題にしよ うと思っています。 S.……スタート地点 S く問題例 2> ○センサ命令(タッチ命令)を利用して、壁にぶつかったら1 80度向きを変えて前進するプログ ラムをつくりなさい。 ※センサ命令を使うときには、 センサが反応していないときの命令に少し工夫が必要でした。 そこのところを注意しておいて下さい。

回答

✨ ベストアンサー ✨

間違えがあったので、訂正して再投稿します

こんな感じの答え方になると思います。
【問題例1】だけですが参考になればうれしいです。

まず、一周する流れを考えてみます
反時計回りだと↓のような流れになります。

開始←必ず入れる
直進○秒
左旋回○秒
直進○秒
左旋回○秒
直進○秒
左旋回○秒
直進○秒
終了←必ず入れる

次に秒数を考えます
ポイントは↓の2つです
1.何秒直進すれば20m進むか
2.何秒右旋回すれば90度曲がるか
○に秒数を入れたらプログラム完成です

Koma

2.の右旋回も正しくは左旋回です。

‪·͜· ❤︎‬

丁寧にありがとうございます(><)
助かりました!

問題例2はやはり1 とやり方は違いますよね??

Koma

180度向きを変える→直進の動きを1回したら終わるという前提で考えました

大まかな流れは↓の感じだと思います
1.開始
2.センサ命令(ぶつかったかどうか検知)
★条件分岐(Aぶつかる場合=感知とBそうでない場合=感知しない)
A)ぶつかった場合
旋回○秒(○は180度曲がるまでの秒数)
直進○秒(何cm直進するか=何秒継続させるかは当日の問題文の指示に従ってください)
終わり

B)ぶつからない場合
直進
2.へ戻る

ぶつからない場合は、ぶつかるまで繰り返します。

Koma

2は感知するかしないかで違う命令を出す必要があるのが、1との違いです。センサが反応しないときの命令をどうするかという対応策が条件分岐のことだと思います。

‪·͜· ❤︎‬

ほんとに丁寧にありがとうございます(><)

すみませんが、また質問なんですがこれって分かりますかね??
分かりましたら教えて欲しいです😖

Koma

例は違うものの、センサの問題で考えれば、壁があるはずなのに「ない」と判断してしまうケースです。光の反射を元にセンサが検知する仕組であれば、部屋の明るさによって誤作動することが考えられます。

明るさだと部屋の中心は大丈夫でも、部屋のすみは暗くて上手く作動しないということはありそうです。この場合は車体や机がある場所によって、うまく作動するか変わってくると言えます。

‪·͜· ❤︎‬

ありがとうございます(><)

この回答にコメントする
疑問は解決しましたか?