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

iniciante

contar numeros

Mensagens Recomendadas

iniciante

alguem sabe como contar a quantidade de numeros inseridos pelo utilizador sem ser a inserilos para um array? é que eu quero inserir 4 numeros e quero que dé erro enquanto a quantidade de numeros for menor que 4!

exemplo:

    se inserir 1234 ele não dá erro

    se inserir 123 ele dá erro


RC

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
softklin

Como estás a obter os números? Em String ou em Int? Numa linha ou em várias?

Se for em String, podes ver se o seu comprimento (.length) é inferior ao pretendido.


Nick antigo: softclean | Tens um projeto? | Wiki P@P

Ajuda a comunidade! Se encontrares algo de errado, usa a opção "Denunciar" por baixo de cada post.

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
iniciante

estou a fazer com int...

System.out.println("Introduza o Numero de Identidade do Visitante(minimo 4 algarismos):");

                                        int  numIdentidade = scan.nextInt();


RC

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
softklin

Então podes converter para String quando fazes a comparação, do género:

if( numIdentidade.toString().length < 4 ) {
  // informar do erro, e efectuar resto das acções
}


Nick antigo: softclean | Tens um projeto? | Wiki P@P

Ajuda a comunidade! Se encontrares algo de errado, usa a opção "Denunciar" por baixo de cada post.

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
softklin

Pois, foi erro meu. Pelos vistos não dá para converter directamente porque o Int é tipo primitivo e não tem métodos associados.

http://www.dreamincode.net/forums/index.php?showtopic=20656&view=findpost&p=182173

Então, podes fazer uma chamada ao método toString da classe Integer, fica algo como:

if( Integer.toString(numIdentidade).length < 4 ) {
  // informar do erro, e efectuar resto das acções
}


Nick antigo: softclean | Tens um projeto? | Wiki P@P

Ajuda a comunidade! Se encontrares algo de errado, usa a opção "Denunciar" por baixo de cada post.

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
iniciante

ok já consegui xD obrigado pela ajuda! só uma pequena correcção..

if( Integer.toString(numIdentidade).length() < 4 ) {
  // informar do erro, e efectuar resto das acções
}

uma ultima pergunta: o numIdentidade é convertido nessa instrução so para ver o tamanho, mas dps volta a ser inteiro certo?


RC

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
softklin

Sim, continua a ser um inteiro. O que o método toString faz é devolver uma representação dos número em String, por exemplo "123456", mas não altera a variável numIdentidade.


Nick antigo: softclean | Tens um projeto? | Wiki P@P

Ajuda a comunidade! Se encontrares algo de errado, usa a opção "Denunciar" por baixo de cada post.

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
softklin

Sim, mas se podes fazer em separado, é preferível. Para fazeres tudo junto, tinhas que obter sempre uma string, e depois saber se se tratava de um nome ou de um número, utilizando a função Integer.parseInt() e comparar os respectivos valores.

Se quiseres ir por aí, dá uma olhada em:

http://www.java2s.com/Code/Java/Language-Basics/Convertstringtoint.htm

ou pesquisa no motor de busca por "java convert string to int"


Nick antigo: softclean | Tens um projeto? | Wiki P@P

Ajuda a comunidade! Se encontrares algo de errado, usa a opção "Denunciar" por baixo de cada post.

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
iniciante

ok ja consegui xD é mais fácil ter em separado claro...mas ter junto e fazer as coisas automaticas o professor dps dá mais notita  ;) e isto com um try catch e com o site que me deste resolve-se o problema num instante! obrigado mais uma vez!


RC

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.