Напишите программу, которая получает ввод из трех строк. Если введенные строки являются «раз», «два» и «три», программа

  • 53
Напишите программу, которая получает ввод из трех строк. Если введенные строки являются «раз», «два» и «три», программа должна выводить «ГОРИ». В случае любого другого ввода, включая «1», «2» и «3», программа должна выводить «НЕ ГОРИ». Комбинированный ввод, например «1», «2», «три», также должен выдавать «НЕ ГОРИ». Помните, что возможен ввод «один» вместо «раз». Обратите внимание, что данное задание относится к Arduino.
Пугающий_Лис
54
Хорошо, чтобы решить данную задачу на Arduino, нам потребуется использовать условные операторы и функции для сравнения строк. Вот подробное решение:

1. Сначала объявим и инициализируем переменные, которые будут хранить значения введенных строк в формате String. Для этого напишем следующий код:

arduino
String str1 = ""; // Переменная для первой строки
String str2 = ""; // Переменная для второй строки
String str3 = ""; // Переменная для третьей строки


2. Затем, в методе `setup()`, мы будем запрашивать у пользователя ввод через встроенный монитор Serial. Для этого добавим следующий код:

arduino
void setup() {
// Инициализируем связь с монитором Serial
Serial.begin(9600);

// Запрашиваем у пользователя ввод трех строк
Serial.println("Введите первую строку:");
while (Serial.available() == 0) {
// Ждем, пока пользователь введет первую строку
}
str1 = Serial.readString(); // Считываем первую строку

Serial.println("Введите вторую строку:");
while (Serial.available() == 0) {
// Ждем, пока пользователь введет вторую строку
}
str2 = Serial.readString(); // Считываем вторую строку

Serial.println("Введите третью строку:");
while (Serial.available() == 0) {
// Ждем, пока пользователь введет третью строку
}
str3 = Serial.readString(); // Считываем третью строку
}


3. Теперь, в методе `loop()`, мы будем проверять введенные строки и выводить соответствующий результат. Для этого добавим следующий код:

arduino
void loop() {
// Проверяем введенные строки и выводим результат
if ((str1 == "раз" || str1 == "один") && str2 == "два" && str3 == "три") {
Serial.println("ГОРИ");
} else {
Serial.println("НЕ ГОРИ");
}

// Ожидаем окончания вывода перед повторным выполнением цикла
delay(1000);
}


4. Полный код программы выглядит следующим образом:

arduino
String str1 = ""; // Переменная для первой строки
String str2 = ""; // Переменная для второй строки
String str3 = ""; // Переменная для третьей строки

void setup() {
// Инициализируем связь с монитором Serial
Serial.begin(9600);

// Запрашиваем у пользователя ввод трех строк
Serial.println("Введите первую строку:");
while (Serial.available() == 0) {
// Ждем, пока пользователь введет первую строку
}
str1 = Serial.readString(); // Считываем первую строку

Serial.println("Введите вторую строку:");
while (Serial.available() == 0) {
// Ждем, пока пользователь введет вторую строку
}
str2 = Serial.readString(); // Считываем вторую строку

Serial.println("Введите третью строку:");
while (Serial.available() == 0) {
// Ждем, пока пользователь введет третью строку
}
str3 = Serial.readString(); // Считываем третью строку
}

void loop() {
// Проверяем введенные строки и выводим результат
if ((str1 == "раз" || str1 == "один") && str2 == "два" && str3 == "три") {
Serial.println("ГОРИ");
} else {
Serial.println("НЕ ГОРИ");
}

// Ожидаем окончания вывода перед повторным выполнением цикла
delay(1000);
}


Описание: программа запрашивает три строки у пользователя и проверяет, являются ли они "раз", "два" и "три" соответственно. Если это так, то на экран монитора выводится сообщение "ГОРИ". В противном случае, выводится сообщение "НЕ ГОРИ".

Надеюсь, данное пошаговое решение поможет понять школьнику, как написать программу для Arduino, решающую данную задачу. Если у вас возникнут дополнительные вопросы, не стесняйтесь задавать их!