ViniGodoy 6 de out. de 2009
Você tem algumas alternativas:
a. Converter para String;
b. Usar os operadores de % e / numa variável para extraír o último número, e o operador de * para inseri-lo em outra variável.
VictorFarion 7 de out. de 2009
Mas ai que ta esse código já é uma string… e ele imprime um valor inverso do que foi digitado eu quero que ele leia um inteiro e faça o msmo processo…
ViniGodoy 7 de out. de 2009
VictorFarion 7 de out. de 2009
Eu faço assim... converto oq escrevi em Int... dai no for ali que eu faço o tratamento com os operadores ??
String aux ;
int n ;
aux = JOptionPane . showInputDialog ( "Digite:" );
n = Integer . parseInt ( aux );
if ( aux == null ){
JOptionPane . showMessageDialog ( null , "CANCELOU!!!" );
}
else {
for ( int i = aux . length () - 1 ; i >= 0 ; i -- ){
System . out . print ( aux . charAt ( i ));
}
ViniGodoy 7 de out. de 2009
Bom, pense um pouco…
O que acontece quando usa o operador % com o valor 10 num número?
1234 % 10 = 4
E o que acontece quando você divide um número por 10, numa divisão inteira?
1234 / 10 = 123
E o que acontece quando vc multiplica um número por 10?
4 * 10 = 40
Agora é só pensar num for que inverta o número… se não conseguir, posto aqui a solução.
VictorFarion 7 de out. de 2009
Alguma coisa já entendi e fiz... o ultimo numero consegui extrair veja ai oq eu fiz ...
String aux ;
int n , n1 , n2 ;
aux = JOptionPane . showInputDialog ( "Digite:" );
n = Integer . parseInt ( aux );
if ( aux == null ){
JOptionPane . showMessageDialog ( null , "CANCELOU!!!" );
}
else {
for ( int i = aux . length () - 1 ; i >= 0 ; i -- ){
n1 = n % 10 ;
n2 = n1 * 10 ;
System . out . print ( n2 );
}
ViniGodoy 7 de out. de 2009
Tente rodar o programa abaixo numa execução passo a passo e ver funcionando.
String aux = JOptionPane . showInputDialog ( "Digite:" );
if ( aux == null ){
JOptionPane . showMessageDialog ( null , "CANCELOU!!!" );
return ;
}
int n = Integer . parseInt ( aux );
int naux = n ;
int invertido = 0 ;
while ( naux > 0 ) {
int ultDigito = nAux % 10 ;
invertido = invertido * 10 + ultDigito ;
naux = naux / 10 ;
}
System . out . println ( "Número: " + n + " Invertido: " + invertido );
VictorFarion 7 de out. de 2009
Muito obrigado vou análisar o código agora e tentar fazer com o meu… brigadão msmo…