Algoritmo para ler 2 números e dizer qual o maior



Algoritmo que le dois numeros e informa qual é o maior.  Usando a estrutura if.

  • Download maior_de_dois_numeros.c
  • Enviar nova versão

Esconder código-fonte

#include <stdio.h> void main ( ) { int x,y; printf ("Este programa le dois numeros\n"); printf ("E verifica qual deles e maior\n"); printf ("Informe o primeiro numero\n"); scanf ("%d",&x); printf ("Informe o 2 numero\n"); scanf ("%d",&y); printf ("\n"); if (x > y) printf ("%d e maior que %d",x,y); else if (y > x) printf ("%d e maior que %d",y,x); else printf ("os dois numero sao iguais"); printf ("\n"); }

Scripts recomendados

Verificador de número primo

Par/ímpar em C

Exemplo de janela utilizando o compilador Vala

entendendo o return...

Criando um Quadrado com asteriscos



Comentários

Nenhum comentário foi encontrado.


  • Todas as Novidades
  • Regras
  • Equipe
  • Líderes
  • Todas as Novidades
  • Regras
  • Equipe
  • Líderes

Comecei semana passada com o Visualg, e já estou dando cabeçada. Peguei esse exercício na web: “Escreva um programa que solicita 10 números ao usuário, através de um laço while, e ao final mostre qual destes números é o maior.”

E escrevi isso:

algoritmo "semnome" // Função : // Autor : // Data : 30/05/2019 // Seção de Declarações var num,cont,maior,menor:inteiro inicio // Seção de Comandos cont<-1 enquanto cont<10 faca escreval("Digite 10 números aleatoriamente") leia(num) maior<-num menor<-num cont<-cont+1 escreval("Digite 10 números aleatoriamente") leia(num) se num>maior entao maior<-num fimse se num<menor entao menor<-num fimse cont<-cont+1 fimenquanto escreval("O número maior é ",maior," e o número menor é ",menor) fimalgoritmo

Testei digitando de 1 a 10. A parte do número maior até que funcionou, mas o número menor está dando o 9.

Simplesmente não consigo entender porque não está dando certo.

Você não pode fazer o maior<-num e nem menor<-num porque na hora do teste “se” ele vai testar por exemplo 9 > 9 e 9 < 9 entao as variaveis maior e menor irão conter o valores digitados

@guilherme-borges Não entendi. Na entrada do processamento, com o primeiro número digitado, as variáveis “maior” e “menor” vão receber o mesmo valor, porque é o primeiro número, não tem com o que comparar. A partir do segundo número digitado, é feita uma comparação, se o número digitado for maior que a variável “maior” então essa variável assume esse valor (o do número digitado). A mesma coisa com a variável “menor”.

Ainda não consegui entender o meu erro.

Faça o teste começando com o valor 10 e vai até 1 você vai perceber que a variavel a maior irá receber o valor do ultimo número digitado ou seja 1, então você não pode no começo do “enquanto” sobreescrever a variável com o valor digitado porque você quer guardar o maior valor independente da ordem.

1 curtida

Hummm … Então acho que entendi. Se fosse um intervalo fechado, eu colocaria os dois extremos. Dessa forma, “menor” começaria com 0 e “maior” começaria com 10, por exemplo. Bom acho que entendi o erro, agora falta achar a solução. Valeu, obrigado pela força.

Um abraço!

Algoritmo para ler 2 números e dizer qual o maior
claudio65:

cont<-1 enquanto cont<10 faca escreval(“Digite 10 números aleatoriamente”) leia(num) maior<-num menor<-num cont<-cont+1 escreval(“Digite 10 números aleatoriamente”) leia(num) se num>maior entao maior<-num fimse se num<menor entao menor<-num fimse cont<-cont+1 fimenquanto

Tente assim:

escreval("Digite 10 números aleatoriamente") cont<-1 enquanto cont<10 faca leia(num) se cont=1 entao maior<-num menor<-num fimse se num>maior entao maior<-num fimse se num<menor entao menor<-num fimse cont<-cont+1 fimenquanto

2 curtidas

Agora tu entregou a paçoca devia ter deixado ele quebrar a cabeça kkk

1 curtida

@guilherme-borges kkk … “entregou a paçoca” é ótimo, to passando mal de tanto rir aqui. Mas vou te dizer, eu sou tão cabeçudo que nem com o cara escrevendo pra mim eu ainda não sei se entendi. Mas vou, como você disse, quebrar a cabeça até entender.

Valeu, gente!

1 curtida

Sem querer ser chato, mas não conseguindo evitar de ser porque eu já nasci assim. Mas o seu algorítimo não diz qual é o maior e qual é o menor.

Vou tentar completar ele aqui e ver se dá certo.

Beleza! Funcionou! Tanto crescente quanto decrescentemente.

Valeu!

Algoritmo para ler 2 números e dizer qual o maior
guilherme-borges:

Agora tu entregou a paçoca

Boa colocação kkkk

Algoritmo para ler 2 números e dizer qual o maior
claudio65:

Mas o seu algorítimo não diz qual é o maior e qual é o menor

Tu viu que só modifiquei uma parte do algoritmo né?! (que é a que coloque na resposta)

Não ia refazer o algoritmo todo pra você, ajustei o ponto em que você estava fazendo errado!

Demorou mas agora eu acho que entendi. A lógica é a seguinte, eu não estava amarrando as comparações ao primeiro número digitado, dessa forma, como o meu amigo Guilherme tentou me explicar, mas eu sou muito burro pra entender, os números acabavam sendo comparados com eles mesmos. Dessa forma, o maior número seria sempre o último número digitado e o menor seria sempre o penúltimo.

Acho que é isso, né?

Bloco de citação
Tu viu que só modifiquei uma parte do algoritmo né?

Eu sou meio lerdo pra entender as paradas, achei que vinha o algorítimo inteiro, só pra eu rodar e ver se deixo de ser burro e aprendo.

Valeu, gente, vou encerrar esse post.
Abraço a todos os envolvidos.

Também estava com esse deafio, só fui conseguir resolver quando procurei a resposta.

Algoritmo para ler 2 números e dizer qual o maior
kkkk

Cara, nem lembrava mais dessa parada.
Já se passaram 2 anos e eu não aprendi nada de programação … kkk

Agora, falando sério, aconteceu de tudo na minha vida nesses últimos anos.
Mas vou retomar essa ideia.

VLW!

Eu tinha começado um curso técnico de desenvolvimento de sistema no começo do ano passado, mas por conta da pandemia eu tive que trancar, e preferir estudar por conta no youtube. https://www.youtube.com/watch?v=8mei6uVttho&list=PLHz_AreHm4dmSj0MHol_aoNYCSGFqvfXV

Eu também estou tentando aprender a programar pelo YouTube. Só que eu estou que nem cego no meio de um tiroteio, estou atirando pra todos os lados mas não estou acertando nada. Isso se chama desespero. Preciso me acalmar e me concentrar em uma direção. Estava seguindo essa playlist:

Vou voltar a seguir e retomar esse curso.

Boa sorte!

Galera não estou entendendo o pq funciona o menor e o maior com esse codigo?
sem ele funciona só o maior… eu faço a leitura dele mas não consigo encaixar na logica… se cont for igual a 1 então o maior recebe o numero e o menor recebe o numero tbm…

se cont=1 entao maior<-num menor<-num

fimse

Simples!

Quando o programa inicia, ainda não existe maior e menor, correto?

Logo o primeiro número informado, ou seja (cont = 1), passa a ser considerado ao mesmo tempo sendo o maior número e também o menor número, afinal, só existe ele até então!

Quando mais números são informados na sequência, ou seja (cont > 1), fazemos a verificação se o número que foi informado é maior que o número que foi considerado como maior anteriormente, e da mesma forma fazemos esta verificação para o menor.

Sacou?

1 curtida

Eu estava com a mesma dúvida o porque ele não aceitava o menor, aceitava apenas o maior e essa explicação simples me fez entender que o primeiro número é os dois, vlw