Ir para conteúdo
Fórum Script Brasil

Barthô

Membros
  • Total de itens

    1
  • Registro em

  • Última visita

Sobre Barthô

Barthô's Achievements

0

Reputação

  1. Olá pessoal, estou com grande dificuldade neste exercício. É no final, na hora de imprimir as informações recebidas. Gostaria de receber a ajuda de alguém. ENUNCIADO DO EXERCÍCIO: Suponha que uma Casa de Jogos queira "agitar" suas rodadas de jogos. Entre os frequentadores normais do lugar eles inserem (até 12) jogadores contratados para se misturarem aos frequentadores. Então sugere-se que esses jogadores, após declarados seus nomes, tenham uma "agenda" com horários (até 24 vezes por dia), porém só poderão jogar nas horas cheias. Ex: 9h,13h,22h, etc. Os jogadores terão um tipo a ser definido no ato do cadastro (FORTE, FRACO, MÉDIO, etc.) e um lema, também a ser definido no momento do cadastro ("DESISTIR JAMAIS","DEVAGAR E SEMPRE","SÓ JOGO POR ESPORTE",etc.). Cada jogador poderá jogar quantas vezes quiser (até 24 no dia). Todos os jogadores contratados receberão valores para jogar (em notas ou moedas). Caso sejam notas só poderão apostar 1 nota por vez, mas se forem moedas poderão optar pela quantidade a ser apostada. Ao final do cadastro imprimir as informações (que serão afixadas num quadro de avisos) contendo: NOME, TIPO, LEMA, VEZES e o(s) HORÁRIOS referentes à quantidade de vezes. Conforme abaixo: Escreva: "O jogador NOME que é do tipo TIPO, cujo lema é LEMA irá jogar VEZES ao dia nos seguintes HORÁRIO." Com a ajuda de um amigo consegui chegar no modelo abaixo que está todo comentado: var jogador: vetor [1..12] de literal //nome do jogador tipo: vetor [1..12] de literal //FORTE, FRACO ou MÉDIO lema: vetor [1..12] de literal//VENCER, JOGAR, BRINCAR vezes: vetor [1..12] de inteiro //quantidade de vezes ao dia moedas: vetor [1..12] de inteiro//valores recebidos pelo jogador notas: vetor [1..12] de inteiro//valores recebidos pelo jogador hora: vetor [1..24] de inteiro //armazena a posição do jogador na posição da hora horario: inteiro //usada no cadastro de horas i: inteiro //variável para cadastrar os jogadores k: inteiro //variável para usar nos comandos para quant,aux,aux1,aux2: inteiro coordenador,resposta:literal dia,dia1: real inicio // Seção de Comandos escreval ("------------------------------------------------------------------") escreval ("CADASTRAR ATÉ 12 JOGADORES, ONDE CADA UM PODERÁ JOGAR ATÉ 24 VEZES") escreval ("VEZES, SENDO UMA VEZ POR HORA, NO MÁXIMO.") escreval ("------------------------------------------------------------------") escreval ("--------------------------------------------------------------------") escreval ("TODOS OS JOGADORES RECEBERÃO VALORES PARA JOGAR. EM NOTAS OU MOEDAS.") escreval ("*DEVERÁ DECLARAR SE SÃO NOTAS OU MOEDAS. SÓ PODERÁ APOSTAR UMA NOTA*") escreval ("*POR VEZ. MAS, PODERÁ ESCOLHER A QUANTIDADE DE MOEDAS PARA APOSTAR.*") escreval ("--------------------------------------------------------------------") escreva ("Deseja iniciar um cadastramento de jogadores?: ") leia (resposta) se resposta <> "sim" então escreval ("Não recebemos o seu SIM e estamos encerrando o programa. Obrigado!") interrompa//Ok, interrupção funcionando! senao escreval ("--------------------") escreval ("INICIANDO O CADASTRO") escreval ("--------------------") escreva ("Coordenador(a), por favor, digite seu nome: ") leia (coordenador) escreval ("----------------------------------") escreval ("Seja bem-vindo(a) ",coordenador,".") escreval ("----------------------------------") escreval ("Você poderá cadastrar até 12 jogadores.") escreva ("Quantos jogadores pretende cadastrar?: ") leia (quant) escreval ("---------------------------------------------------") escreval ("Ok, entendi. Serão cadastrados ",quant," jogadores.") escreval ("---------------------------------------------------") para i de 1 ate quant faca escreval ("Digite os dados do ",i,"º jogador: ") escreval ("-----------------------------------") escreva ("NOME: ") leia (jogador[i]) escreva ("TIPO: ") leia (tipo[i]) escreva ("LEMA: ") leia (lema[i]) escreva ("QUANTAS VEZES ",jogador[i]," JOGARÁ?: ") leia (vezes[i]) escreval ("Ok, entendi. O jogador ",jogador[i]," jogará",vezes[i]," vezes.") escreval ("----------------------") escreval ("INFORMAÇÕES ADICIONAIS") escreval ("----------------------") escreva ("O jogador ",jogador[i]," está recebendo notas? ") leia(resposta) se resposta = "sim" então escreva ("QUANTAS NOTAS?: ") leia (notas[i]) aux<-notas[i] escreval ("----------------------------------------") escreval ("Ok, o jogador ",jogador[i]," está recebendo ",aux," notas.") dia1<-aux/vezes[i]//dia1 recebe cálculo final referente a notas escreval ("Com base nas vezes, as notas do jogador ",jogador[i]," vão durar:",dia1," dias(s).") senao escreval ("---------------------------------------") escreval ("Ok, entendi. Não são notas, são moedas.") escreval ("---------------------------------------") escreva ("QUANTAS MOEDAS?: ") leia (moedas[i]) aux1<-moedas[i]//aux1 para qtdade total de moedas escreval ("------------------------------------------") escreval ("Ok, o jogador ",jogador[i]," está recebendo ",aux1," moedas.") escreval ("------------------------------------------") escreva ("Qual a quantidade de moedas a ser(em) apostada(s) em cada jogada?: ") leia(aux2)//aux2 para qtdade de moedas em cada jogada dia<-aux1/(aux2*vezes[i])//dia recebe cálculo final referente a moedas escreval ("Com base nas vezes, as moedas do jogador ",jogador[i]," vão durar:",dia," dias(s).") fimse escreval ("---------------------") escreval ("CADASTRO DOS HORÁRIOS") escreval ("---------------------") escreval ("Digite os ",vezes[i]," horário(s) em que o jogador ",jogador[i]," jogará :") para k de 1 ate vezes[i] faca escreva("O ",k, "º horario é: ") leia (horario)//ler a hora desejada hora[horario] <- i //armazena a posição do jogador na "posição" da hora escreval ("Recebi ",horario," hora(s) para o jogador ",jogador[i]," que está na",i,"ª posição.") escreval ("Esta posição e este horário pertencem ao jogador, ",jogador[i],".") escreval ("----------------------------------------------------------") //Poderá haver vários jogadores jogando no mesmo horário. Portanto, o mais correto é que "cada jogador" tenha a sua disposição 24 horas fimpara fimpara fimse escreval ("-------------------------------------") escreval ("*IMPRESSÃO DAS INFORMAÇÕES RECEBIDAS*") escreval ("-------------------------------------") escreval ("OBS: Quando zerado, é porque não há o que ser impresso.") escreval ("Você chegou ao fim das informações. Deseja imprimi-las ?") escreval ("--------------------------------------------------------") leia (resposta) se resposta <> "sim" então escreval ("------------------------------------------------------------------") escreval ("Não recebemos o seu SIM e estamos encerrando o programa. Obrigado!") escreval ("------------------------------------------------------------------") interrompa//Ok, interrupção funcionando! senao para i de 1 ate quant faca para k de 1 ate vezes[i] faca escreval ("------------------------------------------------------------------------------") escreval ("O jogador ",jogador[i]," cujo lema é ",lema[i],". É do tipo ",tipo[i],". Ele jogará às ",k," horas.") //PROBLEMAS NA IMPRESSÃO FINAL SOMENTE NA POSIÇÃO "HORAS". O RESTANTE ESTÁ CORRETO. //quando escrevemos "horário" ele imprime apenas a ultima informação recebida pela variável horário //quando escrevemos "hora[i]" ele imprime a posição do jogador, pois é isso que está cadastrado no vetor horas //quando escrevemos "hora[horario]" ele imprime a posição do último jogador cadastrado //quando escrevemos "k" ele imprime os índices solicitados na digitação dos horários de cada jogador //Daria para imprimir o índice da hora (posição do vetor horas) em vez da posição do jogador? fimpara fimpara fimse escreval ("------------------------------------------------") escreval ("CHEGAMOS AO FINAL DO CADASTRO ",coordenador," OBRIGADO.") escreval ("------------------------------------------------") fimalgoritmo Meu Email Obrigado e abraços.
×
×
  • Criar Novo...