Foros del Web » Programación para mayores de 30 ;) » C/C++ »

Ayuda con programa simple

Estas en el tema de Ayuda con programa simple en el foro de C/C++ en Foros del Web. Recien estoy comenzando a ver vectores y no puedo solucionar este problema: Realizar una rutina que dado un arreglo de 45 elementos de tipo caracter ...
  #1 (permalink)  
Antiguo 03/11/2010, 02:07
 
Fecha de Ingreso: septiembre-2009
Mensajes: 5
Antigüedad: 14 años, 7 meses
Puntos: 0
Ayuda con programa simple

Recien estoy comenzando a ver vectores y no puedo solucionar este problema:

Realizar una rutina que dado un arreglo de 45 elementos de tipo caracter que contiene una palabra, devuelva otro arreglo de 5 elementos enteros donde cada uno representa la cantidad de veces que se repiten cada vocal en la palabra.

Estuve bastante tiempo y no logro darme cuenta como resolverlo, espero no molestar y recibir su ayuda. Muchas gracias.
  #2 (permalink)  
Antiguo 03/11/2010, 03:25
 
Fecha de Ingreso: junio-2010
Ubicación: Madrid
Mensajes: 620
Antigüedad: 13 años, 10 meses
Puntos: 73
Respuesta: Ayuda con programa simple

Si posteas lo que ya tienes será más fácil ayudarte. Si no, parece que estés diciendo "por favor, háganme el trabajo".
  #3 (permalink)  
Antiguo 03/11/2010, 10:30
Avatar de gvite666  
Fecha de Ingreso: abril-2010
Mensajes: 65
Antigüedad: 14 años
Puntos: 4
Respuesta: Ayuda con programa simple

pues lo puedes realizar asi:
1. pides la cadena
2. sacas la longitud de la cadena
2. recorres caracter por caracter mediante un ciclo hsta que termine su longitud
3. pones la 5 condiciones cada una comparando con una vocal.
4. muestras los resultados

Si el problema no es la logica de tu programa, entonces revisa esto:

http://www.alipso.com/monografias/2266_arreglosestados/

http://bc.inter.edu/facultad/hbruckm...-.Arreglos.pdf

espero te sirva
Saludos
__________________
No pienses si no vas a actuar.
  #4 (permalink)  
Antiguo 03/11/2010, 13:29
 
Fecha de Ingreso: septiembre-2009
Mensajes: 5
Antigüedad: 14 años, 7 meses
Puntos: 0
Respuesta: Ayuda con programa simple

Gracias por contestar, aqui dejo lo que pude desarrollar, que obviamente no funciona, pero es hasta donde pude hacer.


#include <iostream>
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include <conio.h>
using namespace std;


const int vocales=5;
const char palabra=45;

typedef char ty_vecvocal[vocales];
typedef char ty_vecpal [palabra];



int main (){

int iX;
int iContA=0;
int iContE=0;
int iContI=0;
int iContO=0;
int iContU=0;



ty_vecvocal vecvocal;
ty_vecpal vecpal;




cout<< "Ingrese una palabra:" <<endl;
cin>> vecpal[palabra];


for(iX='a';iX<='z';iX++){



if (vecpal[iX]='a'){


iContA=iContA=+1;

}
else{

if (vecpal [iX]='e'){



iContE=iContE+1;

}

else{

if (vecpal [iX]='i'){



iContI=iContI+1;

}

else{

if (vecpal [iX]='o'){



iContO=iContO+1;
}

else{

if (vecpal [iX]='u'){



iContU=iContU+1;

}
}
}
}
}
}

cout<< "La vocal a se repite:" <<iContA;
cout<< "La vocal e se repite:" <<iContE;
cout<< "La vocal i se repite:" <<iContI;
cout<< "La vocal o se repite:" <<iContO;
cout<< "La vocal u se repite:" <<iContU;
getch();
return 0;
}

No se como utilizar el array que contaria las vocales, si se le asigna algo o no, se podria usar un switch no tambien en lguar de if? lo pense toda la noche y no logre sacarlo. Espero su ayuda. Alan.
  #5 (permalink)  
Antiguo 03/11/2010, 13:42
 
Fecha de Ingreso: abril-2010
Ubicación: Rosario
Mensajes: 1.850
Antigüedad: 14 años
Puntos: 228
Respuesta: Ayuda con programa simple

es simple en vez de usar 5 variables llamadas IContA,iContE, etc...simplementes usas un vector.

Entonces por convencion determina que la volcal a cera representada por la posicion 0, la E por la 1, Etc.

Entonces, algebraicamente, iContA = ty_vecvocal[0]
IContB ty_vecvocal[1]

Para terminar haces tu remplazo en el codigo. Cada vez que usaste IContA lo reemplazas por ty_vecvocal[0].

Y listo!!

Etiquetas: programa, simple
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 01:30.