O codigo foi modificado, preciso fazer um ranking onde o jogador selecionado apareça com sua respectiva pontuação!
Algoritmo "trab"
Var
menu, menu1, menu2, menu3, contador1, jogador_atual, contador2, jogada, i, erro, identificador, identificar, certos, x, contador3, j, aux: inteiro
cores: vetor [0..5] de inteiro //numero que identifica as cores
senha: vetor [1..4] de inteiro // senha sorteada pela maquina
jogadas: vetor[1..10, 1..4] de inteiro // matriz que armazena todas as 10 jogadas
pontos_jogadores: vetor [1..10] de inteiro // ranking
houveTroca: logico
Inicio
cores[0] <- 1
cores[1] <- 2
cores[2] <- 3
cores[3] <- 4
cores[4] <- 5
cores[5] <- 6
Procedimento Menu1
inicio
Escreval("")
Escreval("O que você deseja fazer no jogo?")
Escreval("")
Escreval("1- Definir jogador")
Escreval("2- Jogar")
Escreval("3- Ranking")
Escreval("4- Sair")
Leia (menu)
FimProcedimento
Escreval("=================================================================")
Escreval("===========================JOGO SENHA============================")
Escreval("=================================================================")
Escreval(" Autores: Laura Johann, Douglas Madruga e Henrique Dahlem.")
Escreval("=================================================================")
Escreval("")
Menu1
SE (menu = 1) então //DEFINIR QUEM VAI JOGAR
Escreval("1 - Jogador 1")
Escreval("2 - Jogador 2")
Escreval("3 - Jogador 3")
Escreval("4 - Jogador 4")
Escreval("5 - Jogador 5")
Escreval("6 - Jogador 6")
Escreval("7 - Jogador 7")
Escreval("8 - Jogador 8")
Escreval("9 - Jogador 9")
Escreval("10 - Jogador 10")
Escreval("Qual jogador você é ou deseja ser no jogo?")
Leia(jogador_atual)
SE (jogador_atual > 10) ou (jogador_atual < 1) então
Escreval("Você digitou um jogador inválido, interrompendo o programa..")
Interrompa
FimSE
FimSE
Menu1
SE (menu = 2) então // JOGO
//PRONTO
SE (jogador_atual = 0) então
Escreval("Você não definiu um jogador ainda, defina antes de jogar!")
FimSE
SE (jogador_atual <> 0) então
Para contador1 de 1 ate 4 faca
senha[contador1] <- cores[randi(5)]
FimPara
Escreval("A senha já foi sorteada, portanto comece suas jogadas")
Escreval("Para jogar, você digita uma cor que é representada por um numero")
Escreval("Tabela:")
Escreval("1- AMARELO == 2- AZUL == 3- MARROM")
Escreval("4- ROSA == 5- VERMELHO == 6- ROSA")
Para contador1 de 1 ate 10 faca
Escreval("Digite os 4 valores da sua",contador1, " jogada.")
Para contador2 de 1 ate 4 faca
Leia(jogadas[contador1, contador2])
SE (jogadas[contador1, contador2] < 1) então
Escreval("")
Escreval("O numero deve ser maior que zero..")
Escreval("Jogo encerrando...")
erro <- 10
FimSE
SE (jogadas[contador1, contador2] > 6) então
Escreval("")
Escreval("O numero deve ser menor que seis..")
Escreval("Jogo encerrando...")
erro <- 10
FimSE
SE (erro = 10) então
Interrompa
FimSE
SE (jogadas[contador1, contador2] = senha[contador2]) então
Escreval("===============================")
Escreval("PRETO NA JOGADA", contador2, "!!!")
Escreval("A escolha dessa jogada está certa.")
Escreval("Não troque essa jogada.")
certos <- certos +1
FimSE
SE (jogadas[contador1, contador2] <> senha[contador2]) então
SE ((jogadas[contador1, contador2] = senha[1]) ou (jogadas[contador1, contador2] = senha[2]) ou (jogadas[contador1, contador2] = senha[3]) ou (jogadas[contador1,contador2] = senha[4])) então
Escreval("===============================")
Escreval("Branco na jogada", contador2,"!!!")
FimSE
FimSE
FimPara
SE (erro = 10) então
Interrompa
FimSE
jogada <- jogada +1
SE (certos = 4) então
Escreval("VOCÊ ACERTOU A SENHA!!!")
Escreval("Parabéns, jogador!")
Escreval("Seu SCORE será aumentado.")
pontos_jogadores[jogador_atual] <- pontos_jogadores[jogador_atual] + 10
Interrompa
FimSE
SE (certos <> 4) e (jogada = 10) então
Escreval("Você não conseguiu descobrir a senha..")
Escreval("Seu SCORE será diminuido.")
pontos_jogadores[jogador_atual] <- pontos_jogadores[jogador_atual] - 10
Interrompa
FimSE
certos <- 0
FimPara
FimSE
FimSE
Menu1
SE (menu = 3) então //RANKING
Escreval("============== RANKING DE PONTOS ==============")
houveTroca <- verdadeiro
ENQUANTO houveTroca FACA
houveTroca <- FALSO
PARA j de 1 ATE 10-1 FACA
SE pontos_jogadores[j] < pontos_jogadores[j+1] então
aux <- pontos_jogadores[j+1]
pontos_jogadores[j+1] <- pontos_jogadores[j]
pontos_jogadores[j] <- aux
houveTroca <- verdadeiro
FIMSE
FIMPARA
FimEnquanto
Para contador1 de 1 ate 10 faca
Escreval("Pontuação do jogador", contador1,":", pontos_jogadores[contador1])
FimPara
FimSE
Menu1
SE (menu = 4) então
Interrompa
FimSE
Fimalgoritmo