Exercício do Módulo 02 —-0022

Home Fóruns Programação Básica Exercício do Módulo 02 —-0022

Visualizando 4 respostas da discussão
  • Autor
    Posts
    • #65195

      Como fiz:
      programa
      {//Exercício 022- ordem crescente }
      funcao inicio()
      {inteiro n1, n2, ordem1, ordem2
      escreva(“\nEscreva um número: “)
      leia(n1)
      escreva(“\nEscreva um segundo número: “)
      leia(n2)
      se (n1<n2) {
      ordem1 = n1
      ordem2 = n2
      }
      senao {
      ordem1 = n2
      ordem2= n1
      }
      se (n1<n2 ou n1>n2 ou n2<1 ou n2>n1) {
      escreva(“\nOs números em ordem são “+ordem1+” e “+ ordem2)
      } senao{
      escreva(“\nNão tem como colocar esses valores em ordem, eles são iguais!”)
      }

      }
      }

      //Percebi que o professor fez de um jeito mais fácil , porém diferente. O que acharam?

    • #65196

      Obs: O programa está rodando perfeitamente(minha opinião!).

      • #65332
        Tutora Mayla
        Mestre

        Antônio, que bom que a resposta maravilhosa do Icaro te ajudou.
        Vejo que sua intenção no se (n1<n2 ou n1>n2 ou n2<1 ou n2>n1) era abranger os casos onde n1 é diferente de n2. Para realizar isto de forma mais fácil basta colocar se (n1 != n2). De uma olhadinha na aula M02A01 – Operadores Relacionais novamente para relembrar um pouco como os operadores relacionais funcionam.

        Se houver quaisquer outras dúvidas basta entrar em contato.
        Parabéns pela dedicação ao estudo! Continue assim e irá aprender cada vez mais.

    • #65207
      IcaroFilho
      Moderador

      Boa tarde Antônio.
      Primeiro uma dica, tente mandar seus códigos formatados.
      -> copie e cole o seu código normalmente aqui.
      -> em seguida selecione ele todo.
      -> clique em CODE na barra de formatação de texto.
      (isto fará com que as tags sejam postas tanto no começo quanto no final).

      Quanto ao seu código:
      realmente ele esta rodando sem nenhum problema e o método feito não esta errado. Contudo, esta gastando memoria desnecessariamente criando 2 variáveis para armazenar valores replicados em outras variáveis. Além de estar fazendo mais testes lógicos dentro dos condicionais.
      (n1<n2 ou n1>n2 ou n2<1 ou n2>n1)
      n1 < n2 -> n1 menor que n2
      n1 > n2 -> n1 maior que n2
      n2 < n1 -> n2 menor que n1
      n2 > n1 -> n2 maior que n1
      Se n1 é menor q n2 (n1 < n2), pode se afirmar que n2 é maior que n1 (n2 > n1)
      se n1 é maior que n2 (n1 > n2), pode se afirmar que n2 é menor que n1 (n2 < n1)
      ou seja, dos 4 testes lógicos, 2 são repetidos.

      Quando vamos para os testes condicionais vc primeiro cria uma condição para determinar uma ordem. se não for esta ordem, ela inverte.
      dai uma condição para escrever a primeira ordem e se não encaixar, dar a mensagem de iguais. total de 4 condições.
      Sendo mais simples determinar a primeira condição n1 > n2 depois uma outra condição n1 < n2 e a terceira seria a sobra. (que só poderia um numero ser igual ao outro).

      Não sei qual a resolução do professor. Mas baseado no seu, escrevi um código para vc analisar.

      programa
      {
      	
      	funcao inicio()
      	{
      		inteiro num1, num2
      		escreva("Escreva um número: ")
      		leia(num1)
      		escreva("Escreva um segundo número: ")
      		leia(num2)
      		se (num1<num2) {
      			escreva ("Es numeros em ordem são:", num1 ," - ",num2)
      		}senao se (num2<num1) {
      			escreva ("Es numeros em ordem são:", num2 ," - ",num1)
      		}senao {
      			escreva("Não tem como colocar esses valores em ordem, eles são iguais!")
      		}
      	}
      }
    • #65245

      Obrigado, Ícaro! Vou seguir suas dicas. Realmente pensei nisso…no consumo de memória. O código que você escreveu está ótimo, onde aprendeu sobre os testes condicionais? Tem algum livro para indicar? Muito obrigado mesmo.

      • #65249
        IcaroFilho
        Moderador

        Boa noite. Então, eu aprendi aqui mesmo =)
        é que eu fiz programação básica. depois JS, depois C# e por fim Python (que é a linguagem que resolvi ficar pelo fato de ser uma linguagem no meu ver, mais abrangente (consigo fazer a parte web, alguns softwares, bigdata e data science), embora tenha gostado muito do C# ).
        Foram os únicos cursos de programação que fiz.
        Eu acredito que tudo é o jeito que se estudar…
        você tem q descobrir qual o melhor método de estudo pra você. Eu estudo da seguinte maneira.

        Assisto as aulas na sequencia (tratando-se de programação básica acho que é aula com um exercício no final) e durante a aula faço as anotações de tudo em um rascunho qualquer. depois faço os exercícios propostos (e não assisto a resolução dada, apenas quando encerro todos as aulas). por fim eu arrumo um tempo e passo todo o rascunho pra um arquivo de texto (word no caso). Isso me ajudou muito a fixar.
        Assim na verdade o rascunho vira um e-book (tipo uma apostila bem organizada e estruturada).
        toda vez que preciso achar alguma informação, vou no word e acho facilmente o que procuro.
        Ou seja, eu fiz uma apostila para cada linguagem que estudei aqui.

        Sobre sua pergunta de testes condicionais. a resposta é simples. Exercício!
        quanto mais você praticar, mais fluido as coisas ficam. Por isso o Guanabara fala para não copiar e colar trechos de código.
        tente sempre digitar o máximo possível. além de te ajudar a fixar, vai melhorar seu raciocínio e sua coordenação motora (vai digitar mais rápido com o tempo)

      • #65334
        Tutora Mayla
        Mestre

        Icaro, parabéns pela dedicação!!
        Sua forma de estudar é muito boa, continue sempre revisando e exercitando tudo que aprende assim sempre estará se aprofundando mais e se lembrando do que aprendeu.
        Outro hábito muito bom que percebo que você mantem é de sempre ajudar aos colegas, compartilhar conhecimento é sempre uma das melhores formas de aprender.
        Permaneça com seus esforços e evoluirá muito em seus conhecimentos ao longo do tempo tornando-se um grande programador.
        Se houver quaisquer dúvidas sobre os cursos basta entrar em contato que lhe ajudaremos.

    • #65273

      Ótimas dicas. Parabéns pela dedicação, eu tive que dar uma pausa por causa da faculdade(iniciei agora o 1 semestre) e retornei essa semana. Muito obrigado, você é 1000!

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