Hola bueno este codigo ase que si ingreso:
MERCEDES APAZA PERES
me cuenta las letras y espacios en este caso seria 18 letras y 3 espacios.
funciona bien el programa pero sucedio algo curioso en el colegio.
este trabajo presente al docente y me dijo que este cosigo no funciona,
mi preguntas es por que no funcionaria si funciona bien
for(i=0;dato[i]!=t;i++)
o
for(i=0;dato[i]!='\0';i++)
Osea el bucle termina en el salto de linea
por favor diganme por que estari mal.
Código C++:
Ver original#include <string.h>
#include <conio.h>
#include <iostream>
using namespace std;
main()
{
char dato[80],s;
int i,suma=0,t='\0';
int espacio= 0;
cout<<"Escriba una cadena: ";
cin.getline(dato,80) ;
for(i=0;dato[i]!=t;i++)//Aqui es la discucion ¿por que no funcionaria..?
{
if(dato[0]==' ')
{
t=dato[i];
s=2;
}
else if((dato[i]==' ') && (dato[i+1]==' '))
{
t=dato[i];
s=2;
}
else if(dato[i]==' ')
{
espacio=espacio+1;
}
else
{
suma=suma+1;
}
}
if(s==2)
{
cout<<"Datos no permitidos!"<<endl;
}
else
{
cout<<dato<<" Tiene: "<<suma<<" Letras y "<<espacio<<" Espacios"<<endl;
}
return 0;
}