Форум программистов, компьютерный форум, киберфорум
Python: Решение задач
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.94/18: Рейтинг темы: голосов - 18, средняя оценка - 4.94
0 / 0 / 0
Регистрация: 18.01.2023
Сообщений: 74

Красный, синий и желтый называются основными цветами, потому что их нельзя получить путем смешения других цветов

21.01.2023, 17:17. Показов 5437. Ответов 10
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Красный, синий и желтый называются основными цветами, потому что их нельзя получить путем смешения других цветов. При смешивании двух основных цветов получается вторичный цвет:

если смешать красный и синий, то получится фиолетовый;
если смешать красный и желтый, то получится оранжевый;
если смешать синий и желтый, то получится зеленый.
Напишите программу, которая считывает названия двух основных цветов для смешивания. Если пользователь вводит что-нибудь помимо названий «красный», «синий» или «желтый», то программа должна вывести сообщение об ошибке. В противном случае программа должна вывести название вторичного цвета, который получится в результате.

Формат входных данных
На вход программе подаются две строки, каждая на отдельной строке.

Формат выходных данных
Программа должна вывести полученный цвет смешения либо сообщение «ошибка цвета», если введён был не цвет.

Примечание 1. Если смешать красный и красный, то получится красный и т.д.
a, b = input(), input()
if not a = "синий" or a = "желтый" or a != "красный" and b != "синий" or b != "желтый" or b != "красный":
print("ошибка цвета")
elif a == "синий" and b == "желтый":
print("зеленый")
elif a == "синий" and b == "красный":
print("фиолетовый")
elif a == "желтый" and b == "красный":
print("оранжевый")
elif a == "красный" and b == "желтый":
print("оранжевый")
elif a == "желтый" and b == "синий":
print("зеленый")
elif a == "красный" and b == "синий":
print("фиолетовый")
else:
print(a)
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
21.01.2023, 17:17
Ответы с готовыми решениями:

Светофор работает в следующем режиме: красный-жёлтый-зелёный-жёлтый-красный-жёлтый и т.д. Лампочки в светофоре не вечные
Светофор работает в следующем режиме: красный-жёлтый-зелёный-жёлтый-красный-жёлтый и т.д. Лампочки в светофоре не вечные и иногда...

Какая вероятность, что из вытащенных шариков: 1 красный, 1 зеленый, 1 синий, 1 желтый, 1 фиолетовый 1 циановый
В волшебной урне находятся 50 волшебных шариков: 25 красных, 15 зеленых и 10 синих. Шарики волшебные, при соприкосновении друг с другом, но...

Строки. Напечатать названия цветов зеленый, синий, красный и т.д
Имеется строка текста (на любом языке) из нескольких слов, разделјнных пробелами и/или знаками препинания. Требуется найти в тексте и...

10
 Аватар для Semen-Semenich
5234 / 3479 / 1175
Регистрация: 21.03.2016
Сообщений: 8,306
21.01.2023, 17:50
Python
1
2
3
4
5
6
7
8
9
10
dct = {
('желтый', 'синий') : 'зеленый', 
('желтый', 'красный') : 'оранжевый', 
('красный', 'синий') : 'фиолетовый',
('красный', 'красный') : 'красный',
('синий', 'синий') : 'синий',
('желтый','желтый') : 'желтый'
}
key = tuple(sorted((input(), input())))
print(dct.get(key, 'error'))
1
0 / 0 / 0
Регистрация: 18.01.2023
Сообщений: 74
21.01.2023, 17:55  [ТС]
Вы можете мне объяснить,где тут ошибка.Ограничения не работают

if not a = "синий" or a = "желтый" or a != "красный" and b != "синий" or b != "желтый" or b != "красный":
print("ошибка цвета")
0
 Аватар для Semen-Semenich
5234 / 3479 / 1175
Регистрация: 21.03.2016
Сообщений: 8,306
21.01.2023, 17:59
Python
1
if not a == "синий" or a == "желтый"
= присвоение значения. == сравнение значений

Добавлено через 1 минуту
дальше то ты правильно используешь
Python
1
elif a == "синий" and b == "желтый":
0
0 / 0 / 0
Регистрация: 18.01.2023
Сообщений: 74
21.01.2023, 18:20  [ТС]
a, b = input(), input()
if (a != "синий" or a != "желтый" or a != "красный" and b != "синий" or b != "желтый" or b != "красный"):
print("ошибка цвета")
elif a == "синий" and b == "желтый":
print("зеленый")
elif a == "синий" and b == "красный":
print("фиолетовый")
elif a == "желтый" and b == "красный":
print("оранжевый")
elif a == "красный" and b == "желтый":
print("оранжевый")
elif a == "желтый" and b == "синий":
print("зеленый")
elif a == "красный" and b == "синий":
print("фиолетовый")
else:
print(a)

Добавлено через 6 минут
a, b = input(), input()
if (a != "синий" and a != "желтый" and a != "красный" and b != "синий" and b != "желтый" and b != "красный"):
print("ошибка цвета")
elif a == "синий" and b == "желтый":
print("зеленый")
elif a == "синий" and b == "красный":
print("фиолетовый")
elif a == "желтый" and b == "красный":
print("оранжевый")
elif a == "красный" and b == "желтый":
print("оранжевый")
elif a == "желтый" and b == "синий":
print("зеленый")
elif a == "красный" and b == "синий":
print("фиолетовый")
else:
print(a)

Вот, при переменной a = красный и b = блаблабла
Ограничения не срабатывают.Я хочу, чтобы программа разрешала только конкретно 3 цвета.
Так как b = блаблабла программа не должна идти дальше,а должна остановится на print(ошибка цвета)

Добавлено через 11 минут
Есть какая-та ошибка,которую не могу увидеть
0
 Аватар для Semen-Semenich
5234 / 3479 / 1175
Регистрация: 21.03.2016
Сообщений: 8,306
21.01.2023, 18:21
давай начнем переводить условие
if (a != "синий" and a != "желтый" and a != "красный"
если а не синий и а не желтый и а не красный то ошибка
теперь я ввожу красный. как думаешь что получится?
первая проверка a != "синий" даст ошибку и дальше уже не имеет значение что будет
даже если будет так
Python
1
if a != "синий" and a != "желтый"
и я введу синий то тоже условие не выполнится потому что and подразумевает что все операнды должны быть одинаковы
Python
1
2
3
4
5
6
7
8
9
10
11
>>> 'синий' == 'синий'
True
>>> 'синий' == 'синий' and 'красный' == 'красный'
True
>>> 'зеленый' == 'синий' and 'красный' == 'красный'
False
>>>  True == True
True
>>> False == True
False
>>>
0
0 / 0 / 0
Регистрация: 18.01.2023
Сообщений: 74
21.01.2023, 18:36  [ТС]
Как же тогда правильно создать ограничение?не используя else?
Попробовал ещё так.
Теперь при значениях красный и синий должно выводить фиолетовый,а выводит ошибочный результат (ошибка цвета)



a, b = input(), input()
if a != "синий" or a != "желтый" or a != "красный" and b != "синий" or b != "желтый" or b != "красный":
print("ошибка цвета")
elif a == "синий" and b == "желтый":
print("зеленый")
elif a == "синий" and b == "красный":
print("фиолетовый")
elif a == "желтый" and b == "красный":
print("оранжевый")
elif a == "красный" and b == "желтый":
print("оранжевый")
elif a == "желтый" and b == "синий":
print("зеленый")
elif a == "красный" and b == "синий":
print("фиолетовый")
else:
print(a)

Добавлено через 3 минуты
Я просто хочу научится делать ограничения на то,чтобы программа воспринимала только конкретные вводимые данные
0
5516 / 2869 / 571
Регистрация: 07.11.2019
Сообщений: 4,760
21.01.2023, 18:40
Лучший ответ Сообщение было отмечено Роман1997 как решение

Решение

Вариант:
Python
1
2
3
4
5
6
colors=('красный', 'синий','желтый','зеленый','оранжевый','фиолетовый')
LUT=((0,5,4),(5,1,3),(4,3,2))
try:
    print(colors[LUT[colors.index(input())][colors.index(input())]])
except:
    print('ошибка цвета')
1
0 / 0 / 0
Регистрация: 18.01.2023
Сообщений: 74
21.01.2023, 18:55  [ТС]
Спасибо)
0
 Аватар для Semen-Semenich
5234 / 3479 / 1175
Регистрация: 21.03.2016
Сообщений: 8,306
21.01.2023, 19:04
Лучший ответ Сообщение было отмечено Роман1997 как решение

Решение

Python
1
2
3
4
a, b = input(), input()
color = ("синий", "желтый","красный")
if a not in color or b not in color:
    print("ошибка цвета")
1
0 / 0 / 0
Регистрация: 18.01.2023
Сообщений: 74
21.01.2023, 19:11  [ТС]
Гениально!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
21.01.2023, 19:11
Помогаю со студенческими работами здесь

Получить из множества цветов спектра новое множество путем исключения трех цветов
Задано множество, содержащее все цвета светового спектра от красного до фиолетового. Получить из этого множеств новое ...

Формула субтрактивного смешения цветов (CMYK)
Нужна формула субтрактивного смешения 2 и 3 цветов. Это цвета в формате CMYK. Например, есть первый цвет: С = 10%, M = 95%, Y = 93%, K = 2%...

Изменение рисунка путем смешения граней
Задача такая . Количество точек задается любое,фигура неправильная. Надо придумать алгоритм чтобы фигура увеличивалась /уменьшалась...

GTS 250 красный/желтый экран
Здравствуйте. Уже как полгода мучает проблема с драйверами под видеокарту. При установке драйверов с сайта nvidia выше версии 186.18...

Что означает красный и синий текст-фон в представлении сравнения GitHub?
Скажите, пожалуйста, что означает красный и синий текст-фон в представлении сравнения GitHub?


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Новые блоги и статьи
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru