光を追うプログラム01

★制作者★子供の頃から神童

#define mi  659 //音を定義
#define fa  698
#define so  784
#define sol  831
#define ra  880
#define shi  988
#define Do  1047
#define re  1175
#define mil  1319
#define fal  1397
#define soy  1568
#define ral  1760 
task play_music()
{
   while(true)//音楽を繰り返し演奏
   {
      PlayTone(mi,40); Wait(40);
      PlayTone(ra,40); Wait(40);
      PlayTone(sol,40);Wait(40);
      PlayTone(ra,40);Wait(40);
      PlayTone(shi,40);Wait(40);
      PlayTone(Do,40);Wait(40);
      PlayTone(shi,40);Wait(40);
      PlayTone(Do,40);Wait(40);
      PlayTone(re,40);Wait(40);
      PlayTone(mil,240);Wait(240);
      PlayTone(soy,80);Wait(80);
      PlayTone(mil,240);Wait(240);
      PlayTone(ral,40);Wait(40);
      PlayTone(soy,40);Wait(40);
      PlayTone(mil,160);Wait(200);
      PlayTone(mil,40);Wait(40);
      PlayTone(re,40);Wait(40);
      PlayTone(Do,40);Wait(40);
      PlayTone(re,20);Wait(20);
      PlayTone(Do,20);Wait(20);
      PlayTone(ra,200);Wait(200);
      PlayTone(Do,80);Wait(80);
      PlayTone(ra,400);Wait(500);
     }
}
task main()
{
SetSensor(SENSOR_1, SENSOR_LIGHT);//*センサーが光センサー   であることを定義*
SetSensor(SENSOR_3, SENSOR_LIGHT);//上と同じ
OnFwd(OUT_A+OUT_C+OUT_B);
while(true)//繰り返し
{
  SetPower(OUT_A,2);
  SetPower(OUT_C,2);
 if(SENSOR_1>SENSOR_3-20&&SENSOR_1>50|| SENSOR_1-20>    SENSOR_3 &&SENSOR_3>50  )//*どちらのセンサー*
  {                     //*も懐中電灯の光が当たっていると前進*
  SetPower(OUT_A,4);           
  SetPower(OUT_C,6);
  OnFwd(OUT_A+OUT_C);
  Wait(100);
  }
  if(SENSOR_1<SENSOR_3&&SENSOR_1<50)//*左のセンサーに当たる光が弱いと時計回りに回転*
  {
  OnFwd(OUT_A);
  OnRev(OUT_C);
  }
  if(SENSOR_1>SENSOR_3 &&SENSOR_3<50)//*右のセンサ−に当たる光が弱いと逆時計回りに回転*
  {
  OnFwd(OUT_C);
  OnRev(OUT_A);
  }
  else//*センサーにあたる光が両方とも弱いと音楽をかけながら回転*
  {
  start play_music ;
  SetPower(OUT_A,7);
  SetPower(OUT_C,7);
  OnFwd(OUT_A);
  OnRev(OUT_C);
  }
}
}

トップ   編集 凍結 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2006-07-07 (金) 17:34:57