Ir para o conteúdo
  • Revista PROGRAMAR: Já está disponível a edição #60 da revista programar. Faz já o download aqui!

Sikora

Maior inteiro em c

Mensagens Recomendadas

Sikora

Boas,

Como verificar o maior nº inteiro introduzido pelo utilizador?

Estava a comparar directamente, sem guardar em qualquer vector.  Enquanto não aparece o '\n' faço a comparação. Mas ao ler tenho que colocar no scanf o %c para caracteres? Por exemplo, while(scanf(%c,&i) != '\n')) e depois converter para inteiro e fazer a comparação?

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
Localhost

Quase isso. O while é que tem um pequeno erro.

Faz antes isto:

while(i != '\n') {
  scanf("%c", &i);
}

Para determinar o maior valor, vais guardando e comparando com uma variável que vai contendo o último maior valor.


here since 2009

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
Sikora

Como tenho que detectar o '\n', tenho que realizar então sempre a conversão char--->int ou há outra maneira? Apenas por curiosidade.

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
Localhost

Espera aí que eu acho que não estou a perceber. Tu queres ter vários valores introduzidos de uma só vez?

Tu podes fazê-lo directamente, ou seja:

#define MAX 10

int val = 0;
int aux = 0;
for(aux = 0; aux < MAX; aux++) {
  scanf("%i", &val);
}
// determinar maior, como tinha dito.

Se queres ter valores de uma só vez então tens de usar um array.


here since 2009

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora

×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade. Este site usa cookies para disponibilizar funcionalidades personalizadas. Para mais informações visite esta página.