Ir para o conteúdo
devourment

Dúvida em algoritmo (principiante)

Mensagens Recomendadas

devourment    0
devourment

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.

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
bruno1234    20
bruno1234

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.

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
Warrior    68
Warrior

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.

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
devourment    0
devourment

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.

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


×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade