Skip to main content

Matchstick Game using C Programming

Matchstick Game using C Programming

Write a program for a matchstick game being played between the computer and a user.
Your program should ensure that the computer always wins. Rules for the game are as follows:

-There are 21 matchsticks.
-The computer asks the player to pick 1, 2, 3 or 4 matchsticks.
-After the person picks, the computer does its picking.
-Whoever is forced to pick up the last matchstick loses the game.

-There are 21 matchsticks.
-Whoever is forced to pick up the last matchstick loses the game.
So the last one is special, so it's all about how to get rid of 20 matches in pairs of turns.

-The computer asks the player to pick 1, 2, 3 or 4 matchsticks.
So if we reduce the total by 5 each round, the sequence will go
21 16 11 6 1
In effect, whatever number the user picks (n), the computer picks 5-n



#include<stdio.h>
main()
{

int matchsticks=21, user, computer;

printf("Do not enter Invalid Numbers.\nNumbers above 4 are invalid.");

printf("\nIf you do so, the computer automatically wins.");

while (matchsticks>=1)
{

printf("\nNumber of matchsticks available right now is %d.", matchsticks);

printf("\n\nYour Turn...\n\n\n");

printf("\nPick up the matchstick(s)-- (1-4): ");
scanf ("%d", &user);

if (user>4)

{
printf("Invalid Selection");
break;
}

computer=5-user;

printf("\nComputer's Turn..\n" );
printf("\nComputer chooses:%d", computer);

matchsticks=matchsticks-user-computer;
continue;

if(matchsticks==1)

break;
}

matchsticks--;
printf("\nComputer Wins");

}

Comments

Popular posts from this blog

C Program to print the pattern

C Program to print the pattern X X Y X Y Z ........................................................................................ #include<stdio.h> #include<conio.h> void main () { int i , j ; for ( i= 88 ; i< 91 ;i ++) { for ( j = 88 ;j <= i ; j ++) { printf ( "%c" , j );                    }           printf ( "\n" ); } getch (); } ........................................................................................ OUTPUT

To Check Whether a Number is Even or Odd

C Program to Check Whether a Number is Even or Odd Numbers perfectly divisible by 2 are known even numbers and numbers which are not divisible by 2 are called odd numbers. This program takes an integer from user and checks whether that number is even or odd and displays the result. Source Code /*to check whether a number entered by user is even or odd. */ #include <stdio.h> int main() { int num; printf( "Enter an integer you want to check: " ); scanf( "%d" ,&num); if ((num% 2 )== 0 ) /* Checking whether remainder is 0 or not. */ printf( "%d is even." ,num); else printf( "%d is odd." ,num); return 0 ; } Output 1 Enter an integer you want to check : 25 25 is odd . Output 2 Enter an integer you want to check : 12 12 is even .   In this program, user is asked to enter an integer which is stored in variable num . Then,...

Convert numbers to roman numerals

Convert numbers to roman numerals       #include <stdio.h> #include <conio.h> void predigits (char c1,char c2); void postdigits (char c,int n); char roman_Number[1000]; int i=0; int main() {     int j;     long int number;        printf( "Enter any natural number: " );     scanf( "%d" ,&number);        if (number <= 0) {          printf("Invalid number");          return 0;     }     while (number != 0){          if (number >= 1000){              postdigits('M',number/1000);              number = number - (number/1000) * 1000;          } ...