Вопрос задан 21.06.2023 в 16:05. Предмет Информатика. Спрашивает Маликова Ирина.

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

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

Ответы на вопрос

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Тарасенко Богдан.

Ответ:

// код написан на языке C#

using System;

namespace coloradds

{

   class Program

   {

       static void Main(string[] args)

       {

           string[] maincolors = new string[3] { "красный", "синий", "желтый" };

     

           string color1 = Console.ReadLine();

           string color2 = Console.ReadLine();

           if (Array.IndexOf(maincolors, color1) == -1 || Array.IndexOf(maincolors, color2) == -1)

           {

               Console.WriteLine("ошибка цвета");

           } else

           {

               if(color1 == color2) Console.WriteLine(color1);

               else

               {

                   if((color1 == maincolors[0] && color2 == maincolors[1]) || (color1 == maincolors[1] && color2 == maincolors[0]))

                   {

                       Console.WriteLine("фиолетовый");

                   }

                   if ((color1 == maincolors[0] && color2 == maincolors[2]) || (color1 == maincolors[2] && color2 == maincolors[0]))

                   {

                       Console.WriteLine("оранжевый");

                   }

                   if ((color1 == maincolors[2] && color2 == maincolors[1]) || (color1 == maincolors[1] && color2 == maincolors[2]))

                   {

                       Console.WriteLine("зеленый");

                   }

               }

           }

           Console.ReadKey();

       }

   }

}

Объяснение:

  • using System; - подключаем стандартную библиотеку для работы с консолью

string[] maincolors = new string[3] { "красный", "синий", "желтый" };

Создаем массив типа в котором будут хранится основные цвета.

В переменные типа string color1, color2 с консоли в водим название цвета с помощью конструкции:

  • string color1 = Console.ReadLine();
  • string color2 = Console.ReadLine();

Функция Array.IndexOf(maincolors, color1) позволяет найти в массиве элемент и возвращает его индекс и если индекс не найден, то функция вернет минус единицу, то есть если веденной строке есть неверно введенный цвет или другое слово, то программа выдаст единицу сработает if и программа напечатает, что есть «ошибка цвета» (Console.WriteLine("ошибка цвета");).

Если программа не обнаружила ошибки цвета, то попадаем в else.

  • if(color1 == color2) Console.WriteLine(color1);

Данная строчка проверят ввод одинаковых цветов и если это так, то программа выводит данный цвет и по-сути заканчивает свою работу, а если нет, то мы попадаем в else.

Условие if записано следующим образом:

if((color1 == maincolors[0] && color2 == maincolors[1]) || (color1 == maincolors[1] && color2 == maincolors[0]))

У нас возможна комбинация ввода:

  • красный и синий
  • синий и красный

И если это так хотя бы одна из комбинаций, то есть логическое или

(||), то выполняем if и выводим в консоль соответствующий цвет.

Для проверки берем конкретный цвет из массива maincolors, то есть пишем maincolors[i], где i тот цвет который нам необходим.

Аналогично написаны и два последrющих if.

В конце строчка  Console.ReadKey(); написана для того, что консоль сразу не закрывалась после выполнения программы.

#SPJ3

0 1
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Для решения этой задачи можно использовать следующую программу на Python:

python
# Считываем названия двух основных цветов color1 = input() color2 = input() # Создаем множество с допустимыми названиями основных цветов primary_colors = {"красный", "синий", "желтый"} # Проверяем, что введенные названия находятся в множестве допустимых цветов if color1 in primary_colors and color2 in primary_colors: # Определяем вторичный цвет if color1 == color2: secondary_color = color1 elif (color1 == "красный" and color2 == "синий") or (color1 == "синий" and color2 == "красный"): secondary_color = "фиолетовый" elif (color1 == "красный" and color2 == "желтый") or (color1 == "желтый" and color2 == "красный"): secondary_color = "оранжевый" elif (color1 == "синий" and color2 == "желтый") or (color1 == "желтый" and color2 == "синий"): secondary_color = "зеленый" # Выводим результат print(secondary_color) else: print("ошибка цвета")

Пример работы программы:

синий красный фиолетовый
красный желтый оранжевый
зеленый оранжевый ошибка цвета
0 0

Похожие вопросы

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос