Что Вы сделали для того, чтобы решить проблему самостоятельно?
Вы могли бы, хотя бы после строки №23 поставить печать переменной myColor и посмотреть, что же такое Вы вводите? Узнаете много интересного. Например, о прицепленных в конец строки символа перевода строки и возврата каретки. Или о том, что вводится не полностью. Ставьте печать, шевелитесь, работайте. Почему кто-то должен Вас всё на тарелочке подносить?
Всё работает, только кроме ваших вводимых символов другие могут идти, всякие там концы строки ‘\n’ и т.д. Пробуйте методом тыка if (myColor == “red\n”)
Как поставили Вы не показали (и напрасно), но рискну предположить, что неправильно. Когда печатаете строки надо ВСЕГДА до и после строки ставить ещё что-нибудь. Тогда Вы будете видеть есть ли там невидимые символы (например, перевод строки).
Честно говоря я знал ответ, потому что сам сталкивался и не так давно.
Но мне было интересно посмотреть решения.
Всё-таки @v258 прав - нужно на стороне принимающей всё лишнее отсекать…