2005/C6/第1回課題
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
*&size(40){〜第1回課題〜}; [#i67836c9]
**&size(30){四角形をかく}; [#c9c2bd0a]
***プログラム [#g330185a]
task main()
{
OnFwd(OUT_A); //前進
OnRev(OUT_C);
Wait(300);
OnFwd(OUT_A); //90度回転
OnFwd(OUT_C);
Wait(150);
OnFwd(OUT_A); //前進
OnRev(OUT_C);
Wait(300);
OnFwd(OUT_A); //90度回転
OnFwd(OUT_C);
Wait(150);
OnFwd(OUT_A); //前進
OnRev(OUT_C);
Wait(300);
OnFwd(OUT_A); //90度回転
OnFwd(OUT_C);
Wait(150);
OnFwd(OUT_A); //前進
OnRev(OUT_C);
Wait(300);
Off(OUT_A+OUT_C); //停止
}
***感想 [#padeafb3]
初めてかいたプログラムなので無駄が多く長い。
**&size(30){四角形をかく(書き直し)}; [#iff7dfee]
***プログラム [#hc2839c9]
task main()
{
repeat(3){ //前進+90度回転を3回繰り返す
OnFwd(OUT_A);
OnRev(OUT_C);
Wait(300);
OnFwd(OUT_A);
OnFwd(OUT_C);
Wait(150);
}
OnFwd(OUT_A); //前進
OnRev(OUT_C);
Wait(300);
Float(OUT_A+OUT_C); //停止
}
***感想 [#kfa8382a]
はじめに書いたプログラムと比べるとずいぶんスッキリした。
**&size(30){『右』をかく}; [#u445cca0]
***プログラム [#r2836e7a]
task main()
{
OnRev(OUT_B); //ペンをおろす
Wait(50);
Off(OUT_B);
OnFwd(OUT_A); //右の1画目をかく
OnRev(OUT_C);
Wait(150);
Off(OUT_A+OUT_C);
OnFwd(OUT_B); //ペンをあげる
Wait(70);
Off(OUT_B);
OnFwd(OUT_A); //右の2画目の始点へ移動
OnRev(OUT_C);
Wait(100);
Off(OUT_A+OUT_C);
OnFwd(OUT_A);
Wait(100);
Off(OUT_A);
OnFwd(OUT_C);
Wait(400);
Off(OUT_A+OUT_C);
OnRev(OUT_A);
OnFwd(OUT_C);
Wait(50);
Off(OUT_A+OUT_C);
OnRev(OUT_B); //ペンをおろす
Wait(50);
Off(OUT_B);
OnFwd(OUT_A); //右の2画目をかく
OnRev(OUT_C);
Wait(130);
Off(OUT_A+OUT_C);
OnFwd(OUT_B); //ペンをあげる
Wait(70);
Off(OUT_B);
OnFwd(OUT_A); //右の3画目の始点へ移動
OnRev(OUT_C);
Wait(50);
Off(OUT_A+OUT_C);
OnFwd(OUT_A);
OnRev(OUT_C);
Wait(80);
Off(OUT_A+OUT_C);
OnRev(OUT_A);
Wait(390);
Off(OUT_A);
OnRev(OUT_A);
OnFwd(OUT_C);
Wait(125);
Off(OUT_A+OUT_C);
OnFwd(OUT_A);
OnRev(OUT_C);
Wait(100);
Off(OUT_A+OUT_C);
OnRev(OUT_B); //ペンをおろす
Wait(50);
Off(OUT_B);
OnFwd(OUT_A); //右の3画目をかく
OnRev(OUT_C);
Wait(70);
Off(OUT_A+OUT_C);
OnFwd(OUT_B); //ペンをあげる
Wait(70);
Off(OUT_B);
OnFwd(OUT_A); //右の4画目の始点へ移動
OnRev(OUT_C);
Wait(190);
Off(OUT_A+OUT_C);
OnFwd(OUT_C);
Wait(450);
Off(OUT_C);
OnRev(OUT_A);
OnFwd(OUT_C);
Wait(30);
Off(OUT_A+OUT_C);
OnRev(OUT_B); //ペンをおろす
Wait(70);
Off(OUT_B);
OnFwd(OUT_A); //右の4画目の一部をかく
OnRev(OUT_C);
Wait(100);
Off(OUT_A+OUT_C);
OnFwd(OUT_B); //ペンをあげる
Wait(80);
Off(OUT_B);
OnFwd(OUT_A); //4画目の残りをかくための始点へ移動
OnRev(OUT_C);
Wait(220);
Off(OUT_A+OUT_C);
OnRev(OUT_A);
Wait(400);
Off(OUT_A);
OnRev(OUT_A);
OnFwd(OUT_C);
Wait(65);
Off(OUT_A+OUT_C);
OnRev(OUT_B); //ペンをおろす
Wait(70);
Off(OUT_B);
OnFwd(OUT_A); //4画目の残りをかく
OnRev(OUT_C);
Wait(70);
Off(OUT_A+OUT_C);
OnFwd(OUT_B); //ペンをあげる
Wait(70);
Off(OUT_B);
OnFwd(OUT_A); //右の5画目の始点へ移動
OnRev(OUT_C);
Wait(220);
Off(OUT_A+OUT_C);
OnRev(OUT_A);
Wait(420);
Off(OUT_A);
OnFwd(OUT_A);
OnRev(OUT_C);
Wait(40);
Off(OUT_A+OUT_C);
OnRev(OUT_B); //ペンをおろす
Wait(50);
Off(OUT_B);
OnRev(OUT_A); //右の5画目をかく
OnFwd(OUT_C);
Wait(100);
Off(OUT_A+OUT_C); //停止
OnFwd(OUT_B); //ペンをあげる
Wait(70);
Off(OUT_B);
}
***プログラム(書き直し) [#y4b6b5e4]
sub pen_up()
{OnFwd(OUT_B);
Wait(70);
Off(OUT_B);
}
sub pen_down()
{OnRev(OUT_B);
Wait(50);
Off(OUT_B);
}
void go(int t)
{OnFwd(OUT_A);
OnRev(OUT_C);
Wait(t);
Off(OUT_A+OUT_C);
}
void back(int t)
{OnRev(OUT_A);
OnFwd(OUT_C);
Wait(t);
Off(OUT_A+OUT_C);
}
void back_right(int t)
{OnFwd(OUT_C);
Wait(t);
Off(OUT_C);
}
void go_left(int t)
{OnFwd(OUT_A);
Wait(t);
Off(OUT_C);
}
void back_left(int t)
{OnRev(OUT_A);
Wait(t);
Off(OUT_A);
}
task main()
{
pen_down(); //ペンをおろす
go(150); //右の1画目をかく
pen_up(); //ペンをあげる
go(100); //右の2画目の始点へ移動
go_left(100);
back_left(400);
back(50);
pen_down(); //ペンをおろす
go(130); //右の2画目をかく
pen_up(); //ペンをあげる
go(130); //右の3画目の始点へ移動
back_left(390);
back(125);
go(100);
pen_down(); //ペンをおろす
go(70); //右の3画目をかく
pen_up(); //ペンをあげる
go(190); //右の4画目の始点へ移動
back_right(450);
back(30);
pen_down(); //ペンをおろす
go(100);
pen_up(); //ペンをあげる
go(220); //4画目の残りをかくための始点へ移動
back_left(400);
back(65);
pen_down(); //ペンをおろす
go(70); //4画目の残りをかく
pen_up(); //ペンをあげる
go(220); //右の5画目の始点へ移動
back_left(420);
go(40);
pen_down(); //ペンをおろす
back(100); //右の5画目をかく
pen_up(); //ペンをあげる
}
***感想 [#gda3f10f]
同じプログラムであっても書く度に形が変わり大変だった。
ペンをアームに固定するのに苦労した。ペンをアームに固定するためにしっかりと固定できる太さのペンを選んだり、いろいろなパーツを組み合わせてきつく締めることでなんとか解決できた。
**コメントはこちらへ [#w3d78c7e]
-苦労した点について、その解決方法なども簡単に紹介してください。 -- [[松本(教員)]] &new{2005-11-17 (木) 23:54:55};
#comment
終了行:
*&size(40){〜第1回課題〜}; [#i67836c9]
**&size(30){四角形をかく}; [#c9c2bd0a]
***プログラム [#g330185a]
task main()
{
OnFwd(OUT_A); //前進
OnRev(OUT_C);
Wait(300);
OnFwd(OUT_A); //90度回転
OnFwd(OUT_C);
Wait(150);
OnFwd(OUT_A); //前進
OnRev(OUT_C);
Wait(300);
OnFwd(OUT_A); //90度回転
OnFwd(OUT_C);
Wait(150);
OnFwd(OUT_A); //前進
OnRev(OUT_C);
Wait(300);
OnFwd(OUT_A); //90度回転
OnFwd(OUT_C);
Wait(150);
OnFwd(OUT_A); //前進
OnRev(OUT_C);
Wait(300);
Off(OUT_A+OUT_C); //停止
}
***感想 [#padeafb3]
初めてかいたプログラムなので無駄が多く長い。
**&size(30){四角形をかく(書き直し)}; [#iff7dfee]
***プログラム [#hc2839c9]
task main()
{
repeat(3){ //前進+90度回転を3回繰り返す
OnFwd(OUT_A);
OnRev(OUT_C);
Wait(300);
OnFwd(OUT_A);
OnFwd(OUT_C);
Wait(150);
}
OnFwd(OUT_A); //前進
OnRev(OUT_C);
Wait(300);
Float(OUT_A+OUT_C); //停止
}
***感想 [#kfa8382a]
はじめに書いたプログラムと比べるとずいぶんスッキリした。
**&size(30){『右』をかく}; [#u445cca0]
***プログラム [#r2836e7a]
task main()
{
OnRev(OUT_B); //ペンをおろす
Wait(50);
Off(OUT_B);
OnFwd(OUT_A); //右の1画目をかく
OnRev(OUT_C);
Wait(150);
Off(OUT_A+OUT_C);
OnFwd(OUT_B); //ペンをあげる
Wait(70);
Off(OUT_B);
OnFwd(OUT_A); //右の2画目の始点へ移動
OnRev(OUT_C);
Wait(100);
Off(OUT_A+OUT_C);
OnFwd(OUT_A);
Wait(100);
Off(OUT_A);
OnFwd(OUT_C);
Wait(400);
Off(OUT_A+OUT_C);
OnRev(OUT_A);
OnFwd(OUT_C);
Wait(50);
Off(OUT_A+OUT_C);
OnRev(OUT_B); //ペンをおろす
Wait(50);
Off(OUT_B);
OnFwd(OUT_A); //右の2画目をかく
OnRev(OUT_C);
Wait(130);
Off(OUT_A+OUT_C);
OnFwd(OUT_B); //ペンをあげる
Wait(70);
Off(OUT_B);
OnFwd(OUT_A); //右の3画目の始点へ移動
OnRev(OUT_C);
Wait(50);
Off(OUT_A+OUT_C);
OnFwd(OUT_A);
OnRev(OUT_C);
Wait(80);
Off(OUT_A+OUT_C);
OnRev(OUT_A);
Wait(390);
Off(OUT_A);
OnRev(OUT_A);
OnFwd(OUT_C);
Wait(125);
Off(OUT_A+OUT_C);
OnFwd(OUT_A);
OnRev(OUT_C);
Wait(100);
Off(OUT_A+OUT_C);
OnRev(OUT_B); //ペンをおろす
Wait(50);
Off(OUT_B);
OnFwd(OUT_A); //右の3画目をかく
OnRev(OUT_C);
Wait(70);
Off(OUT_A+OUT_C);
OnFwd(OUT_B); //ペンをあげる
Wait(70);
Off(OUT_B);
OnFwd(OUT_A); //右の4画目の始点へ移動
OnRev(OUT_C);
Wait(190);
Off(OUT_A+OUT_C);
OnFwd(OUT_C);
Wait(450);
Off(OUT_C);
OnRev(OUT_A);
OnFwd(OUT_C);
Wait(30);
Off(OUT_A+OUT_C);
OnRev(OUT_B); //ペンをおろす
Wait(70);
Off(OUT_B);
OnFwd(OUT_A); //右の4画目の一部をかく
OnRev(OUT_C);
Wait(100);
Off(OUT_A+OUT_C);
OnFwd(OUT_B); //ペンをあげる
Wait(80);
Off(OUT_B);
OnFwd(OUT_A); //4画目の残りをかくための始点へ移動
OnRev(OUT_C);
Wait(220);
Off(OUT_A+OUT_C);
OnRev(OUT_A);
Wait(400);
Off(OUT_A);
OnRev(OUT_A);
OnFwd(OUT_C);
Wait(65);
Off(OUT_A+OUT_C);
OnRev(OUT_B); //ペンをおろす
Wait(70);
Off(OUT_B);
OnFwd(OUT_A); //4画目の残りをかく
OnRev(OUT_C);
Wait(70);
Off(OUT_A+OUT_C);
OnFwd(OUT_B); //ペンをあげる
Wait(70);
Off(OUT_B);
OnFwd(OUT_A); //右の5画目の始点へ移動
OnRev(OUT_C);
Wait(220);
Off(OUT_A+OUT_C);
OnRev(OUT_A);
Wait(420);
Off(OUT_A);
OnFwd(OUT_A);
OnRev(OUT_C);
Wait(40);
Off(OUT_A+OUT_C);
OnRev(OUT_B); //ペンをおろす
Wait(50);
Off(OUT_B);
OnRev(OUT_A); //右の5画目をかく
OnFwd(OUT_C);
Wait(100);
Off(OUT_A+OUT_C); //停止
OnFwd(OUT_B); //ペンをあげる
Wait(70);
Off(OUT_B);
}
***プログラム(書き直し) [#y4b6b5e4]
sub pen_up()
{OnFwd(OUT_B);
Wait(70);
Off(OUT_B);
}
sub pen_down()
{OnRev(OUT_B);
Wait(50);
Off(OUT_B);
}
void go(int t)
{OnFwd(OUT_A);
OnRev(OUT_C);
Wait(t);
Off(OUT_A+OUT_C);
}
void back(int t)
{OnRev(OUT_A);
OnFwd(OUT_C);
Wait(t);
Off(OUT_A+OUT_C);
}
void back_right(int t)
{OnFwd(OUT_C);
Wait(t);
Off(OUT_C);
}
void go_left(int t)
{OnFwd(OUT_A);
Wait(t);
Off(OUT_C);
}
void back_left(int t)
{OnRev(OUT_A);
Wait(t);
Off(OUT_A);
}
task main()
{
pen_down(); //ペンをおろす
go(150); //右の1画目をかく
pen_up(); //ペンをあげる
go(100); //右の2画目の始点へ移動
go_left(100);
back_left(400);
back(50);
pen_down(); //ペンをおろす
go(130); //右の2画目をかく
pen_up(); //ペンをあげる
go(130); //右の3画目の始点へ移動
back_left(390);
back(125);
go(100);
pen_down(); //ペンをおろす
go(70); //右の3画目をかく
pen_up(); //ペンをあげる
go(190); //右の4画目の始点へ移動
back_right(450);
back(30);
pen_down(); //ペンをおろす
go(100);
pen_up(); //ペンをあげる
go(220); //4画目の残りをかくための始点へ移動
back_left(400);
back(65);
pen_down(); //ペンをおろす
go(70); //4画目の残りをかく
pen_up(); //ペンをあげる
go(220); //右の5画目の始点へ移動
back_left(420);
go(40);
pen_down(); //ペンをおろす
back(100); //右の5画目をかく
pen_up(); //ペンをあげる
}
***感想 [#gda3f10f]
同じプログラムであっても書く度に形が変わり大変だった。
ペンをアームに固定するのに苦労した。ペンをアームに固定するためにしっかりと固定できる太さのペンを選んだり、いろいろなパーツを組み合わせてきつく締めることでなんとか解決できた。
**コメントはこちらへ [#w3d78c7e]
-苦労した点について、その解決方法なども簡単に紹介してください。 -- [[松本(教員)]] &new{2005-11-17 (木) 23:54:55};
#comment
ページ名: