public static class Kodolo
private const string _betuk = "abcdefghijklmnopqrstuvwxyz";
private const string _szamok = "22233344455566677778889999";
public static string Kodol(string betuk)
var kisbetus = betuk.ToLower();
var eredmeny = new StringBuilder();
foreach(var betu in kisbetus)
int index = _betuk.IndexOf(betu);
throw new InvalidOperationException();
eredmeny.Append(_szamok[index]);
return eredmeny.ToString();
Console.WriteLine("Kérek egy betűt: ");
char betu = Console.ReadLine()[0];
Console.WriteLine("Hozzá tartozó szám: {0}", Kodolo.Kodol(betu.ToString()));
Console.WriteLine("Kérek egy szöveget: ");
string bemenet = Console.ReadLine();
Console.WriteLine("Telefonba kódsor: {0}", Kodolo.Kodol(bemenet));
using (var file = File.OpenText("szavak.txt"))
if (!string.IsNullOrEmpty(sor))
var leghosszabb = _szavak.OrderByDescending(sz => sz.Length).FirstOrDefault();
Console.WriteLine("Leghosszabb tárolt szó: {0}", leghosszabb);
Console.WriteLine("Leghosszabb tárolt szó hossza: {0}", leghosszabb.Length);
int rovidszavak = _szavak.Count(sz => sz.Length <= 5);
Console.WriteLine("{0} db rövid szó van", rovidszavak);
using (var file = File.CreateText("kodok.txt"))
foreach (var szo in _szavak)
file.WriteLine(Kodolo.Kodol(szo));
Console.WriteLine("Kérek egy számsort: ");
string szamsor = Console.ReadLine();
var illoszavak = _szavak.Where(sz => Kodolo.Kodol(sz) == szamsor);
Console.WriteLine("Talált szavak:");
foreach (var szo in illoszavak)
var azonosak = _szavak.GroupBy(sz => Kodolo.Kodol(sz)).Where(g => g.Count() > 1);
foreach (var kodcsoport in azonosak)
foreach (var szo in kodcsoport)
Console.Write("{0} : {1}; ", szo, kodcsoport.Key);
var legtobbszoegykodhoz = _szavak
.GroupBy(sz => Kodolo.Kodol(sz))
.OrderByDescending(g => g.Count())
Console.WriteLine("Legtöbb szóval rendelkező kód: {0}", legtobbszoegykodhoz.Key);
string szavak = string.Join(' ', legtobbszoegykodhoz);
Console.WriteLine(szavak);