Saber quantidade de casas de um inteiro!

8 respostas
M

Olá, estou com um duvida em questão de lógica…
como faço pra saber o numero de casas de um inteiro?
por exemplo:

o usuario digita: 1855

sao 4 casas, mas como faço pra saber isso? sem ser em string!
to usando c++

obrigadoo!

8 Respostas

AITech_IX

Bem, existe um teto para este valor digitado pelo usuário? Se houver, fica simples…divida o numero inserido por 10 elevado ao numero de casas máximo menos 1; exemplo genérico, considerando no máximo 5 casas:

t=entrada/[10^(4)]
se t < 10 ou t = 10, o numero digitado possui 5 casas decimais
t=entrada/[10^(3)]
se t < 10 ou t = 10, o numero digitado possui 4 casas decimais
t=entrada/[10^(2)]
se t < 10 ou t = 10, o numero digitado possui 3 casas decimais
t=entrada/[10^(1)]
se t < 10 ou t = 10, o numero digitado possui 2 casas decimais
t=entrada/[10^(0)]
se t < 10 ou t = 10, o numero digitado possui 1 casa decimal

Nao sei se fui muito claro…se nao fui me desculpe, já deve ser o horário rs…
Só nao sei como fazer isso em C++…mas pelo menos na lógica tentei ajudar…

abs

rogelgarcia

Em Java.. depois vc traduz para C++

double numero = 13223;
		
		int casas = 1;
		
		while((numero = numero / 10.0) > 1){
			casas++;
		}
		
		System.out.println(casas);
AITech_IX

Muito bom…bem mais elegante!

rogelgarcia
Com int
int numero = 7655;
		
		int casas = 1;
		
		while((numero = numero / 10) > 0){
			casas++;
		}
		
		System.out.println(casas);
thiagolopes

Muito Bom este Raciocínio que vocês usaram.Parabéns!

rogelgarcia

Obrigado pessoal!! É sempre bom quando as pessoas gostam do nosso trabalho :smiley:

M

valeu pela resposta, realmente é um poco complicado enxergar
agora ficou mto claro e facil hehehe

M

isso é mais questão de matemática msm,
só levar na questão matematica… dei mole ;D

Criado 25 de março de 2010
Ultima resposta 26 de mar. de 2010
Respostas 8
Participantes 4