Osztó program kész
This commit is contained in:
parent
4dc6e06c8d
commit
4d5da751ae
|
@ -2,6 +2,7 @@
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
|
|
||||||
|
|
||||||
namespace Oszto
|
namespace Oszto
|
||||||
{
|
{
|
||||||
class Csomag
|
class Csomag
|
||||||
|
@ -10,11 +11,13 @@ namespace Oszto
|
||||||
public static readonly string[] frertekek = { "2", "3", "4", "5", "6", "7", "8", "9", "10", "J", "D", "K", "A" };
|
public static readonly string[] frertekek = { "2", "3", "4", "5", "6", "7", "8", "9", "10", "J", "D", "K", "A" };
|
||||||
|
|
||||||
public Kartyalap[] lapok;
|
public Kartyalap[] lapok;
|
||||||
|
private int ennyivan;
|
||||||
|
|
||||||
|
|
||||||
public Csomag()
|
public Csomag()
|
||||||
{
|
{
|
||||||
lapok = new Kartyalap[52];
|
lapok = new Kartyalap[52];
|
||||||
|
ennyivan = 52;
|
||||||
int lit = 0;
|
int lit = 0;
|
||||||
for (int i = 0; i < frszinek.Length; i++)
|
for (int i = 0; i < frszinek.Length; i++)
|
||||||
{
|
{
|
||||||
|
@ -52,6 +55,19 @@ namespace Oszto
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public Kartyalap[] huzas(int lapszam)
|
||||||
|
{
|
||||||
|
Kartyalap[] kt = new Kartyalap[lapszam];
|
||||||
|
for (int i = 0; i < lapszam; i++)
|
||||||
|
{
|
||||||
|
kt[i] = lapok[ennyivan - (1 + i)];
|
||||||
|
lapok[ennyivan - (1 + i)] = null;
|
||||||
|
}
|
||||||
|
ennyivan -= lapszam;
|
||||||
|
return kt;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
40
Oszto/Jatekos.cs
Normal file
40
Oszto/Jatekos.cs
Normal file
|
@ -0,0 +1,40 @@
|
||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Text;
|
||||||
|
|
||||||
|
namespace Oszto
|
||||||
|
{
|
||||||
|
class Jatekos
|
||||||
|
{
|
||||||
|
public Kartyalap[] lapok;
|
||||||
|
public string nev;
|
||||||
|
private int ennyivan;
|
||||||
|
|
||||||
|
public Jatekos(string nev,int lszam)
|
||||||
|
{
|
||||||
|
this.nev = nev;
|
||||||
|
lapok = new Kartyalap[lszam];
|
||||||
|
ennyivan = 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void felvesz(Kartyalap[] osztas)
|
||||||
|
{
|
||||||
|
for (int i = 0; i < osztas.Length; i++)
|
||||||
|
{
|
||||||
|
lapok[ennyivan + i] = osztas[i];
|
||||||
|
}
|
||||||
|
ennyivan += osztas.Length;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void terit()
|
||||||
|
{
|
||||||
|
Console.WriteLine(nev);
|
||||||
|
foreach (Kartyalap lap in lapok)
|
||||||
|
{
|
||||||
|
Console.Write(lap.szin+"-"+lap.ertek+" ");
|
||||||
|
}
|
||||||
|
Console.WriteLine();
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
|
@ -9,6 +9,7 @@ namespace Oszto
|
||||||
public string szin;
|
public string szin;
|
||||||
public string ertek;
|
public string ertek;
|
||||||
|
|
||||||
|
|
||||||
public Kartyalap()
|
public Kartyalap()
|
||||||
{
|
{
|
||||||
szin = "nincs";
|
szin = "nincs";
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
using System;
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
|
||||||
namespace Oszto
|
namespace Oszto
|
||||||
{
|
{
|
||||||
|
@ -8,6 +9,59 @@ namespace Oszto
|
||||||
{
|
{
|
||||||
Csomag pakli = new Csomag();
|
Csomag pakli = new Csomag();
|
||||||
pakli.kever();
|
pakli.kever();
|
||||||
|
|
||||||
|
try
|
||||||
|
{
|
||||||
|
Console.WriteLine("Adja meg hány játékosnak osztok lapot:");
|
||||||
|
int jszam = int.Parse(Console.ReadLine());
|
||||||
|
Console.WriteLine("Adja meg hány lapot osztok egy játékosnak:");
|
||||||
|
int lszam = int.Parse(Console.ReadLine());
|
||||||
|
Console.WriteLine("Adja meg hányasával osszam a lapokat:");
|
||||||
|
int hszam = int.Parse(Console.ReadLine());
|
||||||
|
|
||||||
|
if (jszam*lszam>52)
|
||||||
|
{
|
||||||
|
throw new Exception("Nem lehet ennyi lapot kiosztani!");
|
||||||
|
}
|
||||||
|
if(lszam%hszam!=0)
|
||||||
|
{
|
||||||
|
throw new Exception("Nem lehet ilyen adagokban kiosztani lapokat!");
|
||||||
|
}
|
||||||
|
|
||||||
|
List<Jatekos> jatekosok = new List<Jatekos>();
|
||||||
|
for (int i = 0; i < jszam; i++)
|
||||||
|
{
|
||||||
|
jatekosok.Add(new Jatekos("játékos" + i,lszam));
|
||||||
|
}
|
||||||
|
|
||||||
|
//az osztás végrehajtása
|
||||||
|
int kor = lszam / hszam;
|
||||||
|
for (int i = 0; i < kor; i++)
|
||||||
|
{
|
||||||
|
for (int j = 0; j < jatekosok.Count; j++)
|
||||||
|
{
|
||||||
|
Kartyalap[] adag = pakli.huzas(hszam);
|
||||||
|
jatekosok[j].felvesz(adag);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
for (int j = 0; j < jatekosok.Count; j++)
|
||||||
|
{
|
||||||
|
jatekosok[j].terit();
|
||||||
|
}
|
||||||
|
|
||||||
|
foreach (var item in pakli.lapok)
|
||||||
|
{
|
||||||
|
Console.WriteLine(item);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
catch (Exception hiba)
|
||||||
|
{
|
||||||
|
Console.WriteLine(hiba.Message);
|
||||||
|
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue
Block a user