slemiba

Untitled

Feb 1st, 2018
162
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Threading.Tasks;
  6. using System.IO;
  7.  
  8. namespace helyjeg
  9. {
  10.     class Program
  11.     {
  12.         static void Main(string[] args)
  13.         {
  14.             //1. oldaás
  15.             /*
  16.             StreamReader sr = new StreamReader(@"z:\Forrasok\4_Helyjegy\eladott.txt");
  17.             string atm_sor;
  18.             string[] jegyadatok = new string[500];
  19.             int i = 0;
  20.             while ((atm_sor=sr.ReadLine())!=null)
  21.             {
  22.                 jegyadatok[i] = atm_sor;
  23.                 i++;
  24.             }
  25.             */
  26.             Console.WriteLine("1. feladat");
  27.  
  28.             string[] file = new string[500];
  29.             file = System.IO.File.ReadAllLines(@"z:\Forrasok\4_Helyjegy\eladott.txt");
  30.  
  31.             //file[0];
  32.             string[] atm_elso_sor = file[0].Split(' ');
  33.  
  34.             int jegyek_szama = Convert.ToInt32(atm_elso_sor[0]);
  35.             int vonal_hossza = Convert.ToInt32(atm_elso_sor[1]);
  36.             int fize_km = Convert.ToInt32(atm_elso_sor[2]);
  37.  
  38.             Console.WriteLine("Adatok beolvasása, kész");
  39.  
  40.             // 2. feladat
  41.  
  42.             Console.WriteLine("2. feladat");
  43.             string[] xy_sor = file[jegyek_szama].Split(' ');
  44.             int h_km = Convert.ToInt32(xy_sor[1]);
  45.             int m_km = Convert.ToInt32(xy_sor[2]);
  46.  
  47.             Console.WriteLine("Az utolsó jegyvásárló ülésének száma: {0}, megtett km-e: {1}", xy_sor[0], m_km - h_km);
  48.  
  49.  
  50.             // 3. feladat
  51.             // Kik utazták végig a teljes utat...
  52.             Console.WriteLine("3. feladat");
  53.  
  54.             for (int i = 1; i < jegyek_szama + 1; i++)
  55.             {
  56.                 //jegyek ellenőzése
  57.                 // file[]
  58.  
  59.                 string[] jegyek_atm = file[i].Split(' ');
  60.                 int jh_km = Convert.ToInt32(jegyek_atm[1]);
  61.                 int jm_km = Convert.ToInt32(jegyek_atm[2]);
  62.  
  63.                 if ((jh_km == 0) && jm_km == vonal_hossza)
  64.                 {
  65.                     Console.Write("{0} ", i);
  66.                 }
  67.  
  68.             }
  69.             Console.WriteLine();
  70.  
  71.             // 4. feladat bevételszámítás
  72.             // fize_km | 10km
  73.             Console.WriteLine("4. feladat");
  74.             int ossz_fizetett = 0;
  75.             for (int i = 1; i < jegyek_szama + 1; i++)
  76.             {
  77.  
  78.                 string[] jegyek_atm = file[i].Split(' ');
  79.                 int jh_km = Convert.ToInt32(jegyek_atm[1]);
  80.                 int jm_km = Convert.ToInt32(jegyek_atm[2]);
  81.  
  82.                 int kul_km = jm_km - jh_km;
  83.                 int szorzo = kul_km / 10;
  84.  
  85.                 if (kul_km % 10 != 0)
  86.                 {
  87.                     szorzo++;
  88.                 }
  89.                 // jegy árával
  90.                 int fizetett = szorzo * fize_km;
  91.  
  92.                if (fizetett%10==1 )
  93.                 {
  94.                     //lefelé
  95.                     fizetett--;
  96.                 }
  97.                 if (fizetett % 10 == 2)
  98.                 {
  99.                     //lefelé
  100.                     fizetett -= 2;
  101.                 }
  102.                 if (fizetett % 10 == 6)
  103.                 {
  104.                     //lefelé
  105.                     fizetett--;
  106.                 }
  107.                 if (fizetett % 10 == 7)
  108.                 {
  109.                     //lefelé
  110.                     fizetett -= 2;
  111.                 }
  112.                 if (fizetett % 10 == 3)
  113.                 {
  114.                     //fel
  115.                     fizetett += 2;
  116.                 }
  117.                 if (fizetett % 10 == 4)
  118.                 {
  119.                     //fel
  120.                     fizetett++;
  121.                 }
  122.                 if (fizetett % 10 == 8)
  123.                 {
  124.                     //fel
  125.                     fizetett += 2;
  126.                 }
  127.                 if (fizetett % 10 == 9)
  128.                 {
  129.                     //fel
  130.                     fizetett++;
  131.                 }
  132.  
  133.  
  134.  
  135.                 //összes jegy ára
  136.                 ossz_fizetett += fizetett;
  137.                
  138.  
  139.             }
  140.  
  141.             Console.WriteLine("A társaság bevétele: {0}", ossz_fizetett);
  142.  
  143.  
  144.             Console.WriteLine("5. feladat");
  145.             // vonal_hossza - végállomás km
  146.  
  147.             // hányas km-nél volt az utolsó megállás
  148.             // maximum tétel, még kisebb, legyen a vonal_hossza
  149.  
  150.             int max = 0;
  151.             for (int i = 1; i < jegyek_szama + 1; i++)
  152.             {
  153.                 string[] jegyek_atm = file[i].Split(' ');
  154.                 int jh_km = Convert.ToInt32(jegyek_atm[1]);
  155.                 int jm_km = Convert.ToInt32(jegyek_atm[2]);
  156.                 if (jh_km>max && jh_km!=vonal_hossza)
  157.                 {
  158.                     max = jh_km;
  159.                 }
  160.                 if (jm_km > max && jm_km != vonal_hossza)
  161.                 {
  162.                     max = jm_km;
  163.                 }
  164.  
  165.  
  166.             }
  167.             //Console.WriteLine(max);
  168.             // max - utolsó megálló km-ben
  169.             int leszallo = 0;
  170.             int felszallo = 0;
  171.             for (int i = 1; i < jegyek_szama + 1; i++)
  172.             {
  173.                 string[] jegyek_atm = file[i].Split(' ');
  174.                 int jh_km = Convert.ToInt32(jegyek_atm[1]);
  175.                 int jm_km = Convert.ToInt32(jegyek_atm[2]);
  176.  
  177.                 if (max == jh_km) felszallo++;
  178.                 if (max == jm_km) leszallo++;
  179.  
  180.             }
  181.             Console.WriteLine("Utolsó előttinél leszállók: {0} felszállók: {1}", leszallo, felszallo);
  182.  
  183.             // 6. feladat
  184.             // hány helyen állt meg
  185.             // unió tétel
  186.             int[] megállók_km = new int[200];
  187.             int km_db = 0;
  188.             for (int i = 1; i < jegyek_szama + 1; i++)
  189.             {
  190.                 string[] jegyek_atm = file[i].Split(' ');
  191.                 int jh_km = Convert.ToInt32(jegyek_atm[1]);
  192.                 int jm_km = Convert.ToInt32(jegyek_atm[2]);
  193.  
  194.                 //h, m,
  195.  
  196.  
  197.                 // unió tétel
  198.                 // belepakolni, ha még nincs benne a megállók_km-be.
  199.                 bool benne_vane = false;
  200.                
  201.                 for (int j=0;j<megállók_km.Length;j++)
  202.                 {
  203.                     if (megállók_km[j] == jh_km)
  204.                     {
  205.                         benne_vane = true;
  206.                     }
  207.                    
  208.                 }
  209.  
  210.                 if (benne_vane == false)
  211.                 {
  212.                     megállók_km[km_db] = jh_km;
  213.                     km_db++;
  214.                 }
  215.  
  216.                 //
  217.                 for (int j = 0; j < megállók_km.Length; j++)
  218.                 {
  219.                     if (megállók_km[j] == jm_km)
  220.                     {
  221.                         benne_vane = true;
  222.                     }
  223.  
  224.                 }
  225.  
  226.                 if (benne_vane == false)
  227.                 {
  228.                     megállók_km[km_db] = jm_km;
  229.                     km_db++;
  230.                 }
  231.  
  232.  
  233.             }
  234.             Console.WriteLine("megállók száma: {0}", km_db);
  235.  
  236.  
  237.             Console.WriteLine("7. feladat");
  238.             Console.WriteLine("Kérem adja meg a km-t!");
  239.             int be_km = Convert.ToInt32(Console.ReadLine());
  240.             string[] ulesek = new string[49];
  241.             for (int i=0;i<49;i++)
  242.             {
  243.                 ulesek[i] = "üres";
  244.             }
  245.             for (int i = 1; i < jegyek_szama + 1; i++)
  246.             {
  247.                 string[] jegyek_atm = file[i].Split(' ');
  248.                 int usz = Convert.ToInt32(jegyek_atm[0]);
  249.                 int jh_km = Convert.ToInt32(jegyek_atm[1]);
  250.                 int jm_km = Convert.ToInt32(jegyek_atm[2]);
  251.  
  252.                 if (be_km>jh_km && be_km<jm_km)
  253.                 {
  254.                     ulesek[usz] = i + ". utas";
  255.                 }
  256.  
  257.             }
  258.             StreamWriter sw = new StreamWriter(@"C:\_temp\kihol.txt");
  259.             for(int i=1;i<49;i++)
  260.             {
  261.                 Console.WriteLine("{0}. ülés: {1}", i, ulesek[i]);
  262.                 sw.WriteLine("{0}. ülés: {1}", i, ulesek[i]);
  263.             }
  264.             sw.Close();
  265.  
  266.  
  267.             }
  268.     }
  269. }
RAW Paste Data