profile
Размещено 6 лет назад по предмету Информатика от dimonstepanov1990

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

  1. Ответ на вопрос
    Ответ на вопрос дан MaxLevs

    Так как целевой язык программирования не указан, написал на C#.

    В главном методе есть две переменные A и B, над которыми производнятся вычисления, а также метод IntToNaturalString(), преобразующий число в его строковую запись на русском языке.

    Результат работы на рисутке 1.

    Код:

    using System;

    using System.Collections;

    using System.Collections.Generic;

    using System.Linq;

    using System.Text;


    namespace FindPairs

    {

       class Program

       {

           static void Main(string[] args)

           {

               //*Введи свои значения здесь!*//

               int A = 46524;

               int B = 7353;


               int res = Math.Abs(A - B);

               Console.WriteLine("Исходная запись результата |{0}-{1}| = {2},", A, B, res);

               Console.WriteLine("что на русском языке звучит как "{0}".", IntToNaturalString(res));

           }



           static string IntToNaturalString(int number, string sep = " ")

           {

               return IntToNaturalString(number.ToString());

           }

           static string IntToNaturalString(string number, string sep = " ")

           {

               string result = "";

               if (number.Length > 3)

               {

                   string[] numbersClassNames = { "", "тысяч", "миллионов", "биллионов", "триллионов", "квадрилионов", "квинтиллионов" };

                   int K = number.Length / 3, D = number.Length % 3;

                   if (D > 0)

                       result += (IntToNaturalString(number.Substring(0, D)) + " " + numbersClassNames[K] + sep);

                   for (int i = 0; i < K; i++)

                   {

                       result += (IntToNaturalString(number.Substring(D+3*i, 3)) + " " + numbersClassNames[K - 1 - i] + sep);

                   }

               }

               else

               {

                   string[] hangred = { "", "сто", "двести", "триста", "четыреста", "пятьсот", "шестьсот", "семьсот", "восемьсот", "девятьсот" };

                   string[] decades = { "", "десять", "двадцать", "тридцать", "сорок", "пятьдесят", "шестьдесят", "семьдесят", "восемьдесят", "девяносто" };

                   string[] ones    = { "", "один", "два", "три", "четыре", "пять", "шесть", "семь", "восемь", "девять" };

                   string[] chst    = { "одиннадцать", "двенадцать", "тринадцать", "четырнадцать", "пятнадцать", "шестрадцать", "восемнадцать", "девятнадцать" };


                   number = RightFillZeros(number);

                   int H = int.Parse(number[0].ToString());

                   int D = int.Parse(number[1].ToString());

                   int O = int.Parse(number[2].ToString());


                   result = hangred[H] + " ";

                   if (D == 1 && O != 0)

                       result += chst[O];

                   else

                       result += decades[D] + " " + ones[O];

               }

               return result;

           }

           static string RightFillZeros(string number, int N = 3)

           {

               if (number.Length < N)

               {

                   number  = new string('0', N - number.Length) + number;

               }

               return number;

           }

       }

    }

Не тот ответ на вопрос, который вам нужен?
Найди верный ответ
Самые новые вопросы
tegysigalpa2012
Русский язык - 6 лет назад

Помогите решить тест по русскому языку тест по русскому языку «местоимение. разряды местоимений» для 6 класса 1. укажите личное местоимение: 1) некто 2) вас 3) ни с кем 4) собой 2. укажите относительное местоимение: 1) кто-либо 2) некоторый 3) кто 4) нам 3. укажите вопросительное местоимение: 1) кем-нибудь 2) кем 3) себе 4) никакой 4. укажите определительное местоимение: 1) наш 2) который 3) некий 4) каждый 5. укажите возвратное местоимение: 1) свой 2) чей 3) сам 4) себя 6. найдите указательное местоимение: 1) твой 2) какой 3) тот 4) их 7. найдите притяжательное местоимение: 1) самый 2) моего 3) иной 4) ничей 8. укажите неопределённое местоимение: 1) весь 2) какой-нибудь 3) любой 4) этот 9. укажите вопросительное местоимение: 1) сколько 2) кое-что 3) она 4) нами 10. в каком варианте ответа выделенное слово является притяжательным местоимением? 1) увидел их 2) её нет дома 3) её тетрадь 4) их не спросили

Информация

Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.