Advertisement
minnera

Informatika emelt 2012 c#

May 19th, 2012
891
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 6.50 KB | None | 0 0
  1. using System;
  2. using System.IO;
  3. using System.Text;
  4.  
  5. namespace futar
  6. {
  7.     class futar
  8.     {
  9.         static int dijazas(int hossz)
  10.         {
  11.             int dij = 0;
  12.             if(hossz < 3)
  13.             {
  14.                 dij = 500;
  15.             }
  16.             else if(hossz < 6)
  17.             {
  18.                 dij = 700;
  19.             }
  20.             else if (hossz < 11)
  21.             {
  22.                 dij = 900;
  23.             }
  24.             else if (hossz < 21)
  25.             {
  26.                 dij = 1400;
  27.             }
  28.             else
  29.             {
  30.                 dij = 2000;
  31.             }
  32.             return dij;
  33.         }
  34.         static void Main()
  35.         {
  36.             //1. feladat
  37.             Console.WriteLine("1. feladat : Beolvasás");
  38.             FileStream fs = new FileStream("tavok.txt",FileMode.Open);
  39.             StreamReader rs = new StreamReader(fs);
  40.             int db = 0;
  41.             while(!rs.EndOfStream)
  42.             {
  43.                 rs.ReadLine();
  44.                 db++;
  45.             }
  46.             rs.Close();
  47.             fs.Close();
  48.             fs = new FileStream("tavok.txt", FileMode.Open);
  49.             rs = new StreamReader(fs);
  50.             int[,] adatok = new int[db,3];
  51.             string seged = "";
  52.             for (int i = 0; i < db; i++)
  53.             {
  54.                 seged = rs.ReadLine();
  55.                 string[] split = new string[3];
  56.                 split = seged.Split(' ');
  57.                 for (int j = 0; j < 3; j++)
  58.                 {
  59.                     adatok[i, j] = Convert.ToInt32(split[j]);
  60.                 }
  61.             }
  62.             rs.Close();
  63.             fs.Close();
  64.             Console.WriteLine("Beolvasás megtörtént.");
  65.             Console.ReadKey();
  66.             //2. feladat
  67.             Console.Clear();
  68.             Console.WriteLine("2. feladat : Legelső út");
  69.             int min = 0;
  70.             for (int i = 1; i < db; i++)
  71.             {
  72.                 if(adatok[min,0] > adatok[i,0])
  73.                 {
  74.                     min = i;
  75.                 }
  76.             }
  77.             for (int i = 0; i < db; i++)
  78.             {
  79.                 if(adatok[i,0] == adatok[min,0] && adatok[i,1] == 1)
  80.                 {
  81.                     Console.WriteLine(adatok[i,2] + " km hosszú volt.");
  82.                 }
  83.             }
  84.             Console.ReadKey();
  85.             //3. feladat
  86.             Console.Clear();
  87.             Console.WriteLine("3. feladat : Utolsó út");
  88.             int max = 0;
  89.             for (int i = 1; i < db; i++)
  90.             {
  91.                 if (adatok[max, 0] < adatok[i, 0])
  92.                 {
  93.                     max = i;
  94.                 }
  95.             }
  96.             int max2 = 1;
  97.             for (int i = 0; i < db; i++)
  98.             {
  99.                 if(adatok[i,0] == adatok[max,0] && adatok[i,1] > max2)
  100.                 {
  101.                     max2 = adatok[i, 1];
  102.                 }
  103.             }
  104.             for (int i = 0; i < db; i++)
  105.             {
  106.                 if(adatok[i,0] == adatok[max,0] && adatok[i,1] == max2)
  107.                 {
  108.                     Console.WriteLine(adatok[i,2] + " km hosszú volt.");
  109.                 }
  110.             }
  111.             Console.ReadKey();
  112.             //4. feladat
  113.             Console.Clear();
  114.             Console.WriteLine("4. feladat : Szabadnapok");
  115.             int[] napok = new int[7]{0,0,0,0,0,0,0};
  116.             for (int i = 0; i < db; i++)
  117.             {
  118.                 napok[adatok[i, 0] - 1]++;
  119.             }
  120.             for (int i = 0; i < 7; i++)
  121.             {
  122.                 if(napok[i] == 0)
  123.                 {
  124.                     Console.WriteLine((i+1) + ". nap szabadnap volt.");
  125.                 }
  126.             }
  127.             Console.ReadKey();
  128.             //5. feladat
  129.             Console.Clear();
  130.             Console.WriteLine("5. feladat : Az egyik legforgalmasabb nap");
  131.             max = 0;
  132.             for (int i = 1; i < 7; i++)
  133.             {
  134.                 if(napok[i] > napok[max])
  135.                 {
  136.                     max = i;
  137.                 }
  138.             }
  139.             Console.WriteLine((max + 1) + ". nap");
  140.             Console.ReadKey();
  141.             //6. feladat
  142.             Console.Clear();
  143.             Console.WriteLine("6. feladat : Napi táv");
  144.             int[] km = new int[7]{0,0,0,0,0,0,0};
  145.             for (int i = 0; i < db; i++)
  146.             {
  147.                 km[adatok[i, 0] - 1] += adatok[i, 2];
  148.             }
  149.             for (int i = 0; i < 7; i++)
  150.             {
  151.                 Console.WriteLine((i + 1) + ". nap: " + km[i] + " km");
  152.             }
  153.             Console.ReadKey();
  154.             //7. feladat
  155.             Console.Clear();
  156.             Console.WriteLine("7. feladat : Adja meg hány km hosszú a kérdéses táv(max 30 km)!");
  157.             int hossz = Convert.ToInt32(Console.ReadLine());
  158.             Console.WriteLine(dijazas(hossz) + " Ft díjazás jár érte.");
  159.             Console.ReadKey();
  160.             //8. feladat
  161.             Console.Clear();
  162.             Console.WriteLine("8. feladat : Kiírás");
  163.             int a = 0;
  164.             for (int i = 0; i < db; i++)
  165.             {
  166.                 for (int j = db - 1; j > i; j--)
  167.                 {
  168.                     if ((adatok[j, 0] * 100 + adatok[j, 1]) < (adatok[j - 1, 0] * 100 + adatok[j - 1, 1]))
  169.                     {
  170.                         a = adatok[j, 0];
  171.                         adatok[j, 0] = adatok[j - 1, 0];
  172.                         adatok[j - 1, 0] = a;
  173.                         a = adatok[j, 1];
  174.                         adatok[j, 1] = adatok[j - 1, 1];
  175.                         adatok[j - 1, 1] = a;
  176.                         a = adatok[j, 2];
  177.                         adatok[j, 2] = adatok[j - 1, 2];
  178.                         adatok[j - 1, 2] = a;
  179.                     }
  180.                 }
  181.             }
  182.             a = 0;
  183.             fs = new FileStream("dijazas.txt",FileMode.Create);
  184.             StreamWriter ws = new StreamWriter(fs);
  185.             for (int i = 0; i < db; i++)
  186.             {
  187.                 ws.WriteLine(adatok[i,0] + ". nap " + adatok[i,1] + ". út: " + dijazas(adatok[i,2]) + " Ft");
  188.                 a += dijazas(adatok[i,2]);
  189.             }
  190.             ws.Close();
  191.             fs.Close();
  192.             Console.WriteLine("Kiírás megtörtént.");
  193.             Console.ReadKey();
  194.             //9. feladat
  195.             Console.Clear();
  196.             Console.WriteLine("9. feladat : Heti díjazás");
  197.             Console.WriteLine(a + " Ft-ot kap e heti munkájáért.");
  198.             Console.ReadKey();
  199.         }
  200.     }
  201. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement