/* ************************************************************ */ /* Nome do aluno: Danilo R. Vieira Número USP: 5653262 */ /* Curso: Bach. em Oceanografia Data: 11/09/2007 */ /* MAC-115 Introdução à Computação */ /* Exercício Programa número 1 */ /* ************************************************************ */ #include #include int main() { /* Declaração de variáveis */ int quantia_apostada, /* Esta é a quantia apostada pelo jogador */ numero_apostado, /* Número no qual o jogador apostou */ numero_sorteado, /* Número sorteado pela roleta */ quantidade_de_jogadas, /* Total de jogadas efetuadas pelo jogador */ saldo_atual, /* Saldo na jogada processada no momento */ saldo_final; /* Lucro ou prejuízo do jogador ao final de todas as jogadas */ printf("JOGO DA ROLETA\n" "\n" "Por favor, digite uma jogada.\n" "A jogada deve ser constituida por uma tripla contendo:\n" "- Quantia apostada (em reais)\n" "- Numero apostado\n" "- Numero sorteado\n" "Separando os numeros da tripla por espacos. Ex: 12 13 14\n" "Ou digite uma tripla de zeros para finalizar.\n"); /* Inicialização das variáveis */ scanf("%d %d %d", &quantia_apostada, &numero_apostado, &numero_sorteado); quantidade_de_jogadas = 0; saldo_final = 0; while ((quantia_apostada != 0) || (numero_apostado != 0) || (numero_sorteado != 0)) { /* Enquanto não for lida uma tripla de zeros... */ quantidade_de_jogadas++; if ((numero_apostado <= 38) && (numero_apostado >= 1) && (numero_sorteado <= 38) && (numero_sorteado >= 1)) { /* A jogada é válida */ printf("------------------------------------" "------------------------------------\n" "Jogada %d\n" "Quantia apostada: R$%d,00\n" "Numero apostado: %d\n" "Numero sorteado: %d\n", quantidade_de_jogadas,quantia_apostada, numero_apostado,numero_sorteado); if (numero_apostado == numero_sorteado) { /* O jogador acertou o número */ saldo_atual = quantia_apostada * 4; /* Nota: o jogador recebe CINCO vezes a quantia apostada, mas o programa multiplica por quatro, pois queremos o lucro do jogador, que é a quantia recebida menos a quantia apostada. Procede-se de forma semelhante nas demais condições. */ printf("Jogador acertou o numero sorteado: " "lucrou R$%d,00.\n", saldo_atual); } else { if ((numero_apostado/10) == (numero_sorteado/10)){ /* O jogador acertou a dezena */ saldo_atual = quantia_apostada * 2; printf("Jogador acertou a dezena do numero sorteado: " "lucrou R$%d.\n", saldo_atual); } else { if (((numero_sorteado / 10) + (numero_sorteado % 10)) == ((numero_apostado / 10) + (numero_apostado % 10))) { /* O jogador acertou a soma dos dígitos */ saldo_atual = quantia_apostada; printf("Jogador acertou a soma dos digitos do numero" " sorteado: lucrou R$%d,00.\n", saldo_atual); } else { if ((numero_apostado % 2) == (numero_sorteado % 2)) { /* O jogador acertou a paridade */ saldo_atual = 0; printf("Jogador acertou a paridade do numero " "sorteado: nao lucrou nem perdeu.\n"); } else { /* O jogador não acertou nada */ saldo_atual = quantia_apostada * (-1); printf("Jogador nao acertou nada: perdeu R$%d,00\n", quantia_apostada); } } } } } else { /* A jogada é inválida */ printf("Jogada invalida!"); saldo_atual = 0; } /* Atualiza o saldo total */ saldo_final = saldo_final + saldo_atual; if (saldo_final > 0) { /* O saldo é positivo */ printf("\nAte agora o jogador teve um lucro de R$%d,00.\n", saldo_final); } else { if (saldo_final == 0) { /* O saldo é nulo */ printf("\nAte agora o jogador nao perdeu nem lucrou.\n"); } else /* O saldo é negativo */ printf("\nAte agora o jogador perdeu R$%d,00.\n", saldo_final*(-1)); } printf("------------------------------------" "------------------------------------\n" "Por favor, digite uma jogada.\n" "Ou digite uma tripla de zeros para finalizar.\n"); scanf("%d %d %d", &quantia_apostada, &numero_apostado, &numero_sorteado); } /* fim do while */ printf("----------------------------------------------------------" "--------------\n"); if (saldo_final > 0){ /* O saldo é positivo */ printf("Apos uma sequencia de %d jogadas, o jogador teve um " "lucro de R$%d,00.\n",quantidade_de_jogadas,saldo_final); } else { if (saldo_final == 0) { /* O saldo é nulo */ printf("Apos uma sequencia de %d jogadas, o jogador nao teve" "lucro nem prejuizo.\n", quantidade_de_jogadas); } else { /* O saldo é negativo */ printf("Apos uma sequencia de %d jogadas, o jogador teve um " "prejuizo de R$%d,00.\n", quantidade_de_jogadas,saldo_final); } } printf("----------------------------------------------------------" "--------------\n"); system("pause"); return 0; }