Ir para o conteúdo
  • Revista PROGRAMAR: Já está disponível a edição #60 da revista programar. Faz já o download aqui!

Localhost

Joguinho - Source

Mensagens Recomendadas

Localhost

Olá pessoal! Bem, comecei a passagem para C++

Então fiz aqui um joguinho muito simples para habituar-me à nova sintaxe, além de que por enquanto tudo se manteve igual (em relação ao C, so muda mesmo as funções de i/o).

Fica aqui então:

#include <iostream>
#include <stdlib.h>

using namespace std;

bool blCheck = false;

int startgame() {
  int iDificult = 0;
  cout << "1. Fácil (O numero vai de 1 a 10)" << endl;
  cout << "2. Médio (O numero vai de 1 a 20)" << endl;
  cout << "3. Dificil (O numero vai de 1 a 30)" << endl;
  cout << "Qual é a sua escolha? ";
  cin >> iDificult;
  if(iDificult > 3 || iDificult < 0) {
    cout << "Opção inválida" << endl;
    system("clear");
    startgame();
  }
  return iDificult;
}

int Engine(int iSpace) {
  int iBegin = 1;
  int iEnd = 0;
  int iRand = 0;
  switch(iSpace) {
    case 1:
      iEnd = 10;
      break;
    case 2:
      iEnd = 20;
      break;
    case 3:
      iEnd = 30;
      break;
  }
  srand(time(NULL));
  iRand = rand() % (iEnd + 1) + iBegin;
  return iRand;
}

void PlayGround(int iRand, int iDificult) {
  int iUser = 0;
  int iTentativas = 0;
  while(!blCheck && iTentativas < 3) {
    cout << "Digite o numero: ";
    cin >> iUser;
    iTentativas++;
    if(iUser == iRand) {
      cout << "Ganhou! O numero está correcto: " << iUser << endl;
      sleep(4);
      blCheck = true;
    }
    if(iDificult == 1) {
      if(iUser < iRand) {
         cout << "Tente um numero maior" << endl;
      }else {
         cout << "Tente um numero menor" << endl;
      }
    }
  }
  if(iTentativas == 3 && !blCheck) {
    cout << "O numero de tentativas chegou ao fim, tente novamente" << endl;
    sleep(4);
  }
}

void menu() {
  int iChoose = 0;
  int iDificult = 0;
  int iRandom = 0;
  cout << "1. Novo Jogo" << endl;
  cout << "2. Sair" << endl;
  cout << "Digite a sua opção: ";
  cin >> iChoose;
  switch(iChoose) {
    case 1:
      system("clear");
      iDificult = startgame();
      iRandom = Engine(iDificult);
      PlayGround(iRandom,iDificult);
      break;
    case 2:
      exit(0);
    default:
      system("clear");
      menu();
      break;
  }
}

int main() {
  while(1) {
    blCheck = false;
    menu();
    system("clear");
  }
  return 0;
}


here since 2009

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora

×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade. Este site usa cookies para disponibilizar funcionalidades personalizadas. Para mais informações visite esta página.