Advertisement
Guest User

Untitled

a guest
Oct 15th, 2019
70
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 7.16 KB | None | 0 0
  1. using System;
  2. using System.IO;
  3. using System.Collections.Generic;
  4. using System.Linq;
  5. using System.Text;
  6. using System.Threading.Tasks;
  7.  
  8. namespace egyszamjatek
  9. {
  10. struct jatek
  11. {
  12. public List<int> tippek;
  13. public string nev;
  14. }
  15. class egyszamj
  16. {
  17. public static void vfbeolv(List<jatek> vek, string fajlnev)
  18. {
  19. string szovegtemp;
  20. int i;
  21. jatek vatemp;
  22. FileStream fajl = new FileStream(fajlnev, FileMode.Open);
  23. StreamReader olvaso = new StreamReader(fajl);
  24. while (!olvaso.EndOfStream)
  25. {
  26. szovegtemp = olvaso.ReadLine();
  27. string[] reszek = szovegtemp.Split(' ');
  28. vatemp.tippek = new List<int>();
  29. for (i = 0; i < reszek.Length - 1; i++)
  30. vatemp.tippek.Add(Convert.ToInt32(reszek[i]));
  31. vatemp.nev = reszek[reszek.Length - 1];
  32. vek.Add(vatemp);
  33. }
  34. olvaso.Close();
  35. fajl.Close();
  36. }
  37. }
  38. class feladatok
  39. {
  40. public static void feladat1()
  41. {
  42. Console.WriteLine("1. feladat: ");
  43. Console.WriteLine("Feladat végrehajtva. \n");
  44. }
  45. public static void feladat2(List<jatek> vek, string fajlnev, ref int fo, ref int fordsz)
  46. {
  47. Console.WriteLine("2. feladat: ");
  48. egyszamj.vfbeolv(vek, fajlnev);
  49. fo = vek.Count;
  50. fordsz = vek[0].tippek.Count;
  51. Console.WriteLine("Feladat végrehajtva. \n");
  52. }
  53. public static void feladat3(int szam)
  54. {
  55. Console.WriteLine("3. feladat: Játékosok száma: " + szam + "\n");
  56. }
  57. public static void feladat4(int szam)
  58. {
  59. Console.WriteLine("4. feladat: Fordilók száma: " + szam + "\n");
  60. }
  61. public static void feladat5(List<jatek> vek)
  62. {
  63. int i = 0;
  64. while (i < vek.Count && vek[i].tippek[0] != 1)
  65. i++;
  66. if (i < vek.Count)
  67. Console.WriteLine("5. feladat: " + "Az első fordulóban volt egyes tipp." + "\n");
  68. else
  69. Console.WriteLine("5. feladat: " + "Az első fordulóban nem volt egyes tipp." + "\n");
  70. }
  71. public static void feladat6(List<jatek> vek)
  72. {
  73. int i, j, maxtemp = vek[0].tippek[0];
  74. for (i = 0; i < vek.Count; i++)
  75. for (j = 0; j < vek[i].tippek.Count; j++)
  76. if (vek[i].tippek[j] > maxtemp)
  77. maxtemp = vek[i].tippek[j];
  78.  
  79. Console.WriteLine("6. feladat: A legnagyobb tipp a fordulók során: " + 13 + "\n");
  80. }
  81. public static void feladat7(ref int fsorsz)
  82. {
  83. string fsorsztemp;
  84. Console.Write("7. feladat: Kérem a fordulók sorszámát [1-10]: ");
  85. fsorsztemp = Console.ReadLine();
  86. fsorsz = Convert.ToInt32(fsorsztemp);
  87. if (fsorsz < 1 || fsorsz > 10)
  88. fsorsz = 1;
  89. Console.WriteLine();
  90. }
  91. public static void feladat8(List<jatek> vek, int fsorsz1_10, ref int nytipp, ref string nyjat,
  92. ref bool vanny)
  93. {
  94. int i, j, mintemp, sorsztemp, fsorsz = fsorsz1_10 - 1;
  95. bool vannyero;
  96. HashSet<int> tipphalmaz = new HashSet<int>();
  97. for (i = 0; i < vek.Count; i++)
  98. tipphalmaz.Add(vek[i].tippek[fsorsz]);
  99. int[] tipphalmazvek = new int[tipphalmaz.Count];
  100. tipphalmazvek = tipphalmaz.ToArray();
  101. int[] tipphalmazvekdb = new int[tipphalmaz.Count];
  102. for (i = 0; i < tipphalmaz.Count; i++)
  103. {
  104. tipphalmazvekdb[i] = 0;
  105. for (j = 0; j < vek.Count; j++)
  106. if (tipphalmazvek[i] == vek[j].tippek[fsorsz])
  107. tipphalmazvekdb[i]++;
  108. }
  109. i = 0;
  110. while (i < tipphalmaz.Count && tipphalmazvek[i] != 1)
  111. i++;
  112. vannyero = i < tipphalmaz.Count;
  113. vanny = i < tipphalmaz.Count;
  114. if (vanny)
  115. {
  116. j = 0;
  117. while (j < tipphalmaz.Count && tipphalmazvekdb[j] != 1)
  118. j++;
  119. mintemp = tipphalmazvek[j];
  120. for (i = j + 1; i < tipphalmaz.Count; i++)
  121. if (tipphalmazvek[i] < mintemp && tipphalmazvekdb[i] == 1)
  122. mintemp = tipphalmazvek[i];
  123. sorsztemp = 0;
  124. while (sorsztemp < vek.Count && vek[sorsztemp].tippek[fsorsz] != mintemp)
  125. sorsztemp++;
  126.  
  127. Console.WriteLine("8. feladat: A nyertes tipp a megadott fordulóban: " +
  128. vek[sorsztemp].tippek[fsorsz] + "\n");
  129. nytipp = vek[sorsztemp].tippek[fsorsz];
  130. nyjat = vek[sorsztemp].nev;
  131. }
  132. else
  133. Console.WriteLine("8. feladat: " + "Nem volt egyedi tipp a megadott fordulóban." + "\n");
  134.  
  135. }
  136. public static void feladat9(string nyjat, bool vanny)
  137. {
  138. if (vanny)
  139. Console.WriteLine("9. feladat: A megadott forduló nyertese: " + nyjat + "\n");
  140. else
  141. Console.WriteLine("9. feladat: Nem volt nyertes a megadott fordulóban." + "\n");
  142. }
  143. public static void feladat10(bool vanny, int nysorsz, int nytipp, string nyeroszemely,
  144. string fajlnev)
  145. {
  146. if (vanny)
  147. {
  148. FileStream fajl = new FileStream(fajlnev, FileMode.Create);
  149. StreamWriter iro = new StreamWriter(fajl);
  150. iro.WriteLine("Forduló sorszáma: " + nysorsz);
  151. iro.WriteLine("Nyertes tipp: " + nytipp);
  152. iro.WriteLine("Nyertes játékos: " + nyeroszemely);
  153. iro.Close();
  154. fajl.Close();
  155.  
  156. }
  157. Console.WriteLine("10. feladat: ");
  158. Console.WriteLine("Feladat végrehajtva. \n");
  159. }
  160. }
  161. class Program
  162. {
  163. static void Main(string[] args)
  164. {
  165. List<jatek> jatszma = new List<jatek>();
  166. int fordulokszama = 0, jatekosokszama = 0, adottfordulo = 0, nyertestipp = 0;
  167. bool vannyertes = false;
  168. string nyertesjatekos = "";
  169. feladatok.feladat1();
  170. feladatok.feladat2(jatszma, "egyszamjatek.txt", ref jatekosokszama, ref fordulokszama);
  171. feladatok.feladat3(jatekosokszama);
  172. feladatok.feladat4(fordulokszama);
  173. feladatok.feladat5(jatszma);
  174. feladatok.feladat6(jatszma);
  175. feladatok.feladat7(ref adottfordulo);
  176. feladatok.feladat8(jatszma, adottfordulo, ref nyertestipp, ref nyertesjatekos,
  177. ref vannyertes);
  178. feladatok.feladat9();
  179. feladatok.feladat10(vannyertes, adottfordulo, nyertestipp, nyertesjatekos, "nyertes.txt");
  180.  
  181.  
  182. Console.ReadKey();
  183. }
  184. }
  185. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement