Jump to content

Correr código no Visual Studio 2015


Fernando  Costa

Recommended Posts

boa tarde, alguem me pode dizer o erro deste código? Ou se falta acrescentar alguma coisa para correr no visual studio 2015? 

#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <conio.h>
#include <string.h>
//funçao para gerar golos em futebol americano e basquetebol visto que as pontuaçoes sao superiores as do futebol
int Golo() {
    int x = rand() % 100;//gera um numero de o a 100
    return x;
}
//funçao que calcula o ganho monetario
float Ganho(float a, float b) {//a=cota para o resultado b=aposta
    int ganho = a*b;//multiplica a cota pela a posta
    return ganho;
}
//funçao para gerar resultados de futebol
int Golos() {
    int x = rand() % 10;//gera um numero entre o 0 e 10
    return x;
}
//função para gerar cotas
float Cotas() {
    int x;
    x = rand() % 100;//gera um numerp entre 0 e 100
    x = x / 10;//divide esse numero por 11 para criar um numero mais peque e com casas decimais
    x = x + 1;//soma um pois o minimo de cota é 1.00
    return x;
}
//função que serve para mostrar a lista de jogos
char Mostra(char url[]) {
    char ch;//determina que é um arquivo par escrever
    FILE *arq;//identifica o arquivo(arq) como file em uso
    arq = fopen(url, "r");//abre o arquivo apenas em modo de leitura("r")
    while ((ch = fgetc(arq)) != EOF)//enquanto houver caracteres continua a leitura dos mesmos
        putchar(ch);//coloca os caracterees na consola
    fclose(arq);//fecha o arquivo
}

int Pontos() {
    int x = rand() % 2;//gera um numero de o a 100
    return x;
}
int Ponto() {
    int x = rand() % 2;//gera um numero de o a 100
    return x;
}
int main(int argc, char *argv[]) {
    int opcao;
    float carregado = 0;//pois o saldo inicial é zero
    float aposta;
    while (opcao != 5) {
        printf("Selecione a sua opcao\n1-Ver/Carregar saldo\n2-Jogar\n3-Listar os jogos dispiniveis\n4-Gravar\n5-Sair\n");
        scanf("%i", &opcao);//recebe a opcao
        if (opcao == 1) {//o utilizador pode ver e carrega o saldo
            int opcao2;
            printf("O seu saldo: %.3f euros\nDeseja carregar?\n1(sim) 2(nao)\n", carregado);
            scanf("%i", &opcao2);//recebe se pertender carregar
            if (opcao2 == 1) {//caso pertenda carregar
                float a;
                printf("Com quanto deseja carregar?\n");
                scanf("%f", &a);//recebe a quantia
                carregado = carregado + a;//atualiza saldo
                printf("\n");
            }
            else//caso nao pertenda carregar
            {
                printf("Nao pode jogar\n\n");
            }
        }
        if (opcao == 2) {//o utlizador faz apostas
            int modalidade;
            printf("Qual a modalidade em que pertende apostar?\n1-Tenis\n2-Futebol\n3-Basquetebol\n");
            scanf("%i", &modalidade);
            if (modalidade == 1) {//o utilizador escolhe Tenis como modalidade
                int jogo;
                float a = Cotas();//cota vitoria visitada
                float c = Cotas();//cota vitoria visitante
                Mostra("TENIS.txt");//metodo que escreve os jogos disponiveis
                printf("\n");
                printf("Em que jogo deseja apostar?\n");
                scanf("%i", &jogo);//recebe a indicaçao do jogo
                printf("----------COTAS---------\n");
                printf("CASA %.3f  %.3f FORA\n", a, c);//apresenta as cotas
                printf("Quanto pertende apostar?\n");
                scanf("%f", &aposta);//recebe a aposta
                if (aposta <= carregado) {//caso possua o dinheiro que pertende apostar
                    int e;
                    printf("Em que resultado?\n1(Vitoria Visitado) 2(Vitoria Visitante)\n");
                    scanf("%i", &e);//recebe o prognostico
                    int w = Pontos();//gera pontos visitado
                    int z = Ponto();//gera pontos visitante
                    if (w>z&&e == 1) {//caso escolha vitoria do visitado
                        printf("Resultado\nCASA %.1i VS %.1i FORA\n", w, z);
                        float x = Ganho(a, aposta);//funçao dos ganhos
                        carregado = carregado + x;//atualiza o slado
                        printf("O seu saldo atual e: %.3f euros", carregado);//mostra o saldo atualizado
                    }
                    if (w<z&&e == 2) {//casoescolha vitoria de visitante
                        printf("Resultado\nCASA %.1i VS %.1i FORA\n", w, z);
                        float x = Ganho(c, aposta);//funçao dos ganhos
                        carregado = carregado + (x - aposta);//atualiza o slado
                        printf("O seu saldo atual e: %.3f euros", carregado);//mostra o saldo atualizado
                    }
                    if (w == z) {//Como no tenis não há empates
                        w = 2;
                        z = 1;
                        printf("Resultado\nCASA %.1i VS %.1i FORA\n", w, z);
                        if (e == 1) {
                            float x = Ganho(a, aposta);//funçao dos ganhos
                            carregado = carregado + (x - aposta);//atualiza o slado
                            printf("O seu saldo atual e: %.3f euros", carregado);//mostra o saldo atualizado
                        }
                        if (e == 2) {
                            float x = Ganho(a, aposta);//funçao dos ganhos
                            carregado = carregado - aposta;//atualiza o slado
                            printf("O seu saldo atual e: %.3f euros", carregado);//mostra o saldo atualizado
                        }
                    }
                    else {
                        printf("Perdeu o que apostou\n");
                        carregado = carregado - aposta;//atualiza o saldo
                        printf("O seu saldo e : %.3f euros", carregado);//mostra o saldo atualizado
                    }
                }
                if (aposta>carregado)
                {
                    printf("Nao possui essa quantida\n");
                }
            }
            if (modalidade == 2) {//o utilizador escolhe Futebol como modalidade
                int jogo;
                float a = Cotas();//cota vitoria visitado
                float b = Cotas();//cota empate
                float c = Cotas();//cota vitoria visitante
                Mostra("FUTEBOL.txt");//metodo que escreve os jogos disponiveis
                printf("Em que jogo deseja apostar?\n");
                scanf("%i", &jogo);//recebe a indicaçao do jogo
                printf("----------COTAS---------\n");
                printf("CASA %.3f %.3f %.3f FORA\n", a, b, c);//apresenta as cotas
                printf("Quanto pertende apostar?\n");
                scanf("%f", &aposta);//recebe a aposta
                if (aposta <= carregado) {//caso possua o dinheiro que pertende apostar
                    int e;
                    printf("Em que resultado?\n1(Vitoria Visitado) 2(Empate) 3(Vitoria Visitante)");
                    scanf("%i", &e);//recebe o prognostico
                    int w = Golos();//gera golos visitado
                    int z = Golos();//gera golos visitante
                    printf("Resultado\nCASA %.1i VS %.i FORA\n", w, z);
                    if (w == z&&e == 2) {//caso escolha empate
                        float x = Ganho(b, aposta);//funçao dos ganhos
                        carregado = carregado + (x - aposta);//atualiza o saldo
                        printf("O seu saldo atual e: %.3f euros", carregado);//mostra o slado atualizado
                    }
                    if (w>z&&e == 1) {//caso escolha vitoria do visitado    
                        float x = Ganho(a, aposta);//funçao dos ganhos
                        carregado = carregado + x;//atualiza o saldo
                        printf("O seu saldo atual e: %.3f euros", carregado);//mostra o saldo atualizado
                    }
                    if (w<z&&e == 3) {//casoescolha vitoria de visitante
                        float x = Ganho(c, aposta);//funçao dos ganhos
                        carregado = carregado + x;//atualiza o saldo
                        printf("O seu saldo atual e: %.3f euros", carregado);//mostra o saldo atualizado
                    }
                    else
                    {
                        printf("Perdeu o que apostou\n");
                        carregado = carregado - aposta;//atualiza o saldo
                        printf("O seu saldo e : %.3f euros", carregado);//mostra o saldo atualizado
                    }
                }
                if (aposta>carregado)
                {
                    printf("Nao possui essa quantida\n");
                }
            }
            if (modalidade == 3) {//o utilizador escolhe Basquetebol como modalidade
                int jogo;
                float a = Cotas();//cota vitoria visitado
                float b = Cotas();//cota empate
                float c = Cotas();//cota vitoria visitante
                Mostra("BASQUETEBOL.txt");//metodo que escreve os jogos disponiveis
                printf("Em que jogo deseja apostar?\n");
                scanf("%i", &jogo);//recebe a indicaçao do jogo
                printf("----------COTAS---------\n");
                printf("CASA %.3f %.3f %.3f FORA\n", a, b, c);//apresenta as cotas
                printf("Quanto pertende apostar?\n");
                scanf("%f", &aposta);//recebe a aposta
                if (aposta <= carregado) {//caso possua o dinheiro que pertende apostar
                    int e;
                    printf("Em que resultado?\n1(Vitoria Visitado) 2(Empate) 3(Vitoria Visitante)");
                    scanf("%i", &e);//recebe o prognostico
                    int w = Golos();//gera golos visitado
                    int z = Golos();//gera golos visitante
                    printf("Resultado\nCASA %.1i VS %.i FORA\n", w, z);
                    if (w == z&&e == 2) {//caso escolha empate
                        float x = Ganho(b, aposta);//funçao dos ganhos
                        carregado = carregado + x;//atualiza o saldo
                        printf("O seu saldo atual e: %.3f euros", carregado);//mostra o saldo atualizado
                    }
                    if (w>z&&e == 1) {//caso escolha vitoria do visitado    
                        float x = Ganho(a, aposta);//funçao dos ganhos
                        carregado = carregado + x;//atualiza o saldo
                        printf("O seu saldo atual e: %.3f euros", carregado);//mostra o salod atualizado
                    }
                    if (w<z&&e == 3) {//casoescolha vitoria de visitante
                        float x = Ganho(c, aposta);//funçao dos ganhos
                        carregado = carregado + x;//atualiza o saldo
                        printf("O seu saldo atual e: %.3f euros", carregado);//mostra o saldo atualizado
                    }
                    else
                    {
                        printf("Perdeu o que apostou\n");
                        carregado = carregado - aposta;//atualiza o saldo
                        printf("O seu saldo e : %.3f euros", carregado);//mostra o saldo atualizado
                    }
                }
                if (aposta>carregado)
                {
                    printf("Nao possui essa quantida\n");
                }
            }
        }
        if (opcao == 3) {//lidar os jogos disponiveis
            printf("O jogos disponiveis sao:\n");
            Mostra("MODALIDADES.txt");//usa a funçao que permite mostrar o ficheiro com os jogos
        }
        if (opcao == 4) {//grava num ficheiro .txt de nome Resultadoos todos os resultados do jogos
            srand(time(NULL));
            char url[] = ("Resultadoos.txt");
            FILE*arq;
            arq = fopen(url, "w");
            fprintf(arq, "Resultados de Tenis\n\n");
            //escreve num ficheiro todos os jogos de Tenis
            fprintf(arq, "Resultado\nJOGO 1 CASA %.1i VS %.1i FORA\n", 2, 1);
            fprintf(arq, "Resultado\nJOGO 2 CASA %.1i VS %.1i FORA\n", 0, 2);
            fprintf(arq, "Resultado\nJOGO 3 CASA %.1i VS %.1i FORA\n", 1, 2);
            fprintf(arq, "Resultado\nJOGO 4 CASA %.1i VS %.1i FORA\n", 2, 0);
            fprintf(arq, "Resultado\nJOGO 5 CASA %.1i VS %.1i FORA\n", 2, 1);
            fprintf(arq, "Resultados de Futebol\n\n");
            int j;
            for (j = 1; j<31; j++) {//escreve num ficheiro todos os jogos de futebol
                int w = Golos();
                int z = Golos();
                fprintf(arq, "JOGO %i CASA %.1i VS %.1i FORA\n", j, w, z);
            }
            fprintf(arq, "Resultados da NBA\n\n");
            int h;
            for (h = 1; h<11; h++) {//escreve num ficheiro todos os resultados de Basquetebol
                fprintf(arq, "JOGO %.i CASA %.1i VS %.1i FORA\n", h, Golo(), Golo());
            }
        }
    }
    return 0;
}
Link to comment
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.