TECHNOLOGIES
FORUMS
JOBS
BOOKS
EVENTS
INTERVIEWS
Live
MORE
LEARN
Training
CAREER
MEMBERS
VIDEOS
NEWS
BLOGS
Sign Up
Login
No unread comment.
View All Comments
No unread message.
View All Messages
No unread notification.
View All Notifications
Answers
Post
An Article
A Blog
A News
A Video
An EBook
An Interview Question
Ask Question
Forums
Monthly Leaders
Forum guidelines
Damien Seoighe
NA
1
733
Card War game - why won't it work??
Apr 26 2015 9:13 AM
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
//using System.Threading.Tasks;
namespace JoyceDamienCWGnew
{
class GameOfWar
{
static int[] deck = new int[52]; // all zero by default
static int count = 0;
static string result;
static string[] cards = { "Ace", "2", "3", "4", "5", "6", "7", "8", "9", "10", "Jack", "Queen", "King" };
static string[] suits = { "Hearts", "Clubs", "Diamonds", "Spades" };
static Random rnd = new Random();
static void Main(string[] args)
{
int totalCompScore = 0;
int totalPlayerScore = 0;
string playerName;
int i;
//Entering the players name
Console.Write("Warrior please enter your name here: ");
playerName = Console.ReadLine();
FillDeck();
//====================================================================================================
//deal the deck 26 times
//for loop
for (i = 0; i < 26; i++)
{
string playerSuit;
string compSuit;
int compCard = SelectCard(compSuit) - 1;
int playerCard = SelectCard(playerSuit) - 1;
//if statement for the card number
if(compCard < playerCard)
{
totalPlayerScore += 2;
}//if
else if(playerCard < compCard)
{
totalCompScore += 2;
}//else if
else
{
totalCompScore += 1;
totalPlayerScore += 1;
}//else
//if statement for the suit
//Output after each deal
Console.WriteLine("Deal {0}: ", i + 1);
Console.WriteLine("Computer's card {1} {2} ", cards[compCard], compSuit);
Console.WriteLine("{0} card {1} {2}", playerName, cards[playerCard], playerSuit);
Console.WriteLine("");
}//for loop
Console.WriteLine("Computer's total score : {0}", totalCompScore);
Console.WriteLine("{0} total score : {1}", playerName, totalPlayerScore);
Console.ReadKey();
}//main
//=====================================================================================================================================
static void FillDeck()
{
//For Loop
for (int i = 0; i < 52; i++)
{
//While Loop
while (true)
{
int num = rnd.Next(1, 53); // get number between 1 and 52 inclusive
if (Array.IndexOf(deck, num) == -1) // not already used
{
deck[i] = num;
break;
}//if
}//while
}//for
}//FillDeck
static int SelectCard(string suit)
{
int num = deck[count];
count++;
// suit = suits[(num - 1) % 4];
return count; // (num - 1) / 4 + 1;
}//SelectCard()
}//GameOfWar
}//JoyceDamienCWGnew
Reply
Answers (
0
)
SMS more than 160 character
When We Should Use Class And When To Use Structure ??????