====== 2012 május - programozás feladat ====== using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.IO; namespace futar { class Program { static int[,] fuvarHossz = new int[7,40]; // nap, fuvarszám --> fuvar hosszú static int napiFuvarszam(int nap) { int fsz = 0; while (fsz < 40 && fuvarHossz[nap, fsz] > -1) fsz++; return fsz; } static void Beolvasas() { // Alaphelyzetbe állítás for (int nap = 0; nap < 7; nap++) { for (int fsz = 0; fsz < 40; fsz++) { fuvarHossz[nap, fsz] = -1; } } // Beolvasás StreamReader be = new StreamReader("tavok.txt"); string sor; while ((sor = be.ReadLine()) != null) { string[] mezo = sor.Split(' '); fuvarHossz[ Convert.ToInt32(mezo[0])-1, Convert.ToInt32(mezo[1])-1 ] = Convert.ToInt32(mezo[2]); } be.Close(); // Kiiratás - ellenőrzésként... for (int nap = 0; nap < 7; nap++) { for (int fsz = 0; fsz < 40; fsz++) { Console.Write(fuvarHossz[nap, fsz] + " "); } Console.WriteLine(); } } static void feladat2() { Console.WriteLine("\n2. feladat:"); // Az első fuvar hossza int nap = 0; while (nap < 7 && fuvarHossz[nap, 0] == -1) nap++; if (nap < 7) Console.WriteLine("Az első fuvar hossza {0} km volt.", fuvarHossz[nap, 0]); else Console.WriteLine("Nem volt egyetlen fuvar sem."); } static void feladat3() { Console.WriteLine("\n3. feladat:"); // Utolsó fuvar hossza int nap = 6; while (nap >= 0 && fuvarHossz[nap, 0] == -1) nap--; if (nap < 0) Console.WriteLine("Nem volt egyetlen fuvar sem."); else { int fsz = 39; while (fuvarHossz[nap, fsz] == -1) fsz--; Console.WriteLine("Az utolsó fuvar hossza {0} km volt.", fuvarHossz[nap, fsz]); } } static void feladat4() { Console.WriteLine("\n4. feladat:"); string[] aHetNapjai = {"Hétfő", "Kedd","Szerda", "Csütörtök", "Péntek","Szombat","Vasárnap"}; // A futár szabadnapjai for (int nap = 0; nap < 7; nap++) { if (fuvarHossz[nap, 0] == -1) Console.WriteLine("Szabadnapos a(z) {0}. ({1}) napon", nap+1, aHetNapjai[nap]); } } static void feladat5() { Console.WriteLine("\n5. feladat:"); // Legtöbb fuvarú nap sorszáma int maxNap = 0; int maxFsz = napiFuvarszam(0); for (int nap = 1; nap < 7; nap++) { if (napiFuvarszam(nap) > maxFsz) { maxFsz = napiFuvarszam(nap); maxNap = nap; } } Console.WriteLine("A legtöbb fuvart a(z) {0}. napon bonyolította le.", maxNap); } static void Main(string[] args) { Beolvasas(); feladat2(); feladat3(); feladat4(); feladat5(); Console.ReadKey(); } } }