помощь в коде
- Войдите на сайт для отправки комментариев
Чт, 04/02/2016 - 17:57
написал код,который должен,при вводе какой-либо буквы выводить комбинацию буквы на нашем механизме. так вот ввел весь алфавит ,и начинаю проверять код пишу любую букву, а он мне выводет последнюю букву.Хотелось бы узнать правильный ли код ,и в чем моя ошибка.Печеньки тем,кто поможет)))
void setup() {
pinMode(13,OUTPUT);
pinMode(12,OUTPUT);
pinMode(11,OUTPUT);
pinMode(10,OUTPUT);
pinMode(9,OUTPUT);
pinMode(8,OUTPUT);
Serial.begin(9600);
}
void loop() {
String str ;
str = Serial.readString();
int str_len = str.length();
char char_array[str_len];
str.toCharArray(char_array,str_len);
for (int i=0; i< str_len; i++){
Serial.println(str[i]);
if((str[0]=='a')||(str[0]=='A')){
letterA();
}
if(str[0]=='b'||'B'){
letterB();
}
if(str[0]=='c'||'C'){
letterC();
}
if(str[0]=='d'||'D'){
letterD();
}
if(str[0]=='e'||'E'){
letterE();
}
if(str[0]=='f'||'F'){
letterF();
}
if(str[0]=='g'||'G'){
letterG();
}
if(str[0]=='h'||'H'){
letterH();
}
if(str[0]=='i'||'I'){
letterI();
}
if(str[0]=='j'||'J'){
letterJ();
}
if(str[0]=='k'||'K'){
letterK();
}
if(str[0]=='l'||'L'){
letterL();
}
if(str[0]=='m'||'M'){
letterM();
}
if(str[0]=='n'||'N'){
letterN();
}
if(str[0]=='o'||'O'){
letterO();
}
if(str[0]=='p'||'P'){
letterP();
}
if(str[0]=='q'||'Q'){
letterQ();
}
if(str[0]=='r'||'R'){
letterR();
}
if(str[0]=='s'||'S'){
letterS();
}
if(str[0]=='t'||'T'){
letterT();
}
if(str[0]=='u'||'U'){
letterU();
}
if(str[0]=='v'||'V'){
letterV();
}
if(str[0]=='w'||'W'){
letterW();
}
if(str[0]=='x'||'X'){
letterX();
}
if(str[0]=='y'||'Y'){
letterY();
}
if(str[0]=='z'||'Z'){
letterZ();
}
}
}
Что По Вашему должна означать вот эта запись?
Если Вы надеетесь, что это означает "если str[0] равно 'b' или str[0] равно 'B'", то таки нет. Если Вам нужно такое сравнение, то так и нужно писать
Дальше не смотрел.