Jump to content
eduarda_dasilveira

Jogo em C com matriz e vetores

Recommended Posts

O sistema deverá, utilizando a linguagem C, receber 6 apostas (6 números cada
aposta no intervalo de 1 a 60) e armazenar estas informações em uma matriz quadrada de
ordem 6. Um vetor chamado vetGabarito  deve armazenar 6 números, que são os gabaritos
da aposta.
Com a matriz de apostas preenchidas, o sistema deverá:
a. Mostrar a soma da diagonal principal da matriz de apostas.
b. Transferir todas as apostas para vetores de inteiros de 6 posições.
c. Indicar quantos números pares e ímpares foram apostados.
d. Indicar quantos acertos o jogador obteve para cada conjunto de aposta.

 

Estou com dificuldade de fazer letra d.

Meu código esta ai mas esta dando erro (mostrando a quantidade errada de acertos) na parte da letra d.

#include <stdio.h>
#include <time.h>
#include <conio.h>
#include <stdlib.h>  
int main (void){
    int mat [6][6], vetGabarito[6], vet1[6], vet2[6], vet3[6], vet4[6], vet5[6], vet6[6], l, c, soma_diagonal=0, impar=0, par=0;
    srand (time (NULL));
    for (l=0; l<6; l++){
        for (c=0; c<6; c++){
            printf ("Digite a sua aposta de 1 a 60:"); scanf ("%d", &mat [l][c]);
        }
    }
    for (l=0; l<6; l++){
        for (c=0; c<6; c++){
            printf ("    %d", mat [l][c]);
        }
        printf ("\n");    
    }
    for (l=0; l<6; l++){
        for (c=0; c<6; c++){
            if (l==c){
                soma_diagonal=soma_diagonal+mat[l][c];
            }
        }
    }
    for (c=0; c<6; c++){
        vet1[c]= mat [0][c];
        vet2[c]= mat [1][c];
        vet3[c]= mat [2][c];
        vet4[c]= mat [3][c];
        vet5[c]= mat [4][c];
        vet6[c]= mat [5][c];
        printf ("Apostas do jogador na rodada [%d] e %d\n", c, vet1[c]);
        printf ("Apostas do jogador na rodada [%d] e %d\n", c, vet2[c]);
        printf ("Apostas do jogador na rodada [%d] e %d\n", c, vet3[c]);
        printf ("Apostas do jogador na rodada [%d] e %d\n", c, vet4[c]);
        printf ("Apostas do jogador na rodada [%d] e %d\n", c, vet5[c]);
        printf ("Aposta do jogador na rodada [%d] e %d\n", c, vet6[c]);
    }
    
    for (l=0; l<6; l++){
        for (c=0; c<6; c++){
            if ((mat[l][c]%2)==0){
                par++;
            } else {
                impar++;
            }
        }
    }
    srand (time (NULL));
    for (c=0;c<6;c++){
        vetGabarito[c]=rand()%10;
    }
    for (c=0; c<6; c++){
        printf ("     %d", vetGabarito[c]);
        printf ("\n");
    }
    for (c=0; c<6; c++){
        vet1[0]==vetGabarito[c];
        vet2[1]==vetGabarito[c];
        vet3[2]==vetGabarito[c];
        vet4[3]==vetGabarito[c];
        vet5[4]==vetGabarito[c];
        vet6[5]==vetGabarito[c];
    }        
printf ("A soma da diagonal da matriz e: %d\n", soma_diagonal);
printf ("A quantidade de numeros pares foi %d, e de numeros impares foi %d\n", par, impar);
printf ("O jogador na primeira rodada teve %d de acertos.\n", vet1[0]);
printf ("O jogador na segunda rodada teve %d de acertos.\n", vet2[1]);
printf ("O jogador na terceira rodada teve %d de acertos.\n", vet3[2]);
printf ("O jogador na quarta rodada teve %d de acertos.\n", vet4[3]);
printf ("O jogador na quinta rodada teve %d de acertos.\n", vet5[4]);
printf ("O jogador na sexta rodada teve %d de acertos.\n", vet6[5]);
return 0;
}

 

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

  • Similar Content

    • By Eduardo Cândido da Rosa
      Boa noite da lista de 30 por enquanto foram 2 os problemas que não consegui entender o enunciado ou não consegui realmente resolver...
       
      Gostaria da ajuda de vocês para resolver esse enunciado em C++, não vou postar o que fiz pois não consegui formular uma resposta adequada espero que ajudem.
       
      27)    A locadora de carros SAI DA FRENTE está fazendo uma promoção e está alugando carros no período junino por R$ 30,00 a diária. Além disso, a locadora cobra R$ 0,01 por quilômetro rodado. Como é período de São João, a locadora quer fidelizar os clientes e está dando 10% de desconto no valor total do aluguel de qualquer carro.
       
      Implemente um programa em C++ que leia quantos dias a pessoa ficou com o carro: [1; 30] e quantos quilômetros ela rodou [1; 1000], calcule e mostre o valor total que a pessoa deve pagar pelo aluguel do carro.
    • By Eduardo Cândido da Rosa
      Q)  Uma máquina automática de café só funciona com notas de 5 reais e nunca dá o troco. O café custa 7 reais. Assim, se o cliente pedir apenas um café, ele vai perder 3 reais, pois terá que dar 10 reais, e a máquina não devolverá o troco.
       
      É possível comprar mais de um café em uma só compra. Logo, se o cliente colocou 15 reais, significa que ele vai obter dois cafés e perderá 1 real.
       
      Implemente um programa em C++ que leia a quantidade de dinheiro que o cliente colocou na máquina sempre um múltiplo de 5 e imprima quanto o cliente irá perder no troco.
       
      O que fiz até agora, não sei o que devo mudar, me ajudem por favor:
       
      #include <iostream>
      using namespace std;
      int main() {
       
       
      int i,resultado,valor;
       
       
      cout << "Informe o valor:\n";
       
      cin >> valor;

      }
       
      for(i = 0; valor >= 7; i++){
        valor -= 7;
        resultado = valor;
      }
       
      cout << "\nA quantidade de cafe: "  << i << endl;  
      cout << "\nO restante do dinheiro: " << resultado << endl;    
         
      }else{
      cout << "\nErro!!\n" << endl;
      }
       
      return 0;
      }
    • By iago_ss
      Olá!!!
      Sou iniciante na área de programação para desktop e móvel, porém, penso em iniciar um curso para começar a desenvolver para estas áreas.
      Hoje, penso em desenvolver um programa, similar a um site q possuo, isso porque fico preso a diversos problemas impossíveis de resolver por ser um ambiente web. 
      O site hoje possui uma webrádio shoutcast (passo por problemas sempre que o chrome atualiza as politicas de privacidade), um fórum, notícias de jogos dentre outras funcionalidades.
      Além disso, gostaria de implementar mini-jogos.
       
      Gostaria de saber qual a melhor linguagem, no ponto de vista de vocês, para desenvolver esse programa, tendo em vista que eu partiria do zero.
      Pesquisei sobre e as mais utilizadas são c# e Java. Com essas linguagens é possível consultar banco de dados mysql hospedados na web?
    • By frlopes
      Pessoal, bom dia.
       
      Tentei fazer o exemplo abaixo do site:
       
      http://www.macoratti.net/15/10/mvc_roles1.htm
       
      E está retornando o seguinte erro quando tento fazer um novo registro:
       
      System.InvalidOperationException: 'The ViewData item that has the key 'Name' is of type 'System.String' but must be of type 'IEnumerable<SelectListItem>'.'
       
      Alguém poderia me ajudar? 
      Obrigada!
    • By Uondaime
      Fiz uma aplicação para calcular a média aritmética de 3 notas. Meu formulário tem 3 TextBox que recebe a nota e um botão que calcula a média. O resultado é imprimido em um Label, como faço para limitar a quantidade de números após a ","? OBS: Estou aprendendo ainda, fiz essa mesma pergunta no stackoverflow e a pessoa que me respondeu foi super grossa falando que meu código estava ruim e que eu deveria aprender mais. Deixem a opnião de vocês sobre o código, e lembrando, EU ESTOU APRENDENDO AINDA!
       
      private void btnCalcular_Click(object sender, EventArgs e) { //DECLARAÇÃO DE VARIÁVEIS double num1, num2, num3, resultado; //CONVERSÃO DE STRING PARA DOUBLE num1 = Convert.ToDouble(txtN1.Text); num2 = Convert.ToDouble(txtN2.Text); num3 = Convert.ToDouble(txtN3.Text); //OPERAÇÃO DE CÁLCULO resultado = (num1 + num2 + num3) / 3; lblResult.Text = resultado.ToString(); lblResult.Text = resultado.ToString(); if (resultado >= 6) { MessageBox.Show("Aluno aprovado!", "Status do aluno", MessageBoxButtons.OK, MessageBoxIcon.Information); } else { MessageBox.Show("Aluno reprovado", "Status do aluno", MessageBoxButtons.OK, MessageBoxIcon.Warning); } }  
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.