Задача понятна: программа должна считывать введённую строку и, если она ровно "OK", вывести одну фразу, иначе другую.
Пояснение к решению
- Ввод читаем одной строкой.
- Чтобы корректно обработать возможные пробелы вокруг текста, удаляем ведущие и конечные пробелы (strip).
- Условие: если строка равна "OK" (точно регистр и без лишних символов), вывести "Это правильный ответ!", иначе вывести "Пока неверно.".
- Сложность: O(1) по времени и O(1) по памяти.
Пример алгоритма (пошагово)
- Прочитать ввод: s = input().strip()
- Если s == "OK":
- вывести "Это правильный ответ!" иначе:
- вывести "Пока неверно."
Пример кода на Python s = input().strip() if s == "OK": print("Это правильный ответ!") else: print("Пока неверно.")
Пояснение к коду:
- input().strip() снимает концевые пробелы и перевод строки, чтобы "OK " или " OK" тоже считались как "OK".
- Сравнение строгое: только текст "OK" без изменений.
Дополнительные варианты (для остальных языков)
C++ (базовый вариант, читаем строку, обрезаем пробелы и сравниваем с "OK"): #include <bits/stdc++.h> using namespace std; int main() { string s; getline(cin, s); // обрезаем пробелы в начале и конце auto l = s.find_first_not_of(" \t\r\n"); auto r = s.find_last_not_of(" \t\r\n"); string t = (l == string::npos) ? "" : s.substr(l, r - l + 1); if (t == "OK") cout << "Это правильный ответ!"; else cout << "Пока неверно."; return 0; }
Java (читаем строку, обрезаем пробелы, сравниваем): import java.io.; import java.util.; public class Main { public static void main(String[] args) throws Exception { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); String s = br.readLine(); if (s != null) s = s.trim(); if ("OK".equals(s)) System.out.println("Это правильный ответ!"); else System.out.println("Пока неверно."); } }
Если хочешь, могу адаптировать решение под другой язык программирования или рассмотреть варианты с учётом конкретного класса/уровня подготовки.