Advertisement
CsanyiTothZoltan

SzambolBetuJavitott

Jul 20th, 2018
74
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 3.29 KB | None | 0 0
  1.             string[] egyesTomb = { "", "egy", "kettő", "három", "négy", "öt", "hat", "hét", "nyolc", "kilenc" };
  2.             string[] tizesTomb = { "", "tíz", "húsz", "harminc", "negyven", "ötven", "hatvan", "hetven", "nyolcvan", "kilencven" };
  3.             string[] vegyesTomb = { "száz", "tizen", "huszon", "ezer", "millió", "milliárd" };
  4.  
  5.             string megoldas = "";
  6.  
  7.  
  8.             Console.WriteLine("Írj be egy számot! (Integer határain belül!!!)");
  9.  
  10.             int szam = Convert.ToInt32(Console.ReadLine());
  11.  
  12.             string szamString = szam.ToString();
  13.  
  14.             List<int> szamjegyek = new List<int>();
  15.  
  16.             for (int i = 0; i < szamString.Length; i++)
  17.             {
  18.                 szamjegyek.Add(szamString[i] - 48);
  19.             }
  20.  
  21.             while (szamjegyek.Count < 10)
  22.             {
  23.                 szamjegyek.Insert(0, 0);
  24.             }
  25.  
  26.             megoldas += Harmasblokk(0, 0, szamjegyek[0], 1);
  27.             megoldas += Harmasblokk(szamjegyek[1], szamjegyek[2], szamjegyek[3], 2);
  28.             megoldas += Harmasblokk(szamjegyek[4], szamjegyek[5], szamjegyek[6], 3);
  29.             megoldas += Harmasblokk(szamjegyek[7], szamjegyek[8], szamjegyek[9], 4);
  30.  
  31.             Console.WriteLine(megoldas);
  32.  
  33.             Console.ReadKey();
  34.  
  35.  
  36.             string Harmasblokk(int szazas, int tizes, int egyes, int hanyadikBlokk)
  37.             {
  38.                 string eredmeny = "";
  39.  
  40.                 if (szazas != 0 || tizes != 0 || egyes != 0)
  41.                 {
  42.                     if (szam > 2000)
  43.                     {
  44.                         if (megoldas.Length > 0 && megoldas[megoldas.Length - 1] != '-')
  45.                         {
  46.                             eredmeny += "-";
  47.                         }
  48.                     }
  49.  
  50.                     if (szazas != 0)
  51.                     {
  52.                         if (szazas == 1 && (szamString.Length>6 ||szamString.Length<4))
  53.                         {
  54.                             eredmeny += vegyesTomb[0];
  55.                         }
  56.                         else
  57.                         {
  58.                             eredmeny += egyesTomb[szazas] + vegyesTomb[0];
  59.                         }
  60.                     }
  61.  
  62.                     if ((tizes == 1 || tizes == 2) && egyes != 0)
  63.                     {
  64.                         eredmeny += vegyesTomb[tizes];
  65.                     }
  66.                     else
  67.                     {
  68.                         eredmeny += tizesTomb[tizes];
  69.                     }
  70.  
  71.                     if (szamString.Length != 4 || szazas != 0 || tizes != 0 || egyes != 1 || hanyadikBlokk != 3)
  72.                     {
  73.                         eredmeny += egyesTomb[egyes];
  74.                     }
  75.  
  76.                     switch (hanyadikBlokk)
  77.                     {
  78.                         case 1:
  79.                             eredmeny += vegyesTomb[5];
  80.                             break;
  81.                         case 2:
  82.                             eredmeny += vegyesTomb[4];
  83.                             break;
  84.                         case 3:
  85.                             eredmeny += vegyesTomb[3];
  86.                             break;
  87.                         default:
  88.                             break;
  89.                     }
  90.                 }
  91.  
  92.                 return eredmeny;
  93.             }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement