Найти, сколько цифр можно составить из этих букв, вывести их и то, что осталось невостребованным - C#

Узнай цену своей работы

Формулировка задачи:

Дана последовательность из букв. Найти сколько цифр можно составить из этих букв, вывести их и то, что осталось невостребованным

Решение задачи: «Найти, сколько цифр можно составить из этих букв, вывести их и то, что осталось невостребованным»

textual
Листинг программы
  class Program
    {
        //  Функция ищет совпадения между двумя входными строками
        static string out_slovo(string s_simvol, string v_slovo)
        {
            string s_res = "";
            for (int i = 0; i < v_slovo.Length; i++)
                for (int j = 0; j < s_simvol.Length; j++)
                    if (v_slovo[i] == s_simvol[j])
                    {
                        s_res+=s_simvol[j];
                        break;
                    }
 
            if (v_slovo.Length > s_res.Length)
                s_res = "";
          return s_res;
        }
 
        //  Функция удаляет из исходного набора символов уже использованные
        static string out_simvol(string s_simvol, string s_res)
        {
            for (int i = 0; i < s_res.Length; i++)
               for (int j = 0; j < s_simvol.Length; j++)
                  if (s_res[i] == s_simvol[j])
                    {
                        char[] c_simvol = s_simvol.ToCharArray();
                        c_simvol[j] = '0';
                        s_simvol = new string(c_simvol);
                        break;
                    }
            return s_simvol;
        }
 
        //  Функция выводит результат совпадения s_res
        static void out_s_res(string s_res)
        {
            if (s_res != "")
                for (int i = 0; i < s_res.Length; i++)
                    Console.Write(s_res[i]);
            Console.WriteLine(" ");
        }
 
        //  Функция выводит не использованные символы
        static void out_s_simvol(string s_simvol)
        {
            for (int i = 0; i < s_simvol.Length; i++)
               if (s_simvol[i] != '0')
                    Console.WriteLine(s_simvol[i]);
            Console.WriteLine("\n");
        }
        static void Main(string[] args)
        {
            string s_res; // Результат совпадения
            string s_simvol = "STOLEN"; // Строка произвольных символов
            string one = "ONE"; // Строки для поиска
            string ten = "TEN";
            string two = "TWO";
            //  И так далее ...
 
            // ZERO
            s_res = out_slovo(s_simvol, one); // Ищем совпадения
            if (s_res != "")
                s_simvol = out_simvol(s_simvol, one); // Удаляем использованные символы
 
            Console.WriteLine("Составлены представления чисел: ");
            out_s_res(s_res); // Выводим совпадение
 
            // TEN
            s_res = out_slovo(s_simvol, ten);
            if (s_res != "")
            {
                s_simvol = out_simvol(s_simvol, ten);
            }
            out_s_res(s_res);
 
            // TWO
            s_res = out_slovo(s_simvol, two);
            if (s_res != "")
                s_simvol = out_simvol(s_simvol, two);
 
            out_s_res(s_res);
            Console.WriteLine("\nНе использованные символы: ");
 
            out_s_simvol(s_simvol); //  Выводим неиспользуемые символы
            Console.ReadKey();
        }
    }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

9   голосов , оценка 3.667 из 5
Похожие ответы