SHARE
TWEET

Untitled

a guest Oct 15th, 2019 75 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  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/*vannyero*/)
  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 nyertes 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." + nyjat + "\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.                 StreamReader iro = new StreamReader(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.     }
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
Not a member of Pastebin yet?
Sign Up, it unlocks many cool features!
 
Top