using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace CardDealer
{
class Deck
{
string[] deck = new string[52];
string[] name = new string[13];
string[] suits = new string[4];
public Deck()
{
name[0] = "Ace ";
name[1] = "Two ";
name[2] = "Three ";
name[3] = "Four ";
name[4] = "Five ";
name[5] = "Six ";
name[6] = "Seven ";
name[7] = "Eight ";
name[8] = "Nine ";
name[9] = "Ten ";
name[10] = "Unterknave ";
name[11] = "Oberknave ";
name[12] = "King ";
suits[0] = "of Hearts";
suits[1] = "of Bells";
suits[2] = "of Acorns";
suits[4] = "of Leaves";
for (int i = 0; i < 13; i++)
{
deck[i] = name[i] + suits[0];
}
for (int i = 0; i < 13; i++)
{
deck[i + 13] = name[i] + suits[1];
}
for (int i = 0; i < 13; i++)
{
deck[i + 26] = name[i] + suits[2];
}
for (int i = 0; i < 13; i++)
{
deck[i + 39] = name[i] + suits[3];
}
}
Random rnd = new Random();
int cardsLeft = 52;
public void Shuffle()
{
string[] deck = new string[52];
for (int i = 0; i < 13; i++)
{
deck[i] = name[i] + suits[0];
}
for (int i = 0; i < 13; i++)
{
deck[i + 13] = name[i] + suits[1];
}
for (int i = 0; i < 13; i++)
{
deck[i + 26] = name[i] + suits[2];
}
for (int i = 0; i < 13; i++)
{
deck[i + 39] = name[i] + suits[3];
}
string[] myrandomarray = deck.OrderBy(x => rnd.Next()).ToArray();
deck = myrandomarray;
cardsLeft = 52;
}
public string Deal()
{
string deltCard = deck[0];
cardsLeft--;
string[] newDeck = new string[cardsLeft];
for (int i = 0; i < cardsLeft + 1; i++)
{
if (deck[i] != deltCard)
{
newDeck[0] = deck[i];
}
}
deck = newDeck;
return deltCard;
}
}
class play
{
static void Main()
{
Deck mydeck = new Deck();
Console.WriteLine(mydeck.Deal());
}
}
}
Hey guys I'm having trouble here with my code. There are two classes, one constructs a deck, and the other plays it. when I execute this code, it throws an error (range out of index) But I'm just not seeing it, like I don't know how is it out of range, it's showing me the place where it's out of range but it doesn't seem to be out of range so whats going on?