Imprimir um numero do numero

8 respostas
ghostta

Ola galeraa…

Alguem sabe uma forma(facil), de imprimir somente 1 numero:::

Tipo:::: Quero fazer assim: de 1 ate 99

Ex: Voce digita 85::: So quero imprimir o 5. Queria saber se tem um metodo facil, pois eh de 1 ate 99.

Int num = JOptionPane.showImput(null, "Digite um numero de 1 a 99: ");

//para imprimir somente o segundo numero: EX: 01 so o 1 ----- 74 so o 4. etc.

8 Respostas

B

print(numero % 10);

douglas_vidotto

hum, eu sou meio novo em java e sinceramente eu nao sei como fazer isso nao. A unica forma que vejo é voce usar o operador modulo (%), que pega o resto de uma divisao, talvez. 81 % 2 = 1. Talvez uma lógica desse tipo…

D

if(numero > 9) { System.out.printf("%d", numero % 10); } else { System.out.printf("%d", numero); }

Vc colocando o simbolo % entre dois números ele imprime o resto da divisão, assim quando vc divide por 10 ele pega o primeiro número.

douglas_vidotto

ou fazer direto como o Bruno disse aí em cima, hehehehehe. Da certo!

D

Se voce quer mostrar o segundo numero entre 2 dumoros, voce pode usar o metodo charAt da classe String assim:

String num = JOptionPane.showImput(null, "Digite um numero de 1 a 99: ");//mude para String
System.out.println(num.charAt(1));
Vou dar uma resumida no que aconteceu: Uma String, é um conjunto de caracteres (char). Mas nao existe um tipo primitivo, como int por exemplo que é puramente um numero, de texto. O unico tipo primitivo, que aceita nativamente um letra, é o tipo char. Como fazer entao para armazenar um texto numa variavel? Pensando nisso, a sun criou uma classe chamada String que nada mais faz que pegar uma fraze que voce digida, e separa-la em tipos primitivos, ou seja, tipos char. Ela separa e coloca cada caracter numa variavel(mais precisamente, uma array). Como voce deve saber, uma array tem posicoes. Ex: array[1], array[2] sendo que essas posicoes comecam do zero. Se eu salvar o meu nome numa String, ele vai ficar assim:

array[0] = d;

array[1] = a;

array[2] = n;

array[3] = i;

array[4] = l;

array[5] = o;

Meu nome tem 6 letras, como a array comeca do 0, terminara na quinta posicao. O metodo charAt(), apenas acessa o conteudo de uma array. Mas qual posicao da array que ele vai acessar? Aquela que voce disser.

se voce digitar 85, ficara assim:

array[0] = 8;

array[1] = 5;

Entao quando eu coloquei num.charAt(1), era pra acessar a segunda posicao da array, no indice 1.

Fiz um mini tutorial gigantesco :shock:

Espero de verdade que tenha entendido  <img src="https://cdn.jsdelivr.net/gh/twitter/twemoji@14/assets/72x72/s.pngtuck_out_tongue.png?v=9" title=":stuck_out_tongue:" class="emoji" alt=":stuck_out_tongue:">
ghostta

Valeu Douglas

Valeu Danilo, Fiz o que voce disse, passei para String.

Muito obrigado^^ …

Valeu

Marky.Vasconcelos

Só um problema…
Se o nunero for só 3 charAt(1) vai lançar NullPointer

É melhor usar assim

System.out.println(num.charAt(num.length() - 1));

Assim voce nao precisa se preocupar com o tamnho do numero que sempre vai mostrar o ultimo.

ghostta

opa, tb gostei dessa informaçao.

Vlw Mark_ameba

Criado 5 de novembro de 2008
Ultima resposta 5 de nov. de 2008
Respostas 8
Participantes 6