Ir ao conteúdo
  • Cadastre-se

Loteria esportiva - Algoritmo valores do vetor


Catí Kurumim 7

Posts recomendados

Olá,

Tenho a seguinte questão:

Escreva um algoritmo que leia um vetor de 13 elementos inteiros, que é o resultado da loteria esportiva, contendo os valores 1 (coluna 1), 2 (coluna 2) e 3 (coluna do meio). Leia a seguir, para cada apostador, o número do seu cartão e um vetor de respostas de 13 posições. Verifique para cada apostador o número de acertos, comparando com o vetor de resultado. Escreva o número do apostador e o número de acertos. Se o apostador tiver 13 pontos, mostrar a mensagem “Ganhador”.

Minha seguinte duvida é: os valores 1, 2, 3 eu que devo determinar a posição ou o usuário é quem deve fazer isso?

program Quest51;
Var
Result:array[1..13] of integer;
Resp:array[1..13] of integer;
Acertos, I, Ncard: Integer;
begin
Writeln('Escreva o resultado da loteria');
For I:=1 to 13 do
Readln(Result[I]);
Writeln('Escreva o numero do cartao');
Readln(Ncard);
Writeln('Escreva a resposta');
For I:=1 to 13 do
Begin
Readln(Resp[I]);
If(Result[I] = Resp[I])
then Acertos:= Acertos+1;
End;
Writeln('O numero do cartao é ',Ncard);
Writeln('A aquntidade de acertos é ',Acertos);
If(Acertos = 13)
Then Writeln('Ganhador');
Readln;
End.

Caso ocorra alguma coisa errada no código além do que eu perguntei me informem!

Bora ai gente, ajudem me!

Link para o comentário
Compartilhar em outros sites

  • 4 semanas depois...
  • Membro VIP

Olá,

Tenho a seguinte questão:

Escreva um algoritmo que leia um vetor de 13 elementos inteiros, que é o resultado da loteria esportiva, contendo os valores 1 (coluna 1), 2 (coluna 2) e 3 (coluna do meio). Leia a seguir, para cada apostador, o número do seu cartão e um vetor de respostas de 13 posições. Verifique para cada apostador o número de acertos, comparando com o vetor de resultado. Escreva o número do apostador e o número de acertos. Se o apostador tiver 13 pontos, mostrar a mensagem “Ganhador”.

Minha seguinte duvida é: os valores 1, 2, 3 eu que devo determinar a posição ou o usuário é quem deve fazer isso?


Var
Result:array[1..13] of integer;
Resp:array[1..13] of integer;
Acertos, I, Ncard: Integer;
begin
Writeln('Escreva o resultado da loteria');
For I:=1 to 13 do
Readln(Result[I]);
Writeln('Escreva o numero do cartao');
Readln(Ncard);
Writeln('Escreva a resposta');
For I:=1 to 13 do
Begin
Readln(Resp[I]);
If(Result[I] = Resp[I])
then Acertos:= Acertos+1;
End;
Writeln('O numero do cartao é ',Ncard);
Writeln('A aquntidade de acertos é ',Acertos);
If(Acertos = 13)
Then Writeln('Ganhador');
Readln;
End.
program Quest51;

Caso ocorra alguma coisa errada no código além do que eu perguntei me informem!

Bora ai gente, ajudem me!

Olá.

Ainda precisa de ajuda?

Minha seguinte duvida é: os valores 1, 2, 3 eu que devo determinar a posição ou o usuário é quem deve fazer isso?

Não entendi a pergunta. Mas se estiver se referindo às respostas de cada apostador, creio que você (como usuário) que vai informar, ou seja, para cada aposta você deverá digitar um dos 3 valores possíveis (1, 2 ou 3) para cada uma das 13 posições.

Algumas dicas:

1) Sugiro fazer a verificação do resultados depois, ou seja, primeiro ler os dados dos apostadores, depois verificar os números acertados;

2) Segundo o enunciado devem ser várias apostas, e não só uma. Você poderia usar um array de apostas.

3) Independente de ganhar ou não, o enunciado pede mostrar o número de acertos de todos.

Por ai vai...

No aguardo.

Link para o comentário
Compartilhar em outros sites

Obrigado, realmente eu me passei em alguns detalhes nessa questão.

Vou refazer e enviar novamente!

program Quest51;
Var
Result:array[1..13] of integer;
Resp:array[1..13] of integer;
Acertos, I, Ncard: Integer;
begin
Writeln('Escreva o resultado da loteria');
For I:=1 to 13 do
Readln(Result[I]);
Writeln('Escreva o numero do cartao');
Readln(Ncard);
Writeln('Escreva a resposta');
For I:=1 to 13 do
Begin
Readln(Resp[I]);
If(Result[I] = Resp[I])
then Acertos:= Acertos+1;
End;
Writeln('O numero do cartao é ',Ncard);
Writeln('A aquntidade de acertos é ',Acertos);
If(Acertos = 13)
Then Writeln('Ganhador');
Readln;
End.

Link para o comentário
Compartilhar em outros sites

  • 3 semanas depois...
  • Membro VIP

Código atual:


Var
Result:array[1..13] of integer;
Resp:array[1..13] of integer;
Acertos, I, Ncard: Integer;
begin
Writeln('Escreva o resultado da loteria');
For I:=1 to 13 do
Readln(Result[I]);
Writeln('Escreva o numero do cartao');
Readln(Ncard);
Writeln('Escreva a resposta');
For I:=1 to 13 do
Begin
Readln(Resp[I]);
If(Result[I] = Resp[I])
then Acertos:= Acertos+1;
End;
Writeln('O numero do cartao é ',Ncard);
Writeln('A aquntidade de acertos é ',Acertos);
If(Acertos = 13)
Then Writeln('Ganhador');
Readln;
program Quest51;

Pra mim o código continua o mesmo, ele ''dá assistência'' a tudo que se pede na questão.

Ele pode até está mal estruturado, mas cumpre o que se pede.

Obs: Caso o que eu tenha dito pareça equivocado comentem novamente.

Então este código ainda não está de acordo com o enunciado... meu comentário anterior ainda é válido..

Veja:

Escreva um algoritmo que leia um vetor de 13 elementos inteiros, que é o resultado da loteria esportiva, contendo os valores 1 (coluna 1), 2 (coluna 2) e 3 (coluna do meio).

OK.

Leia a seguir, para cada apostador, o número do seu cartão e um vetor de respostas de 13 posições. Verifique para cada apostador o número de acertos, comparando com o vetor de resultado. Escreva o número do apostador e o número de acertos. Se o apostador tiver 13 pontos, mostrar a mensagem “Ganhador”.

Tem alguns detalhes faltando ainda...

Dica extra:

- Para testar, em vez de 13 use 2 posições nos cartões;

- Habilite o programa aceitar somente até 3 apostas diferentes (que os arrays tem limites.

Obs1:Com o Pascal é possível também gerar números aleatórios... se quiser poderia implementar esse recurso..

Obs.2:

Caso não deseje mais continuar com esse tópico, é só avisar que fechamos.

No aguardo.

Link para o comentário
Compartilhar em outros sites

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

 

GRÁTIS: ebook Redes Wi-Fi – 2ª Edição

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!