Помогите решить проблему с ошибкой

sdiv
Offline
Зарегистрирован: 23.10.2018
int i;
void setup() 
{
for(i=6;i<14;i++)
{
pinMode(i,OUTPUT);
}
}
 
void loop() {
for(i=6;i<14;i++)
{
if ((analogRead(A0) >= 250) && (analogRead(A0) < 500));
{
digitalWrite (i, HIGH);
digitalWrite (i+1, HIGH);
delay (100);
digitalWrite (i, LOW);
digitalWrite (i+1, LOW);
delay (100);
}
else if ((analogRead(A0) = 500) && ((analogRead(A0) < 750));
{
digitalWrite (i, HIGH);
digitalWrite (i+1, HIGH);
delay (1000);
digitalWrite (i, LOW);
digitalWrite (i+1, LOW);
delay (1000);
}
else if((analogRead(A0) <= 750)) && ((analogRead(A0) <= 850));
{
digitalWrite (i, HIGH);
digitalWrite (i+1, HIGH);
delay (2000);
digitalWrite (i, LOW);
digitalWrite (i+1, LOW);
delay (2000);
}
else ((analogRead(A0) <= 850)) && ((analogRead(A0) < 1000));
{
digitalWrite (i, HIGH);
}
}
}
}
 
 
в последнем действии else ((analogRead(A0) <= 850)) && ((analogRead(A0) < 1000)); видается ошибка( 'else' without a previous 'if')  (ещё без если) пожалуйста обесните как исправить
KosteT
Offline
Зарегистрирован: 17.07.2016

ещё без если всё правильно, по русски перевести ума хватило, а подумать  нет

else есть if нет, зато условие в скобках присутствует, кому оно нужно? Да и выше не правльно всё, кучи скобок не хвататет, = 500 это не сравнение, это залёт

Да и вообще что за бред в условиях? = 500 и так всегда меньше 750, <=750 и так <=850, 850 тоже меньше 1000

kalapanga
Offline
Зарегистрирован: 23.10.2016

Код в сообщение следует вставлять так, как описано здесь: Вставка программного кода в тему/комментарий

Сообщения об ошибках надо читать все - у Вас ошибка не на последнем else, а на всех. Почитайте про оператор if...else Зачем Вы после условий точки с запятой влепили?

Ну и заодно перечитайте сами условия в Ваших if-ах, там ерунда написана, хотя к ошибке это уже не относится

b707
Offline
Зарегистрирован: 26.05.2017

да он явно этот код где-то стырил и не понимает в нем ни буквы

sdiv
Offline
Зарегистрирован: 23.10.2018

Если честно то этот код я писал сам просто при помощи различных источников. А ошибок здесь столько, потому что я только учюсь. 

mixail844
Offline
Зарегистрирован: 30.04.2012

sdiv пишет:

Если честно то этот код я писал сам просто при помощи различных источников. А ошибок здесь столько, потому что я только учюсь. 

хорошо ,тогда перепишите код в соответсвии с тем что вам посоветовали в сообщении #2 и вставьте тут как закончите,тогда и продолжим.

sdiv
Offline
Зарегистрирован: 23.10.2018
int i;
void setup() 
{
for(i=6;i<14;i++)
{
pinMode(i,OUTPUT);
}
}
 
void loop() 
{
for(i=6;i<14;i++)
{
if((analogRead(A0) > 250) && (analogRead(A0) < 500))
{
digitalWrite (i, HIGH);
digitalWrite (i+1, HIGH);
delay (50);
digitalWrite (i, LOW);
digitalWrite (i+1, LOW);
delay (50);
}
else if((analogRead(A0) > 500) && (analogRead(A0) < 750))
{
digitalWrite (i, HIGH);
digitalWrite (i+1, HIGH);
delay (100);
digitalWrite (i, LOW);
digitalWrite (i+1, LOW);
delay (100);
}
else
{
digitalWrite (i, HIGH);
digitalWrite (i+1, HIGH);
delay (500);
digitalWrite (i, LOW);
digitalWrite (i+1, LOW);
delay (500);
}
}
}
 
 
Cпосибо за подсказки переделал программу. Всё работает.
xDriver
xDriver аватар
Offline
Зарегистрирован: 14.08.2015

отлично !

теперь освойте еще один дан, http://arduino.ru/forum/obshchii/vstavka-programmnogo-koda-v-temukommentarii

что-бы это выглядело вот так:

int i;
void setup()
{
  for (i = 6; i < 14; i++)
  {
    pinMode(i, OUTPUT);
  }
}

void loop()
{
  for (i = 6; i < 14; i++)
  {
    if ((analogRead(A0) > 250) && (analogRead(A0) < 500))
    {
      digitalWrite (i, HIGH);
      digitalWrite (i + 1, HIGH);
      delay (50);
      digitalWrite (i, LOW);
      digitalWrite (i + 1, LOW);
      delay (50);
    }
    else if ((analogRead(A0) > 500) && (analogRead(A0) < 750))
    {
      digitalWrite (i, HIGH);
      digitalWrite (i + 1, HIGH);
      delay (100);
      digitalWrite (i, LOW);
      digitalWrite (i + 1, LOW);
      delay (100);
    }
    else
    {
      digitalWrite (i, HIGH);
      digitalWrite (i + 1, HIGH);
      delay (500);
      digitalWrite (i, LOW);
      digitalWrite (i + 1, LOW);
      delay (500);
    }
  }
}