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

 

 


Tema destacado: Introducción a la Factorización De Semiprimos (RSA)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Conteo
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Conteo  (Leído 4,436 veces)
Ander123

Desconectado Desconectado

Mensajes: 101


Ver Perfil
Conteo
« en: 29 Agosto 2012, 16:21 pm »

Hola, tengo que hacer un programa que cuente espacios tabuladores y lineas, pero solo me cuenta las lineas.. que hago mal?

Código:
#include<stdio.h>

main()
{
    int c, nl,t,e;

    nl=0;
    t=0;
    e=0;
    while((c=getchar())!= EOF)

        {if (c=='\n')
            ++nl;}
         {
             if (c=='\t')
                ++t;
         }
         {
             if (c=='\ ')
             ++e;
         }

    printf("%d %d %d\n",nl,t,e);
}


En línea

avesudra


Desconectado Desconectado

Mensajes: 724


Intentando ser mejor cada día :)


Ver Perfil
Re: Conteo
« Respuesta #1 en: 29 Agosto 2012, 16:50 pm »

A mí me funciona eh , lo que pasa es que con getchar coges solo un carácter , no una cadena eh! Y aun así me funciona.


En línea

Regístrate en
Ander123

Desconectado Desconectado

Mensajes: 101


Ver Perfil
Re: Conteo
« Respuesta #2 en: 29 Agosto 2012, 17:02 pm »

funciona el conteo de lineas pero no el de espacios y tabuladores, "tabuladores quiere decir espacios creados por tab no"?
En línea

avesudra


Desconectado Desconectado

Mensajes: 724


Intentando ser mejor cada día :)


Ver Perfil
Re: Conteo
« Respuesta #3 en: 29 Agosto 2012, 17:19 pm »

funciona el conteo de lineas pero no el de espacios y tabuladores, "tabuladores quiere decir espacios creados por tab no"?
El tabulador es esta tecla(Por si las moscas jeje) Si son creados por tab.

Si le das ahí y después a intro. Y pulsas EOF en Windows es Ctrl + Z te sale.Y lo de los espacios también funciona , pon un monton de espacios y pulsa y intro y después Ctrl + Z y intro otra vez y verás :)
En línea

Regístrate en
leosansan


Desconectado Desconectado

Mensajes: 1.314


Ver Perfil
Re: Conteo
« Respuesta #4 en: 29 Agosto 2012, 17:25 pm »

Código:
#include<stdio.h>

int main()
{
    int c, nl,t,e;

    nl=0;
    t=0;
    e=0;
    while((c=getchar())!= EOF)

        {
            if (c=='\n')
            ++nl;
             if (c=='\t')
                ++t;
             if (c=='\\')
             ++e;
         }

    printf("%d %d %d\n",nl,t,e);
    return 0;
}
Si quieres contar los espacios en blaco, en lugar de
Código:
  if (c=='\\')
pones
Código:
  if (c==' ')
« Última modificación: 29 Agosto 2012, 17:33 pm por leosansan » En línea

avesudra


Desconectado Desconectado

Mensajes: 724


Intentando ser mejor cada día :)


Ver Perfil
Re: Conteo
« Respuesta #5 en: 29 Agosto 2012, 17:31 pm »

Código:
#include<stdio.h>

main()
{
    int c, nl,t,e;

    nl=0;
    t=0;
    e=0;
    while((c=getchar())!= EOF)

        {
            if (c=='\n')
            ++nl;
             if (c=='\t')
                ++t;
           if (c=='\\')
             ++e;
         }

    printf("%d %d %d\n",nl,t,e);
}
Si quieres contar los espacios en blaco, en lugar de
Código:
  if (c=='\\')
pones
Código:
  if (c==' ')
Tienes razón el problema son las llaves del while , que lo había corregido yo en su código para probarlo y se me ha olvidado decirlo.
En línea

Regístrate en
Ander123

Desconectado Desconectado

Mensajes: 101


Ver Perfil
Re: Conteo
« Respuesta #6 en: 29 Agosto 2012, 17:32 pm »

He visto que el fallo estaba en que yo había separado con claves las tres instrucciones, porque así no funcionaba? que diferencia hay?
En línea

leosansan


Desconectado Desconectado

Mensajes: 1.314


Ver Perfil
Re: Conteo
« Respuesta #7 en: 29 Agosto 2012, 17:37 pm »


Citar
He visto que el fallo estaba en que yo había separado con claves las tres instrucciones, porque así no funcionaba? que diferencia hay?
Hacen falta las llaves para While que se compone de varias sentencias, pero como lo if sólo tienen una sentencia no hace falta llaves para ellos.
En línea

Ander123

Desconectado Desconectado

Mensajes: 101


Ver Perfil
Re: Conteo
« Respuesta #8 en: 29 Agosto 2012, 17:54 pm »

los espacios en blanco no los cuenta, se crean con la barra espaciadora no?:S porque estaba haciendo otro programa parecido y tampoco los contaba,
En línea

leosansan


Desconectado Desconectado

Mensajes: 1.314


Ver Perfil
Re: Conteo
« Respuesta #9 en: 29 Agosto 2012, 18:48 pm »

los espacios en blanco no los cuenta, se crean con la barra espaciadora no?:S porque estaba haciendo otro programa parecido y tampoco los contaba,
A ver si te aclaras con lo que te cuento:
Código:
if (c=='\\')
cuenta las "\" que introduces, mientras que si usas:
Código:
if (c==' ')
cuenta los espacios en blanco.
Saludos .... y ánimo que los comienzos siempre cuestan.
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Ayuda - Burlar pagina de conteo « 1 2 »
Seguridad
leogtz 12 7,874 Último mensaje 19 Agosto 2010, 00:28 am
por cgvwzq
Ayuda con conteo de registros en php y mysql « 1 2 »
PHP
RedZer 13 9,790 Último mensaje 5 Diciembre 2010, 20:28 pm
por RedZer
Conteo de caracteres
Programación C/C++
Ronkof 3 2,123 Último mensaje 22 Abril 2013, 22:04 pm
por Ronkof
conteo de lineas en c
Programación C/C++
nietsnie 2 1,801 Último mensaje 17 Octubre 2015, 00:05 am
por DarK_FirefoX
conteo de filas afectadas al truncar tabla
Bases de Datos
d91 1 2,891 Último mensaje 26 Noviembre 2015, 20:12 pm
por Carloswaldo
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines