MÓDULO 02 – Exercício 014

Home Fóruns Programação Básica MÓDULO 02 – Exercício 014

Visualizando 14 respostas da discussão
  • Autor
    Posts
    • #63531

      OLá,
      alguém sabe o por que a barra de escrita fica as vezes mais comprida e quando temos que voltar e corrigir algo ela apaga as letras e comentários que estão na frente??
      Tenho essa dúvida já faz um bom tempo. alguém consegue explicar por que isso ocorre e como configurar para voltar ao normal?
      Obrigado!

    • #63649
      Tutora Mayla
      Mestre

      Antonio, é possível que seu Portugol Studio esteja no modo de “insert”, este modo é ativado quando apertamos a tecla “Insert” do teclado, que faz com que o que digitamos vá substituindo o que estiver pela frente na mesma linha de código. Para desativar este modo basta apertar a tecla “Insert” novamente. Um indicativo de que este modo está ativo é esta barrinha de escrita, que fica mais grossa e cobre os caracteres que serão substituídas ao se digitar alguma coisa.

      Insert não é algo exclusivo do Portugol Studio e também existe em alguns outros programas.

      Espero ter ajudado, caso a dúvida persista basta entrar em contato.

    • #63704

      Show de bola, entendi Mayla, obrigado!

    • #75755

      No exercício quando digito o valor acima de 500, aparece a última linha do código (escreva (“\nVocê comprou R$ “, valor, ” na nossa loja. Obrigado! \n”).
      Sendo que a última linha deveria ser: escreva (“O valor a ser pago é R$ “, npreco, ” ! Obrigado e volte sempre \n”)
      Não estou conseguindo descobrir o erro.
      Segue abaixo o código:

      
                      real valor, desc, npreco
      		escreva (" { EXERCÍCIO 014 - Consumidor ganha 10% de desconto } \n")
      		escreva ("Qual foi o valor total das suas compras? R$ ")
      		leia (valor)
      		escreva ("------------------------------------------------------\n")
      		desc =  (valor * 10)/100
      		npreco= valor - (valor*10/100)
      		se (valor > 500 ) {
      			escreva ("Você comprou R$ ", valor, " na nossa loja. Obrigado! \n")
      			escreva ("=====ATENÇÃO==========================================\n")
      			escreva ("Por fazer mais de R$ 500 em compras, você vai receber R$ ", desc, " de desconto \n")
      			escreva ("O valor a ser pago é R$ ", npreco, " ! Obrigado e volte sempre \n")
      		}
      		escreva ("\nVocê comprou R$ ", valor, " na nossa loja. Obrigado! \n")
      • Esta resposta foi modificada 3 anos, 2 meses atrás por IcaroFilho.
      • Esta resposta foi modificada 3 anos, 2 meses atrás por IcaroFilho.
    • #75788
      IcaroFilho
      Moderador

      Bom dia Rondineli.
      Seu problema esta na condição if. Vc apenas criou uma condição simples e não fez um SE NAO. Ou seja, aquele ultimo ESCREVA sempre irá executar independente de qualquer coisa, pois ele não esta “condicionado”.
      Para corrigir basta utilizar a condicional composta.

      se (condição verdadeira) {
          bloco
      } se nao {
          bloco
      }
    • #75810
      Michel Souza
      Participante

      Olá Rondineli, o seu código está correto. Apenas pra melhorar, você repetiu o cálculo do desconto 2 (duas) vezes sem necessidade,
      `desc = (valor * 10)/100
      npreco= valor – (valor*10/100) `
      ou seja, calculou um desconto de 10% em cima do valor e atribuiu na variável desc, depois fez o praticamente o mesmo cálculo e atribuiu na variável npreco já com o valor reduzido. Poderia fazer assim:
      ` desc = (valor * 10) / 100
      npreco = valor – desc`
      ou até mesmo de forma direta, dando o desconto diretamente no novo preço, sem a necessidade do desc, assim:
      npreco = valor - (valor * 10/100)
      e como o Icaro disse, tem que criar uma condição “contrária” para o caso da situação for falsa.
      ` se (verdadeiro) {
      // codigo da condição verdadeira
      } senao {
      // codigo da condição falsa
      }`
      Espero ter ajudado.

    • #75910

      Obrigado! Icaro e Michel. Agradecido pela dica sobre o cálculo!!!

    • #84996
      Marcos Missone
      Participante

      Bom dia!

      Peco analise dos exercicios 13, 14, 15, 16

      programa
      {
      //EX013 – Bons alunos merecem parabens

      funcao inicio()
      {
      real n1, n2

      escreva(“Digite a sua primeira nota: “)
      leia(n1)
      escreva(“Digite a sua segunda nota: “)
      leia(n2)

      real m = (n1+n2) / 2

      se(m < 6) {
      escreva(“A sua media final e de: ” + m)
      }
      se (m >= 7){

      escreva(“PARABENS! A sua media e de ” + m)

      }

      }
      }

    • #84997
      Marcos Missone
      Participante

      `programa
      {
      //{ EX014 – Consumidor Ganha ganha 10% de desconto }

      funcao inicio()
      {
      real preco, n2

      escreva(“Qual foi o valor total das suas compras? “)
      leia(preco)
      escreva(“——————————————–“)

      real des = preco*10/100
      real npreco = preco – des

      se (npreco < 500){ //Condicoees simples

      escreva(“\nVoce comprou MZN” + preco + ” na nossa loja.Muito Obrigado “)
      }

      se (npreco >= 450){ // Condicoes simples

      escreva(“\n===== ATENCAO =====”)
      escreva(“\nPor fazer mais de MZN” + preco + ” em compras , voce vai receber MZN” + des + ” de desconto”)
      escreva(“\nO valor a ser pago e de MZN” + npreco +”! Volte sempre!”)

      }

      }
      }

    • #84998
      Marcos Missone
      Participante

      `programa
      {
      //{EX015 – Fila de Banco
      inclua biblioteca Calendario –> C
      funcao inicio()
      {

      inteiro ano, idade

      escreva(“Em que ano voce nasceu “)
      leia(ano)

      idade = C.ano_atual() – ano

      //se (idade != 60){

      escreva(“Voce tem ” + idade + ” certo? Seja bem-vindo(a) ao banco estudonauta”)
      // }
      se (idade >= 55 e idade != 60) { // Condicoes Simples
      escreva(“\n=== ATENCAO! DIRIJA – SE PARA A FILA PREFERENCIAL===”)
      }

      }

    • #84999
      Marcos Missone
      Participante

      `programa

      //EXERCICOS 016 – SERVICO MILITAR V1.0

      {
      inclua biblioteca Calendario –> C
      funcao inicio()
      {
      inteiro ano

      escreva(“Em que ano voce nasceu? “)
      leia(ano)

      inteiro idade = C.ano_atual () – ano
      inteiro idade2 = 18
      se (idade >= 18 e idade < 55 ){
      escreva(“Sua idade atual e ” + idade + ” anos \nEspero sinceramente que voce tenha se alistado”)
      } senao {
      escreva(“Sua idade atual e ” + idade + ” \nVoce ainda nao completou ” + idade2 + ” anos. nao pode se alistar “)
      }

      }
      }

      • #85021
        Tutora Vera
        Mestre

        Marcos, ambos os códigos estão rodando bem? Há alguma dúvida em específico em cada código que você postou?

    • #85060
      Marcos Missone
      Participante

      Bom dia!

      Muito obrigao pela atencao;

      Nesses exercicios porquanto nao. So queria a vossa confirmacao, se os exercicios estao corretos ou nao.
      Como diz o professor pode nao ter erro de sintax mas o calculo estar errado.

    • #85061
      Marcos Missone
      Participante

      Bom dia!

      Peco analise de exrcicio 017

      programa
      //EXERCICUOS 017 - Ano Bissexto
      {
      	
      	funcao inicio()
      	{
      	inteiro ano
      	
      	escreva("Digite um ano qualquer: ")
      	leia(ano)
      
      	se(ano % 4 == 0){
      		escreva("O ano " + ano + " E BISSEXTO!")   
      	}senao{
      		escreva("O ano " + ano + " NAO E BISSETO!")
      	}
      	
      	
      	
      	}
      }
      • #85090
        Tutora Vera
        Mestre

        Marcos, se o seu código está funcionando sem nenhum erro está no caminho certo, Parabéns. 🖖

    • #85264
      Marcos Missone
      Participante

      Bom dia;

      Peco ajuda!

      Quero saber porque o exercicio 018 nao faz os dois calculos. alguma coisa coisa esta errada?

      programa
      {
      //EX018 - PRECO DE PASSAGEM
      	
      	funcao inicio()
      	{
      
      	real km 
      	real preco = 0.5
      	real preco2 = 0.35
      	
      	
      	escreva("Informe a distancia total de viagem, em Km: ")
      	leia(km)
      	escreva("----------------------------------------------")
      	
      	real precot = km * 0.5 
      	real precot2 = km * 0.35
      	
      	se(precot >=1 e precot2 <= 299){
      		escreva("\nUma viagem de " + km + " km vai custar MZN " + preco + " valor total: " + precot)
      	}senao{
      		escreva("\nUma viagem " + km + " km vai custar MZN " + preco2 + " valor total: " + precot2)
      	}
          }
      }
      • Esta resposta foi modificada 2 anos, 9 meses atrás por IcaroFilho.
      • #85410
        IcaroFilho
        Moderador

        Boa noite Marcos,

        1- Como disse eu outras postagens sua. EVITE misturar as questões. O tópico foi criado para tratar a questão e duvidas referentes a questão 14 do modulo 2 e vc falou sobre a 13 – 14 – 15 – 16 – 17 e 18.

        2- Se o código esta rodando sem erros e a saída está correta. então está tudo certo, pois o mesmo exercício pode ter diversas maneiras diferentes de resolução.

        3- O curso possui a resolução das questões. Se suas duvidas permanecerem, estaremos felizes em sanar a duvida remanescente.

        4- referente a sua duvida. Como esta dentre de um condicionamento. Ele irá executar um bloco caso este seja verdadeiro e executará outro caso seja falso.
        Através da estrutura condicional, apenas um bloco será executado.

        • Esta resposta foi modificada 2 anos, 9 meses atrás por IcaroFilho.
    • #95614

      programa
      {

      //EXERCÍCIO 014 – CONSUMIDOR GANHA 10% DE DESCONTO SE PASSAR DE 500 TERÁ O DESCONTO.
      funcao inicio()
      {
      real pg, nv

      escreva(“Qual foi o valor total das suas compras? R$”)
      leia(pg)
      nv = pg-(pg*10/100)
      escreva(“———————————————“)
      se ( pg > 500 ){
      escreva(“\nVocê comprou R$”+ pg +” na nossa loja. Obrigado!”)
      escreva(“\n ===== ATENÇÃO =====”)
      escreva(“\nPor fazer mais de R$500 em compras, você vai receber R$”+ (pg*10/100) +(” de desconto “))
      escreva(“\nO valor a ser pago é de R$”+ nv+”! Volte Sempre! “)
      }
      se (pg <= 500){
      escreva(“\nVocê comprou R$”+ pg +” na nossa loja. Obrigado! “)
      }

      }
      }
      `

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