Jump to content
RafaelSobral

Duvida - Jogo da Cara ou Coroa

Recommended Posts

RafaelSobral

Boa Noite , sou novo neste fórum e vim reencaminho pelo meu professor de Linguagem de Programação .

Foi-me pedido para fazer o jogo da cara ou coroa , no qual o usuário começava com 50 pontos e em cada rodada , ele decidia quantos pontos queria apostar e se queria cara ou coroa . De seguida aparecia se o usuario tinha acertado ou não e se tivesse acertado aparecia os pontos com que ele ficou , que eram os que ele tinha antes de apostar mais o valor que ele apostou, e se perdesse aconteceria o mesmo. Por exemplo, se o usuario tivesse 50 pontos e aposta-se 20 e acerta-se , aparecia a mensagem a dizer que ele tinha acertado e que tinha ficado com 70 pontos (50 + 20) , se perde-se aparecia a mensagem que ele tinha perdido e tinha ficado com 30 pontos (50 - 20) . Criei o programa e corre tudo bem, só que quando vou para a segunda ronda ele em vez de fazer as contas com os pontos que tinha ficado na ronda anterior , não .. faz as contas como se tivesse como o valor inicial o 50 na mesma .. se alguém me puder ajudar, agradecia (:

Aqui fica o programa:

#include <stdio.h>
#include <stdlib.h>

int main(int argc, char *argv[])
{
 int pontuacao=50, aposta, moeda, moeda2, pontuacao1, pontuacao2;


 printf("Seja bem vindo ao jogo da cara ou coroa.\nNeste jogo, deve tentar adivinhar se e cara(prima 1) ou coroa(prima 0).\nVoce comeca com 50 pontos e deve apostar pontos em cada jogada.\nOra comecemos. Boa sorte!\n");
 printf("Pontuacao:%d pontos\n", pontuacao);

 srand ( 0 );
 do
 {
printf("Quanto deseja apostar ?\n");
scanf("%d", &aposta);
printf("Quer cara ou coroa ?\n");
scanf("%d", &moeda);

moeda2 = rand() %2;
   pontuacao1 = pontuacao + aposta;
   pontuacao2 = pontuacao - aposta;

if (moeda == moeda2)
{
	  printf("Parabens , ganhou a aposta! Agora voce tem %d pontos\n", pontuacao1);

}
else
{
	  printf("Perdeu a aposta! Agora voce tem %d pontos\n", pontuacao2);


}
 }while(pontuacao != 0);

 system("PAUSE");
 return 0;
}

Edited by RafaelSobral
GeSHi

Share this post


Link to post
Share on other sites
HappyHippyHippo

o valor da variável pontuacao nunca é actualizado.

na realidade a existência de pontuacao1 e pontuacao2 é desnecessária


IRC : sim, é algo que ainda existe >> #p@p

Share this post


Link to post
Share on other sites
RafaelSobral

o valor da variável pontuacao nunca é actualizado.

na realidade a existência de pontuacao1 e pontuacao2 é desnecessária

Sou ainda inexperiente em programação pois este é o meu primeiro ano e ainda não sei como fazer para que o valor da "pontuacao" seja atualizado de ronda para ronda , o que o meu professor queria é que fosse à busca de soluções e respostas. Se puderes ajudar-me a que o valor da pontuacao seja atualizado agradecia :)

Share this post


Link to post
Share on other sites
HappyHippyHippo

não sei como fazer para que o valor da "pontuacao" seja atualizado

como actualizas/atribuis um valor a uma variável ?


IRC : sim, é algo que ainda existe >> #p@p

Share this post


Link to post
Share on other sites
RafaelSobral

como actualizas/atribuis um valor a uma variável ?

Já consegui , obrigado .Tive de fazer uma alterações , mas penso que é isto :

if (moeda == moeda2)
{
	  printf("Parabens , ganhou a aposta!");
	  pontuacao = pontuacao + aposta;
	  printf("Agora voce tem %d pontos\n", pontuacao);
}
else
{
	  printf("Perdeu a aposta!");
	pontuacao = pontuacao - aposta;
printf("Agora voce tem %d pontos\n", pontuacao);

}

Agora falta ajustar uns pormenores como não poder introduzir um valor superior ao que se tem, ou introduzir outros numeros sem serem 0 ou 1 correspondentes ao cara e coroa, mas isso vou pensar agora como se faz e tentar :) Obrigado.

Edited by RafaelSobral

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.