elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Introducción a Git (Primera Parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  contar numeros de un numero
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: contar numeros de un numero  (Leído 3,163 veces)
Beginner Web


Desconectado Desconectado

Mensajes: 634


youtu.be/0YhflLRE-DA


Ver Perfil
contar numeros de un numero
« en: 18 Abril 2019, 06:04 am »

hola chicos, como hago para contar los digitos de un numero?
por ejemplo si coloco 0000000000 me devuelva 10 pero sin usar ningun tipo de estructura solo como maximo se puede usar while,do while y for gracias  :laugh:
dato de entrada un entero 000000
dato de salida otro entero 6

 :huh:


En línea

7w7
EdePC
Moderador Global
***
Conectado Conectado

Mensajes: 2.159



Ver Perfil
Re: contar numeros de un numero
« Respuesta #1 en: 18 Abril 2019, 08:05 am »

Saludos,

- Habría que entender ese "número" como un String ya que difícilmente va a haber un entero 000000.

- Sería cosa de iterar cada caracter del String y contar hasta que se acaben con caracteres. En C sería algo así:

Código
  1. #include <stdio.h>
  2. int main() {
  3.  char number[] = "000000";
  4.  int count = 0;
  5.  while ( number[count] != '\0' ) {
  6.    count++;
  7.  }
  8.  printf("%d\n", count);
  9. }


En línea

Beginner Web


Desconectado Desconectado

Mensajes: 634


youtu.be/0YhflLRE-DA


Ver Perfil
Re: contar numeros de un numero
« Respuesta #2 en: 18 Abril 2019, 08:19 am »

Si pero el dato de entrada debe almacenarse en una variable de tipo entero, no se debe utilizar otros tipos de datos, y si no se puede bueno fue  :rolleyes:
En línea

7w7
BloodSharp


Desconectado Desconectado

Mensajes: 812


¡ Hiperfoco !


Ver Perfil WWW
Re: contar numeros de un numero
« Respuesta #3 en: 18 Abril 2019, 08:35 am »

hola chicos, como hago para contar los digitos de un numero?
por ejemplo si coloco 0000000000 me devuelva 10 pero sin usar ningun tipo de estructura solo como maximo se puede usar while,do while y for gracias  :laugh:
dato de entrada un entero 000000
dato de salida otro entero 6

Si pero el dato de entrada debe almacenarse en una variable de tipo entero, no se debe utilizar otros tipos de datos, y si no se puede bueno fue  :rolleyes:

Tené en cuenta que 000000, como 000, como 00, como infinitos ceros solamente son 0.


EDIT: Aunque se tendría que también en caso de ser cero asignar el contador definitivo a 1 sin pasar por el for. Me faltó ese detalle agregar... :silbar:
EDIT2: Y agregar también verificación del valor absoluto...  :-[

B#
« Última modificación: 18 Abril 2019, 08:43 am por BloodSharp » En línea



Serapis
Colaborador
***
Desconectado Desconectado

Mensajes: 3.391


Ver Perfil
Re: contar numeros de un numero
« Respuesta #4 en: 18 Abril 2019, 10:04 am »

Como ya te han dicho los ceros a la izquierda de un número no valen nada, no existen, luego si se debe considerar ceros a la izquierda tiene que ser un string.

Si es un numero entero, tienes que usar un bucle:
Código:
Si (numero <> 0)  // distinto de cero
    Hacer mientras (numero <> 0)
        cifras +=1
        numero = (numero \10)  // una división entera.
    repetir
sino
    cifras = 1
fin si
 
« Última modificación: 18 Abril 2019, 10:06 am por NEBIRE » En línea

CalgaryCorpus


Desconectado Desconectado

Mensajes: 323


Ver Perfil WWW
Re: contar numeros de un numero
« Respuesta #5 en: 18 Abril 2019, 16:03 pm »

Puesto que los numeros deben tener al menos 1 digito, es posible empezar la cuenta con 1 y modificar la condicion del ciclo y con ello se ahorra la comparacion inicial contra 0.
Algo asi:

Código:
   digitos = 1;
   while(n > 9) {
     digitos++
     n /= 10
   }

Para numeros negativos, hay que hacer al inicio el equivalente a   n = abs(n)
En línea

Aqui mi perfil en LinkedIn, invitame un cafe aqui
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Contar numeros positivos
Programación C/C++
karmi 2 3,508 Último mensaje 10 Diciembre 2010, 18:46 pm
por do-while
Contar el numero de arrays en una funcion
Programación C/C++
ramona98 1 2,401 Último mensaje 27 Agosto 2013, 12:46 pm
por avesudra
como se puede contar numero por numero
.NET (C#, VB.NET, ASP)
luis456 1 3,675 Último mensaje 9 Febrero 2014, 17:21 pm
por Eleкtro
Contar números repetidos en un archivo txt
Programación Visual Basic
Nells E. 4 3,989 Último mensaje 6 Febrero 2018, 00:12 am
por Nells E.
[Python3] Ayuda contar numeros en string
Scripting
reconFito 6 3,827 Último mensaje 31 Diciembre 2019, 16:29 pm
por tincopasan
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines