Exercício 030 -Jogo do Pin

Home Fóruns Programação Básica Exercício 030 -Jogo do Pin

Visualizando 25 respostas da discussão
  • Autor
    Posts
    • #97432
      MARCIO PAIVA
      Participante

      Boa tarde tudo bem ?

      eu gostaria que alguém desse uma analisada nesse exercício
      para ver se está correto ou faltando algo.

      eis aqui o código:

      programa
      {
      inclua biblioteca Util–>u

      funcao inicio()
      {
      escreva(“{EXERCÍCIO 030-Jogo do Pin}”)
      inteiro pont_inicial = 0,pont_final = 100
      escreva(“\nQuer contar até quanto ? “)
      leia(pont_inicial)

      enquanto(pont_inicial<=pont_final){
      pont_inicial = pont_inicial + 1
      u.aguarde(500)
      se(pont_inicial%4==0 e pont_inicial!=0){
      escreva(“PIN!”)
      }senao{
      escreva(pont_inicial,” “)

    • #97446
      Tutora Jessica
      Moderador

      Olá Marcio,
      O seu código esta funcionando, mas , o que foi proposto no exercício é que o sistema conte até o número informado pelo usuário.
      A sua lógica esta fazendo com que o sistema conte até 100 a partir do número informado pelo usuário.
      Caso esteja com dificuldade de lógica, revise novamente a aula, se mesmo assim tiver dúvidas retorne ao fórum que iremos lhe ajudar.
      Bons estudos 🖖

    • #97460
      MARCIO PAIVA
      Participante

      Boa noite tudo bem Jéssica

      eis aqui o exercício refeito:
      dá uma analisada

      `programa
      {
      inclua biblioteca Util–>u

      funcao inicio()
      {
      escreva(“{EXERCÍCIO 029-Jogo do Pin}”)
      inteiro pont_inicio = 0,pont_final,multiplos
      cadeia increment = “PIN!”
      escreva(“\nA sua contagem vai começar em: “)
      leia(pont_final)
      enquanto(pont_inicio<=pont_final){
      pont_inicio = pont_inicio + 1
      se(pont_inicio % 4 == 0 e pont_inicio!=0){
      escreva(increment)
      }senao{
      escreva(pont_inicio,” – “)
      u.aguarde(500)

    • #97496
      Tutora Jessica
      Moderador

      Olá Marcio,
      Vou só te pedir um favor, quando for postar o código aqui se atente a postar onde já existe o tópico, no seu caso “Exercício 30 – Jogo do pin”, para que o fórum fique organizado. 🙂
      Peço também para que quando enviar o código, enviar formatado, para isso é só selecionar o código por completo e clicar em CODE na parte superior da caixinha aqui do fórum.
      Retornando a sua dúvida, seu código continua funcionando, mas não da forma que pede o exercício.
      No exercício se pede para que o cliente escreva um número e o sistema vai contar até o número indicado pelo cliente.
      O código precisa que o cliente informe esse número e ele pare nesse número informado.
      Te indico a retornar com a mensagem : Quer contar até quanto ? para não se confundir.
      Vou tentar te explicar umas coisinhas..
      Você não precisa dar um valor para pont_inicio e sim para pont_final(que é da onde o código vai pegar o ultimo numero) que ficaria pont_final = 1, a variavel multiplos não esta sendo usada, então pode retirar.
      No leia, você precisa ler o pont_inicio.
      No enquanto, deve ficar ao contrário dessa forma : enquanto(pont_final <= pont_inicio){.. a partir dessas informações, tente fazer novamente o código.
      Ah, uma dica o u.aguarde fica fora do senão, e seu código precisa de um contador no final dele.
      Depois nos dê um feedback se funcionou dessa forma, beleza?
      Te aguardo, bons estudos 🖖🖖

    • #97603
      MARCIO PAIVA
      Participante

      Oi Jéssica tudo bem !
      Conforme a tua orientação e fiz o código, porém
      ela entra em luuping infinito gostaria que você dessa uma analisada para ver o que está faltando:

      funcao inicio()
      {
      escreva(“{EXERCÍCIO 030-Jogo do Pin”)
      inteiro ponto_final = 1,ponto_inicial
      cadeia incremento = “PIN!”
      escreva(“\nQuer contar até quanto ? “)
      leia(ponto_inicial)
      ponto_final++

      enquanto(ponto_final<=ponto_inicial){
      se(ponto_inicial % 4 == 0 e ponto_final!=0){
      escreva(incremento)
      }senao{
      escreva(ponto_inicial,” – “)
      }
      u.aguarde(500)
      ponto_inicial++

      }
      }
      }

    • #97708
      Tutora Jessica
      Moderador

      Olá Marcio, parabéns por sempre tentar resolver os seus códigos, continue assim!!

      Vamos lá..

      O primeiro contador que você colocou, não precisa dele, pois senão ele começa o código a partir do número 2 em diante.
      No primeiro SE não há necessidade de colocar nada relacionado ao ponto_inicial pois você só precisa pegar as informações do ponto_final ficando dessa forma:

      se(ponto_final % 4 != 0 ){

      No primeiro escreva do SE, você precisa pegar a informação do ponto_final, pois assim ele vai parar onde o usuário pediu, dessa forma:

      escreva(ponto_final," – ")

      Sendo assim, o senão vai receber o incremento.

      E o ultimo contador esta no lugar certinho, só precisa receber o ponto_final.

      Veja se a partir dessa pequena explicação, você consegue concluir esse código, senão só voltar que estaremos aqui para lhe ajudar. 🖖

    • #97744
      MARCIO PAIVA
      Participante

      OI Jéssica tudo bem!

      Refiz o código com você me orientou. Todavia quando digito quero contar até dez.
      O programa começa com 10 só que ele não para de contar. os números multipolos de quatro aparece a palavra pin.
      Já coloquei no final esses comando ponto_incial++ e ponto _incial + ponto_inicial + 1, ponto_final = ponto_final + 1 ponto_final++
      e assim por diante. Já testei essas possibilidades. Vou te enviar o código para analise:

      escreva(“{EXERCÌCIO 030-Jogo do Pin}”)
      inteiro ponto_inicial,ponto_final = 1
      cadeia incremento = “PIN!”
      escreva(“\nQuer contar até quanto ? “)
      leia(ponto_inicial)
      enquanto(ponto_final<=ponto_inicial){
      se(ponto_final % 4 !=0 ){
      escreva(ponto_inicial,” – “)
      }senao{
      escreva(incremento)

      }
      ponto_inicial++
      ponto_final =+ponto_inicial
      u.aguarde(500)`

    • #97747
      MARCIO PAIVA
      Participante

      Esse outro acabei de fazer agora pouco. quando coloco quero contar até 10.

      o programa começa pelo um mas o looping continua.

      eis aqui o código dá uma olhada nesse aqui que acabei de refazer:

      `escreva(“{EXERCÍCIO 030-Jogo do Pin}”)
      inteiro ponto_inicial,ponto_final = 1
      cadeia incremento = “PIN!”
      escreva(“\nQuer contar até quanto ? “)
      leia(ponto_inicial)
      enquanto(ponto_inicial>=ponto_final){
      se(
      ponto_final % 4 !=0){
      escreva(ponto_final,” – “)
      }senao{
      escreva(incremento)

      }
      ponto_inicial++
      ponto_final = ponto_final + 1
      u.aguarde(500)

    • #97780
      Tutora Jessica
      Moderador

      Olá Marcio, novamente, inverte o enquanto, dessa forma:
      enquanto(pont_final <= pont_inicio){

      O final do código só precisa do:

      u.aguarde(500)
      pont_final ++

      Veja se dessa forma o looping para e o código para no número certinho. 🖖

    • #97881
      MARCIO PAIVA
      Participante

      Oi Jéssica tudo bem !

      consegui fazer o exercício tomara que esteja certo

      eis aqui o código para analise:

      ` programa
      {
      inclua biblioteca Util–>u

      funcao inicio()
      {
      escreva(“{EXERCÍCIO 030-Jogo do Pin}”)
      inteiro ponto_inicial,ponto_final = 1
      cadeia incremento = “PIN!”
      escreva(“\nQuer contar até quanto ? “)
      leia(ponto_inicial)
      enquanto(ponto_inicial>=ponto_final){
      se(ponto_final % 4 !=0){
      escreva(ponto_final,”-“)
      }senao{
      escreva(incremento)

      }
      ponto_inicial=+ponto_inicial
      ponto_final++
      u.aguarde(500)
      }
      escreva(“\nFim”)
      }
      }

    • #97931
      Tutora Jessica
      Moderador

      Parabéns Marcio, seu código esta funcionando direitinho!!
      Parabéns também pelo sem empenho, corra sempre atrás dos seus objetivos que você vai longe 🙂
      Bons estudos 🖖

    • #97962
      MARCIO PAIVA
      Participante

      Obrigado Jéssica pelo incentivo

    • #100616
      Marcos Missone
      Participante

      Boa noite

      Peco Analise do exercicio – Jogo de Pin

      Cpts

      programa
      {

      inclua biblioteca Util –> u
      funcao inicio()
      {
      inteiro inic, final = 1

      escreva(“Quer Contar ate quanto? “)
      leia(inic)

      enquanto(final <= inic){
      escreva(final, ” – “)

      final = final + 1

      u.aguarde(500)

      se(final % 4 != 0){
      }senao{
      escreva(“PIN\n”)
      }

      }

      }
      }
      `

    • #100694
      Tutora Jessica
      Moderador

      Olá Marcos, o seu código esta funcionando, mas não como pede o exercício..
      Nesse exercício a palavra PIN, precisa não pode mostrar os números que sejam da tabuada de 4,
      Exemplo: quero contar até o número 10, então meu código não pode mostrar o número 4 e 8, em vez dos números, deve aparecer a palavra PIN.
      Revise esse código e caso tenha alguma dúvida, só retornar ao fórum 🖖

    • #100748
      Marcos Missone
      Participante

      Bom dia

      Muito brigado pela atenção. mas agora tenho outro
      problema, o programa conta partir de numero 2.
      como faço para resolver?
      Cpts

      programa
      {
      inclua biblioteca Util –> u
      funcao inicio()
      {
      inteiro inic, final = 1

      escreva(“Quer Contar ate quanto? “)
      leia(inic)

      enquanto(final <= inic){
      final = final + 1
      u.aguarde(500)

      se(final % 4 != 0){
      escreva(final, ” – “)

      }senao{
      escreva(“PIN\n”)
      }

      }

      }
      }`

    • #100754
      Tutora Jessica
      Moderador

      Bom dia Marcos,
      Nesse caso é só você iniciar sua variável final com 0 em, vez de 1.

      1) Sempre que for postar um código, formate-o:
      1- Ao colar seu código aqui, selecione ele todo novamente.
      2- Uma vez selecionado, basta clicar em CODE que se encontra na barra de edição de texto logo acima ( dentro dessa caixa de texto )
      3- Notará que serão colocadas crases ( ` ) no inicio e fim.

      Isto fará com que fique corretamente exposto no fórum.🖖

    • #100755
      Tutora Jessica
      Moderador

      Após isso, vai aparecer um outro erro no seu enquanto.
      Veja se consegue verifica-lo.

    • #100802
      Marcos Missone
      Participante

      Bom dia Tutora Jessica

      Para a vossa verificação depois das dicas
      Cpts

      programa
      {
      	inclua biblioteca Util --> u
      	funcao inicio()
      	{
      	inteiro inic, final = 0
      	
      	escreva("Quer Contar ate quanto? ")
      	leia(inic)
      
      	enquanto(final <= inic){
      		final = final + 1
      		u.aguarde(500)
      		
      		se(final % 4 != 0){
                   escreva(final, " - ")
      			
      		}senao{
      			escreva("PIN\n")
      		}
      		
      	}
      	
      	}
      }
    • #100869
      Tutora Jessica
      Moderador

      Ola Marcos!!
      O seu enquanto ainda esta com erro!!
      a contagem esta passando 1 ainda do número!
      Exemplo:
      Quer Contar ate quanto?
      se coloco 10, a contagem esta indo até 11..
      O erro esta ali no seu enquanto.
      Tente identificá-lo, senão conseguir, só retornar aqui que lhe ajudo. 🖖

      • #102089
        Marcos Missone
        Participante

        Boa noite Tutora!

        Nao consigo identificar o erro.

      • #102116
        Tutora Jessica
        Moderador

        Ola Marcos,
        Então, você declarou o incremento final = final + 1 no começo do laço enquanto , ele precisa estar no final, dessa forma:

        programa
        {
        	inclua biblioteca Util --> u
        	funcao inicio()
        	{
        	inteiro inic, final = 1
        	
        	escreva("Quer Contar ate quanto? ")
        	leia(inic)
        
        	enquanto(final <= inic){
        		//final = final + 1
        		u.aguarde(500)
        		
        		se(final % 4 != 0){
                     escreva(final, " - ")
        			
        		}senao{
        			escreva("PIN\n")
        		}
        
        		final = final + 1
        			
        	}
        	
        	}
        }

        Repare também que iniciei sua variável final com 1, pois caso ela inicie com 0, a contagem irá começar por PIN..

    • #100932

      Boa tarde! Eu acho que está quase tudo certo! Apenas não consegui retirar os numeros multiplos de 4. No caso o programa consegue escrever PIN.
      Mas os numeros continuam lá. Faz um tempo que estou tentando e ainda não achei a solução.

      
      inclua biblioteca Util --> u
      	funcao inicio()
      	{
      		inteiro c
      		inteiro cc=1
      		cadeia in=("PIN!!")
      		
      		escreva("Até que numero você quer contar?")
      		leia(c)
      		//inteiro c2 = (c*4)
      
      		enquanto(cc<=c){
      			
      			escreva(cc)
      			cc=(cc + 1)
      			
      			se ( cc %4 != 0  )
      			 	escreva("\n-")
      			 	senao 
      			 	escreva("\n" + in)
    • #100935
      Tutora Jessica
      Moderador

      Olá Fabio,
      Olha eu lhe recomendaria dar uma olhada em algumas resoluções acima e novamente no vídeo dessa aula, para ver se consegue resolver essa questão..
      Você precisa nesse exercício que apareçam os números até o número colocado pelo usuário, para isso o seu cc precisa iniciar em 0.
      Os números da tabuada de 4 não podem aparecer, em vez disso aparece a palavra “PIN”.
      Você precisa alterar as informações do seu enquanto, e no SE, também precisa incluir o cc no escreva;
      Veja se consegue resolver esse exercício, caso ainda fique com dúvidas retorne ao fórum que lhe ajudaremos.
      Bons estudos 🖖

    • #103937
      Neander Fontes
      Participante

      Olá, Gostaria de Ajuda no Jogo do Pin, por favor!!
      meu Código está organizado, porém não consigo substituir o valor do múltiplo 4 para “Pin!”

      programa
      {/* Módulo03 Aula02 – Estrutura de Repetições no Início
      * Portugol Exercício030.
      * Autor: Neander
      * Data: 26/10/2022
      * Local: Portugal-Braga
      * Empresa: Estudonauta
      */
      inclua biblioteca Util
      funcao inicio()
      {
      //Exercício 030: – Jogo do Pin
      escreva(“{ EXERCÍCIO 30 – Jogo do Pin }”)
      //Obs.: Jogo do Pin são Múltiplos de 4 trocados por PIN!
      //Declarações de Variáveis:
      inteiro numFim, contador
      cadeia pin = “Pin!”
      //Entrada de Dados:
      escreva(“\n\n——————– Exercício ——————–“)
      escreva(“\n\n————————————–“)
      escreva(“\n\t Jogo do Pin”)
      escreva(“\n————————————–“)
      escreva(“\n======================================”)
      escreva(“\nQuer contar até quanto? “)
      leia(numFim)
      escreva(“======================================”)
      //Cálculo se necessário:
      //Declarações Finais:
      contador = 0
      escreva(“\n”)
      enquanto (contador <= numFim) {
      escreva(contador + ” -> “)
      ++contador
      Util.aguarde(250)
      se(contador % 4 == 0) {
      escreva(pin + “\n”)
      }
      }
      Util.aguarde(600)
      escreva(“Fim da Contagem!!”)
      escreva(“\n\n———————— Fim ————————“)
      }
      }

    • #103939
      Neander Fontes
      Participante

      Olá, Gostaria de Ajuda no Jogo do Pin, por favor!!
      meu Código está organizado, porém não consigo substituir o valor do múltiplo 4 para “Pin!”

      `programa
      {/* Módulo03 Aula02 – Estrutura de Repetições no Início
      * Portugol Exercício030.
      * Autor: Neander
      * Data: 26/10/2022
      * Local: Portugal-Braga
      * Empresa: Estudonauta
      */
      inclua biblioteca Util
      funcao inicio()
      {
      //Exercício 030: – Jogo do Pin
      escreva(“{ EXERCÍCIO 30 – Jogo do Pin }”)
      //Obs.: Jogo do Pin são Múltiplos de 4 trocados por PIN!
      //Declarações de Variáveis:
      inteiro numFim, contador
      cadeia pin = “Pin!”
      //Entrada de Dados:
      escreva(“\n\n——————– Exercício ——————–“)
      escreva(“\n\n————————————–“)
      escreva(“\n\t Jogo do Pin”)
      escreva(“\n————————————–“)
      escreva(“\n======================================”)
      escreva(“\nQuer contar até quanto? “)
      leia(numFim)
      escreva(“======================================”)
      //Cálculo se necessário:
      //Declarações Finais:
      contador = 0
      escreva(“\n”)
      enquanto (contador <= numFim) {
      escreva(contador + ” -> “)
      ++contador
      Util.aguarde(250)
      se(contador % 4 == 0) {
      escreva(pin + “\n”)
      }
      }
      Util.aguarde(600)
      escreva(“Fim da Contagem!!”)
      escreva(“\n\n———————— Fim ————————“)
      }
      }

    • #103945
      Tutora Jessica
      Moderador

      Ola Neander..
      Seu código precisa de algumas alterações..
      A sua variável contador, precisa iniciar em 1, senão seu código já inicia com PIN.
      Você não precisa criar uma variável pin dizendo que recebe “Pin!”, é só colocar um escreva(“Pin!”), assim o código fica menor um pouco.

      Nessa parte do seu código, preste bastante atenção:

      enquanto (contador <= numFim) {
            Util.aguarde(250)
      se(contador % 4 != 0) {
             escreva(contador + "\n")
      }
      senao {
      	escreva(pin)
      	}
      contador++
      }
      Util.aguarde(600)

      O seu enquanto, não precisa de nenhuma informação , onde precisa de informação é dentro do seu SE/SENAO, no seu SE, você precisa colocar que contador % 4 != 0, ou seja, fica DIFERENTE DE com esse sinal de exclamação na frente do igual.
      A sua incrementação de laço (contador++) precisa ficar nessa posição, entre as chaves.
      Preste bastante atenção no que o exercício pede, e nunca deixe de pesquisar soluções para o seu código, o importante é você saber exatamente o que cada elemento faz no seu código.
      Espero ter ajudado, caso tenha mais alguma dúvida, só retornar ao fórum.🖖
      E, ah.. quando for nos enviar seu código, cole o mesmo aqui no fórum, selecione ele por completo e clique na opção CODE aqui na caixinha, assim o código já vem identado certinho pra gente. 🖖

    • #104400
      Marlei GS
      Participante

      Hello crazy people!!!!

      Segue meu cod.

      Opção A

      programa
      {
      	inclua biblioteca Util --> u
      	funcao inicio()
      	{
      		escreva("Ex 30: Jogo do PIN!!\n\n")
      
      		inteiro c = 1, n
      
      		escreva("Quer contar até quanto? ")
      		leia(n)
      
      		escreva("Início:\n")
      
      		enquanto (c <= n) {
      			se (c % 4 != 0)
      				escreva(c, " - ")
      			senao 
      				escreva("PIN\n")
      		
      			c = c + 1
      			u.aguarde(500)
      		}
      		escreva("FIM!!!\n")
      	}
      }
      
      <strong>Opção B</strong>
      

      programa
      {

      inclua biblioteca Util –> u
      funcao inicio()
      {
      escreva(“Ex 30: Jogo do PIN!!\n\n”)

      inteiro c = 1, n

      escreva(“Quer contar até quanto? “)
      leia(n)

      escreva(“Início:\n”)

      enquanto (c <= n) {
      se (c % 4 == 0)
      escreva(“PIN\n”)
      senao
      escreva(c, ” – “)

      c = c + 1
      u.aguarde(500)
      }
      escreva(“FIM!!!\n”)
      }
      }

      bye!!!

    • #104479
      Tutora Jessica
      Moderador

      Olá Marlei, alguma dúvida?

Visualizando 25 respostas da discussão
  • Você deve fazer login para responder a este tópico.