Hola chic@s tengo un problema con un programilla, cuando lo ejecuto e inserto la validacion se me queda pillao como si entrar en zona de memoria no permitida.
El programa consiste en contar cuantas letras hay de cada una ejmplo:
Metes Granada
y salida sería:
a 3 d 1 g 1 n 1 r 1
necesito saber por que se queda parado...: Gracias!!
#include <iostream>
#include <vector>
using namespace std;
class Frecuencias{
public:
vector<int> datos;
void SumaContador (int letra){
datos.at(letra-97)++;
};
void SetContadores (){
for ( int j = 0 ; j < 26 ; j++){
datos.at(j) = 0;
}
};
void MostrarVector (){
for ( int i = 0 ; i < 26 ; i++){
cout << datos.at(i) << " " ;
}
};
};
void May2min(char &letra){
if(letra<97)
letra = letra + 32 ;
}
int main()
{
char letra, b;
int c;
Frecuencias fre;
cin >> letra;
while(letra!='.'){
May2min(letra);
c = letra;
fre.SumaContador(c);
cin >> letra;
}
for ( int a = 0 ; a < 26 ; a ++){
if(fre.datos.at(a)!=0)
b = a;
cout << b << " " << fre.datos.at(a) << " ";
}
}