• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

devourment

Dúvida em algoritmo (principiante)

4 mensagens neste tópico

Bem, tou agora a começar a dar os primeiros passos na programação, e tenho uma dúvida.

Tenho que fazer entre outras tarefas, calcular os números inteiros positivos cujo maior dígito (ou um dos maiores digitos) é mais significativo (mais à esquerda) do que no correspondente número invertido, em pseudo-código (e posteriormente implentá-lo em Java).

Por exemplo: no número 192683, o maior dígito (9) é mais significativo do que no respectivo número invertido, 386291.

A parte de calcular o número invertido já fiz...agora tou é com dificuldades em calcular a posição do maior dígito num nº e no seu inverso, de maneira a poder compará-los.

Obrigado.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Uma string é um array de chars.

Em java podes percorrer a string através do método charAt(int index).

A partír daí consegues obter a posição do digito de maior valor.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Uma alternativa mais rápida e correcta é usar as operações de resto e de divisão inteira para ir analisando os números da direita para a esquerda, de modo a achar o maior.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Realmente acho que vou optar por essa opção Warrior. Utilizo o resto da divisão para obter o número mais à direita e a divisão por 10 para retirar esse dígito. Obrigado a ambos.

0

Partilhar esta mensagem


Link 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