Задание

Выберите правильные варианты написания функции, с помощью которой робот сможет развернуться на месте налево на длину дуги, равной distance. Радиус колеса равен R. Левый мотор подключен в первый порт, правый мотор подключен в десятый порт. В данном случае будет использован оптический энкодер, подключенный в первый цифровой порт. Энкодер, как вы помните, измеряет угол поворота оси колеса величиной angle, размерностью которого в данном случае являются градусы.

\[не удалось загрузить изображение\]

  • int angle = 0;
    void rotate\(int LeftMotor, int RightMotor, int distance, int R\)
    {
    angle = \(180\*distance\)/\(3\.14\*R\);
    while\(SensorValue⟨1⟩ \\lt angle\)
    {
    motor
    \[port1\]
    = -LeftMotor;
    motor
    \[port10\]
    = RightMotor;
    wait1Msec\(30\);
    }
    motor
    \[port1\]
    = 0;
    motor
    \[port10\]
    = 0;
    wait1Msec\(30\);
    }
  • int angle = 0;
    int encoder = 0;
    void rotate\(int LeftMotor, int RightMotor, int distance, int R\)
    {
    angle = \(180\*distance\)/\(3\.14\*R\);
    while\(encoder \\lt angle\)
    {
    motor
    \[port1\]
    = -LeftMotor;
    motor
    \[port10\]
    = RightMotor;
    wait1Msec\(30\);
    encoder = SensorValue
    \[dgtl1\]
    ;
    }
    motor
    \[port1\]
    = 0;
    motor
    \[port10\]
    = 0;
    wait1Msec\(30\);
    }
  • void rotate\(int LeftMotor, int RightMotor, int distance, int R\)
    {
    angle = \(180\*distance\)/\(3\.14\*R\);
    while\(encoder \\lt angle\)
    {
    motor
    \[port1\]
    = -LeftMotor;
    motor
    \[port10\]
    = RightMotor;
    wait1Msec\(30\);
    encoder = SensorValue
    \[dgtl1\]
    ;
    }
    motor
    \[port1\]
    = 0;
    motor
    \[port10\]
    = 0;
    wait1Msec\(30\);
    }
  • int angle = 0;
    void rotate\(int LeftMotor, int RightMotor, int distance, int R\)
    {
    angle = \(180\*distance\)/\(3\.14\*R\);
    while\(SensorValue⟨1⟩ \\lt angle\)
    {
    motor
    \[port1\]
    = LeftMotor;
    motor
    \[port10\]
    = -RightMotor;
    wait1Msec\(30\);
    }
    motor
    \[port1\]
    = 0;
    motor
    \[port10\]
    = 0;
    wait1Msec\(30\);
    }
  • int angle = 0;
    void rotate\(int LeftMotor, int RightMotor, int distance, int R\)
    {
    while\(SensorValue⟨1⟩ \\lt distance\)
    {
    motor
    \[port1\]
    = -LeftMotor;
    motor
    \[port10\]
    = RightMotor;
    wait1Msec\(30\);
    }
    motor
    \[port1\]
    = 0;
    motor
    \[port10\]
    = 0;
    wait1Msec\(30\);
    }