Na loteria esportiva da década de 80, o jogador tinha que escolher resultados para 16 jogos. Escreva um programa que leiam os palpites de um apostador na loteria esportiva e calcule o valor a ser pago por este apostador. O valor a ser pago é calculado por:
Valor a ser pago = V X 2D X 3T
V = valor da aposta
D = número de palpites duplos
T = número de palpites triplos
A matriz de apostas conterá X na coluna correspondente ao palpite dos apostadores em cada uma das linhas correspondente a cada jogo.
Por enquanto eu fiz isso:
public static void main(String[] args) {
String[][] aposta=new String[16][3];
int opcao,empate=0,a=0,b=0;
float v,valorPagar;
Scanner scan = new Scanner(System.in);
System.out.print("Digite o valor da aposta:");
v=scan.nextFloat();
for(int i=0;i<aposta.length;i++){
do{
System.out.println("Digite a opção da aposta nº"+i+"\n1-Tima A\n2-Empate\n3-Time B");
opcao=scan.nextInt();
switch(opcao){
case 1:
a++;
aposta[i][0]="X";
aposta[i][1]="0";
aposta[i][2]="0";
break;
case 2:
empate++;
aposta[i][0]="0";
aposta[i][1]="X";
aposta[i][2]="0";
break;
case 3:
b++;
aposta[i][0]="0";
aposta[i][1]="0";
aposta[i][2]="X";
break;
default:
System.out.println("INSIRA UM VALOR VALIDO!");
}
}while(opcao!=1&&opcao!=2&&opcao!=3);
}
for(int i=0;i<aposta.length;i++){
System.out.print(aposta[i][0]+" ");
System.out.print(aposta[i][1]+" ");
System.out.print(aposta[i][2]+" ");
System.out.println();
}
}
A unica coisa que falta fazer é a continha pra ver quanto que o individuo apostador deve pagar, não compreendi a lógica, como faço essa parte???
se tiver como explicar a lógica pra mim eu ficarei muito grato
Pelo que imagino, você nunca apostou na loteria esportiva - mas seu problema é que você não se deu ao trabalho de perguntar o que é um “palpite duplo” e um “palpite triplo”.
Digamos que um dos jogos (eram 13 na loteria antiga, 14 numa versão mais recente desse jogo) fosse Bahia X Vitória.
Como você deve saber, há três resultados possíveis: Bahia ganha, Vitória ganha, ou há empate.
Mas o apostador (que é o que você tem de entrar de dados) podia marcar algo como:
for(i){ //i são as linhas
for(j){ // j são as colunas
if(M[j] == 'X'){ //M é a matriz
cont++;
}
}
if(cont==3){
T++; //T é o número de apostas triplas
}else if(cont==2){
D++; //D é o número de apostas duplas
}
cont=0;
}
[quote=LanHSD]Então, pelo que entendi, precisarei perguntar antes para o apostador se ele ira querer fazer um palpite simples, duplo ou triplo???
-perguntar pra ele o valor que quer apostar
-perguntar o tipo de aposta (a cada n linha da matriz)
-marcar na matriz
fazer o calculo
-mostrar o resultado seguido com a matriz respondida
é isso que precisarei fazer???[/quote]
Acho que nem precisa disso.
Basta o apostador entrar alguma combinação parecida com X__ ou _XX ou X (só não pode entrar uma ___ que é uma aposta sem marcar, o que não pode ocorrer na Loteria Esportiva). Aí você conta a quantidade de X para saber se é simples, dupla ou tripla.
Entanglement.
Essa forma que tu falou de entrar com os valores, no caso, teria essas combinações:
X__ X
_X
XX
_XX
X_X
XXX
CERTO?
e se entrasse com ___ aparecia um erro “bugnaoseiaonde!”
nessa forma, precisaria criar uma var tipo String e depois dividi-la para pegar os X?ou tem outro modo?
obs:Valeu felipeaquieiroz, esse código sera util na hora de contar a qtd de D e T.