Baixe o app para aproveitar ainda mais
Prévia do material em texto
// Disciplina : [Linguagem e Lógica de Programação] // Professor : Antonio Carlos Nicolodi // Arquivo com um algoritmo: C:\Users\Viktor\Algoritmos\JOGO DA FORCA FINAL.ALG // Data de impressão: 24/02/2018 1 algoritmo "JOGO DA FORCA" 2 var 3 verif:logico 4 pal:vetor[0..9] de caractere 5 desc:vetor[1..20] de caractere 6 rep:vetor[1..26] de caractere 7 acerto,tent,erro,tletras,i,sort,c: inteiro 8 rletra,dica,jnov,m,pospal,resp,letra:caractere 9 10 Procedimento adivinha()//Escreve as "_" com a quantidade de letras 11 var 12 l: inteiro 13 inicio 14 Para l <- 1 ate Compr(pal[sort]) faca 15 Se (desc[l] = "") entao 16 desc[l] <- "_" 17 FimSe 18 Escreva(desc[l]:3) 19 pospal <- pal[sort] 20 FimPara 21 Escreval() 22 FimProcedimento 23 24 Procedimento desenho() 25 26 inicio 27 //Desenhos conforme os erros 28 Se (tent = 0) entao 29 Escreval("_______________________ ") 30 Escreval("|/ |") 31 Escreval("| |") 32 Escreval("| ") 33 Escreval("| ") 34 Escreval("| ") 35 Escreval("| ") 36 Escreval("| ") 37 Escreval("|") 38 Escreval("|") 39 Escreval("|") 40 Escreval("|\_______________________") 41 Escreval("|________________________|") 42 FimSe 43 Se (tent = 1) entao 44 Escreval("_______________________ ") 45 Escreval("|/ |") 46 Escreval("| |") 47 Escreval("| O") 48 Escreval("| ") 49 Escreval("| ") 50 Escreval("| ") 51 Escreval("|") 52 Escreval("|") 53 Escreval("|") 54 Escreval("|") 55 Escreval("|\_______________________ ") 56 Escreval("|________________________|") 57 FimSe 58 Se (tent = 2) entao 59 Escreval("_______________________ ") 60 Escreval("|/ |") 61 Escreval("| |") 62 Escreval("| O") 63 Escreval("| /|\") 64 Escreval("| ") 65 Escreval("| ") 66 Escreval("|") 67 Escreval("|") 68 Escreval("|") 69 Escreval("|") 70 Escreval("|\_______________________ ") 71 Escreval("|________________________|") 72 FimSe 73 Se (tent = 3) entao 74 Escreval("_______________________ ") 75 Escreval("|/ |") 76 Escreval("| |") 77 Escreval("| O") 78 Escreval("| /|\") 79 Escreval("| |") 80 Escreval("| ") 81 Escreval("|") 82 Escreval("|") 83 Escreval("|") 84 Escreval("|") 85 Escreval("|\_______________________ ") 86 Escreval("|________________________|") 87 FimSe 88 Se (tent = 4) entao 89 Escreval("_______________________ ") 90 Escreval("|/ |") 91 Escreval("| |") 92 Escreval("| O") 93 Escreval("| /|\") 94 Escreval("| |") 95 Escreval("| / \") 96 Escreval("|") 97 Escreval("|") 98 Escreval("|") 99 Escreval("|") 100 Escreval("|\_______________________ ") 101 Escreval("|________________________|") 102 FimSe 103 104 FimProcedimento 105 inicio 106 107 //Sorteio da palavra 108 pal[0] <- "china" 109 pal[1] <- "casa" 110 pal[2] <- "rua" 111 pal[3] <- "terra" 112 pal[4] <- "computador" 113 pal[5] <- "televisao" 114 pal[6] <- "porta" 115 pal[7] <- "paralelepipedo" 116 pal[8] <- "egito" 117 pal[9] <- "brasil" 118 sort <- randi(9)// Comando que deixa o computador escolher aleatoriamente o vetor 119 tletras <- Compr(pal[sort]) 120 tent <- 0 121 122 //Seleciona a dica da palavra 123 Escolha (sort) 124 Caso 0 125 dica <- ("É um pais") 126 Caso 1 127 dica <- ("É um tipo de moradia") 128 Caso 2 129 dica <- ("Um tipo de estrada") 130 Caso 3 131 dica <- ("Um Planeta") 132 Caso 4 133 dica <- ("Um tipo de eletrodomestico") 134 Caso 5 135 dica <- ("Um tipo de eletrodomestico") 136 Caso 6 137 dica <- ("Muitas pessoas abrem e fecham") 138 Caso 7 139 dica <- ("Usado em ruas antigas") 140 Caso 8 141 dica <- ("É um pais") 142 Caso 9 143 dica <- ("É um pais") 144 FimEscolha 145 146 147 //Desenha a tela do progrma, perguta a letra e mostra as letras repetidas 148 Repita 149 Limpatela 150 acerto <- 0 151 erro <- 0 152 desenho() 153 adivinha() 154 c <- c+1 155 Escreval("LETRAS USADAS: ",rletra) 156 EscrevaL("DiCA: ",dica) 157 Repita 158 Escreva("Digite uma letra: ") 159 Leia(letra) 160 161 verif <- verdadeiro // teste logico para letra repetida 162 Para i <- 1 ate 26 faca 163 Se(rep[i] = letra) entao 164 verif <- falso 165 FimSe 166 FimPara 167 se (verif = falso) entao 168 EscrevaL("VOCE JA USOU ESSA LETRA, DIGITE OUTRA") 169 FimSe 170 rep[c] <- letra 171 Ate (verif = verdadeiro) 172 173 Para i <- 1 ate Compr(pal[sort]) faca //Digita a letra correta da palavra na FORCA 174 Se (Copia(pospal,i,1) = letra) entao 175 desc[i] <- maiusc(letra) 176 tletras <- tletras - 1 177 acerto <- 1 178 FimSe 179 FimPara 180 181 rletra <- rletra +(" ")+ maiusc(letra)//Mostra as letras que já foram usadas 182 183 Para i <- 1 ate Compr(pal[sort]) faca //Contador de erro 184 Se (Copia(pospal,i,1) <> letra) entao 185 erro <- 1 186 FimSe 187 FimPara 188 Se (erro = 1) e (acerto = 0) entao 189 Escreva("VOCE ERROU!!") 190 Escreva("PRESSIONE 'ENTER',PARA CONTINUAR") 191 leia(m) 192 tent <- tent + 1 193 FimSe 194 Ate(tletras = 0) ou (tent = 4) 195 196 LimpaTela //Resultado final 197 desenho() 198 Se (tletras = 0) entao 199 Escreval("VOCE GANHOU O JOGO!!!") 200 Escreval("A PALAVRA CORRETA É:",maiusc(pospal)) 201 FimSe 202 Se (tent = 4) entao 203 Escreval("VOCE PERDEU O JOGO!!!") 204 Escreval("A PALAVRA CORRETA É:",maiusc(pospal)) 205 FimSe 206 fimalgoritmo
Compartilhar