Advertisement
Guest User

Untitled

a guest
Feb 24th, 2020
72
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.57 KB | None | 0 0
  1. using System;
  2. using System.Collections.Generic;
  3. using System.IO;
  4.  
  5. namespace ut
  6. {
  7. class Program
  8. {
  9. static void Main(string[] args)
  10. {
  11. StreamReader sr = new StreamReader("forgalom.txt");
  12.  
  13. List<int> ora = new List<int>();
  14. List<int> perc = new List<int>();
  15. List<int> masodP = new List<int>();
  16. List<int> athalad = new List<int>();
  17. List<string> merre = new List<string>();
  18.  
  19. int osszes = int.Parse(sr.ReadLine());
  20.  
  21. while (!sr.EndOfStream)
  22. {
  23. string[] tmp = sr.ReadLine().Split(' ');
  24. ora.Add(int.Parse(tmp[0]));
  25. perc.Add(int.Parse(tmp[1]));
  26. masodP.Add(int.Parse(tmp[2]));
  27. athalad.Add(int.Parse(tmp[3]));
  28. merre.Add(tmp[4]);
  29. }
  30. Console.Write("1.feladat:\tAdatok beolvasása kész!\n2.feladat:\tN-edik jármű haladási iránya (1-től 1105ig):\t");
  31. int n = int.Parse(Console.ReadLine());
  32. string valasz = "";
  33. if (merre[n - 1] == "F")
  34. {
  35. valasz = "Felső";
  36. }
  37. else
  38. {
  39. valasz = "Alsó";
  40. }
  41.  
  42. Console.WriteLine("A {0}. jármű {1} város irányába ment", n, valasz);
  43. int max = 0;
  44. int max2 = 0;
  45.  
  46. for (int i = 0; i < merre.Count; i++)
  47. {
  48. if (merre[i] == "F")
  49. {
  50. max = i;
  51.  
  52. }
  53.  
  54. }
  55. for (int i = 0; i < max; i++)
  56. {
  57. if (merre[i] == "F")
  58. {
  59. max2 = i;
  60.  
  61. }
  62.  
  63. }
  64. int kulonbseg = (ora[max] * 60 * 60 + perc[max] * 60 + masodP[max]) - (ora[max2] * 60 * 60 + perc[max2] * 60 + masodP[max2]);
  65.  
  66. Console.WriteLine("3.feladat:\tFelső város irányába haladó utolsó két jármű {0} másodperc különbséggel érték el az utszakasz kezdetét.", kulonbseg);
  67. List<int[]> oraSzerint = new List<int[]>();
  68.  
  69. Console.WriteLine("4.feladat:\tórák szerint hány jármű haladt át(óra, alsó, felső):");
  70. for (int i = 0; i <= 24; i++)
  71. {
  72. if (ora.Contains(i))
  73. {
  74. int f = 0;
  75. int a = 0;
  76. for (int j = 0; j < ora.Count; j++)
  77. {
  78. if (ora[j] == i && merre[j] == "F")
  79. {
  80. f++;
  81. }
  82. if (ora[j] == i && merre[j] == "A")
  83. {
  84. a++;
  85. }
  86. }
  87. Console.WriteLine("{0}\t{1}\t{2}", i, a, f);
  88. }
  89.  
  90. }
  91.  
  92. Console.WriteLine("5.feladat:\t10 leggyorsabb jármű adatai:");
  93.  
  94. List<double> seb = new List<double>();
  95. double maxSeb = 0;
  96. List<int> indexek = new List<int>();
  97.  
  98. for (int i = 0; i < ora.Count; i++)
  99. {
  100. double tmp = 1000 / double.Parse(athalad[i]);
  101. seb.Add(Math.Round(tmp, 1));
  102. if (tmp>maxSeb)
  103. {
  104. maxSeb = tmp;
  105. indexek.Add(i);
  106. }
  107. maxSeb = maxSeb - 0.1;
  108.  
  109. }
  110.  
  111. List<double> tizseb = new List<double>();
  112. tizseb.Add(maxSeb);
  113.  
  114.  
  115. while (tizseb.Count-1!<10)
  116. {
  117. for (int i = 0; i < seb.Count; i++)
  118. {
  119. if (seb[i]>maxSeb)
  120. {
  121. tizseb.Add(seb[i]);
  122.  
  123. }
  124. }
  125. }
  126. Console.WriteLine( );
  127. for (int i = 0; i < tizseb.Count; i++)
  128. {
  129. Console.WriteLine("{4}.leggyorsabb autó {0}:{1}:{2}-kor {3} felétartott",ora[indexek[i]],perc[indexek[i]], masodP[indexek[i]],merre[indexek[i]],i);
  130. }
  131.  
  132.  
  133.  
  134. StreamWriter sw = new StreamWriter("also.txt");
  135.  
  136. /*for (int i = 0; i < ora.Count - 1; i++)
  137. {
  138. if (merre[i] == "A")
  139. {
  140. int osszmp = ora[i] * 60 * 60 + perc[i] * 60 + masodP[i] + athalad2[i];
  141. int osszmp1 = ora[i + 1] * 60 * 60 + perc[i + 1] * 60 + masodP[i + 1] + athalad2[i + 1];
  142. if ((osszmp) - (osszmp1) <= 0)
  143. {
  144. sw.Write(osszmp1 / (60 * 60));
  145. sw.Write(" ");
  146. sw.Write((osszmp1 - (osszmp1 / (60 * 60))) / 60);
  147. sw.Write(" ");
  148. sw.Write(((osszmp1 - (osszmp1 / (60 * 60)) - (osszmp1 - (osszmp1 / (60 * 60)) / 60))) / 60);
  149. sw.WriteLine();
  150. }
  151. else
  152. {
  153. sw.Write(osszmp / (60 * 60));
  154. sw.Write(" ");
  155. sw.Write((osszmp - (osszmp / (60 * 60) * 60 * 60)) / 60);
  156. sw.Write(" ");
  157. sw.Write(osszmp - ((osszmp - (osszmp / (60 * 60) * 60 * 60)) / 60 * 60));
  158. sw.WriteLine();
  159. }
  160. }
  161. }
  162.  
  163.  
  164. sw.Close();*/
  165. Console.ReadKey();
  166. }
  167. }
  168. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement