• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

edurocks

Contar números

13 mensagens neste tópico

Pessoal preciso contar quantos algarismos tem um número inteiro longo, sendo esse número introduzido por mim, já criei um contador mas ele não está fazendo a comtagem. como posso fazer?. Obrigado.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

O algoritmo não é díficil, basta fazeres um ciclo em que vais obtendo o quociente da divisão por dez, ignorando o resto, e vais contando o número de vezes que o fazes. Enquanto esse quociente não for zero, continuas, quando for, páras e devolves o número de vezes que dividiste.

Se mostrares o código, poderemos ajudar-te a encontrar o erro. Agora, o algoritmo pode ser esse, mais coisa menos coisa. :D

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Se já fizeste alguma coisa, podes colocar aqui o que fizeste que o pessoal ajuda-te a resolver isso :D

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

O código que tenho é esse:

int main()
{
   long a;
  int contador=0;
printf("Digite um número");
scanf("%ld",&a) ;
for (a=0;a<=a/10;a++)
contador++;
printf("O numero e composto por %ld algarismos",contador);
}

O que devo alterar? Obrigado.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Não faz sentido leres o número que queres contar e depois inicializá-lo a zero. Tens que ir dividindo o número que leste por 10 e contar as vezes :D

Este código faz o que queres, mudando esse ciclo:

#include<stdio.h>

int main()
{
   long a;
  int contador=0;
  printf("Digite um numero");
  scanf("%ld",&a) ;
  while(a) {
    contador++;
    a = a / 10;
  }
  printf("O numero e composto por %ld algarismos",contador);
}

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Muito obrigado, tava quase lá. Agora se eu quiser fazer a soma desse nº de algarismos, eu tenho que inicializar a soma a zero e qual é a conta que eu tenho que fazer para ele me somar?. Obrigado.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Muito obrigado, tava quase lá. Agora se eu quiser fazer a soma desse nº de algarismos, eu tenho que inicializar a soma a zero e qual é a conta que eu tenho que fazer para ele me somar?. Obrigado.

A soma? :bored:

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

#include<stdio.h>

int main()
{
   long a;
  long b=0;
  int contador=0;
  printf("Digite um numero");
  scanf("%ld",&a) ;
  while(a) {
    contador++;
   b+=a %10 ;
    a = a / 10;
  }
  printf("O numero e composto por %ld algarismos",contador);
}

nao compilei nao sei se existe algum erro nao sei se sera isto .... pq nao sei que mais somas queres fazer senao e isto tb nao deve andar mto longe ...

boas programacoes ....

e que tal comecares a pensar um cadinho antes de desatares a perguntar ...

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Era mais fácil ele pensar por si se não lhe dessem as soluções de mão beijada...

0

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