ayudaa!!! alguien me puede decir pq no va el programa!!!

roger11
19 de Noviembre del 2003
Tengo que buscar los caracteres dentro de una cadena y contar la cantidad de caracteres totales de la cadena.
contar todos los caracteres me sale bien,el problema esta que cuando quiero buscar (por ejemplo)la letra 'a' no me dice bien en que indice de la cadena se encuentra!!!.GRACIAS!!!

#include<iostream.h>
#include<conio.h>
#include<math.h>
#include<string.h>
#pragma hdrstop

//---------------------------------------------------------------------------

#pragma argsused
int main(int argc, char* argv[])
{char cadena[25];
int dato;
char x;

cout<<"Introducir cadena"<<endl;
cin>>cadena;
gets(cadena);
dato=strlen(cadena);
cout<<"Esta cadena tiene "<<dato;
cout<<" caracteres"<<endl;
cout<<"Introducir el caracter a buscar en la cadena ";
cin>>x;

for(int con=0;con<dato;con++)

{if(x==cadena[con])

{cout<<"el caracter buscado tiene los indices "<<con<<endl;
}
}



getch();
return 0;
}

Quevedo Chaurand
19 de Noviembre del 2003
Primeramente tienes que leer las cadenas de caracteres con cin.getline, ejemplo, quieres leer una cadena de maximo 10 caracteres (incluyendo espacios) cin.getline(num,10);
num es una variable del tipo arreglo--num[10], dentro del cin.getline se coloca la varibale y el rango del arreglo. ok
luego te mandare sobre la funcion que permite encontrar una letra en especifico.

roger
19 de Noviembre del 2003
Lo siento!!! ayer tube classe y el profe me dijo que entendi mal el ejercicio!!!! Debe buscar la 'a' o 'A' la 'e' o 'E' sin que yo le diga nada.Creo que es haciendolo con dos cadenas:
1 con la cadena de caracteres i la otra cadena para la 'A' o 'a' otra cadena para la 'b' o 'B ' pero no me sale!!!
lo he echo dentro de un bucle fort contador para que me las compare pero no hace nada!!!

#include<iostream.h>
#include<conio.h>
#include<math.h>
#include<string.h>
#pragma hdrstop

//---------------------------------------------------------------------------

#pragma argsused
int main(int argc, char* argv[])
{char cadena[25];
char ch[1];
int dato;



cout<<"Introducir cadena"<<endl;
cin>>cadena[25];
gets(cadena);
dato=strlen(cadena);
cout<<"Esta cadena tiene "<<dato;
cout<<" caracteres"<<endl;


for(int con=0;con<25;con++)
{
ch[1]=='a'&&'A';

if(ch[1]==cadena[25])

{cout<<"En la cadena hay "<<con;
cout<<" 'a' o 'A'<<endl;
}

}






getch();
return 0;
}

pigma
19 de Noviembre del 2003
quita la linea

gets(cadena);

a mi me va bien