Eliminar vocales C++

Iniciado por bryanrz96, 29 Octubre 2015, 18:29 PM

0 Miembros y 1 Visitante están viendo este tema.

bryanrz96

Que me falta para eliminar las vocales, me invierte la palabra, pero no me imprime la palabra sin vocales.
Aqui el codigo.
Código (cpp) [Seleccionar]
#include <iostream>
#include <cstring>
using namespace std;

void inverti(char v[], char ris[])
{
int len=strlen(v);
for(int i=0; i<len; i++)
{
ris[i]=v[len-i-1];

}
ris[len]='\0';
cout<<v<<endl;
cout<<ris<<endl;
}
void toglivocali(char v[], char ris[])
{
int len=strlen(v);
int j=0;
for(int i=0; i<len;i++)
{
if(v[i]=='a' || v[i]=='e' || v[i]=='i' || v[i]=='0' || v[i]=='u')
{
ris[j]=v[i];
j++;
}
}
ris[j]='\0';
cout<<ris<<endl;
}


int main() {

char s1[256];
char s2[256];
char s3[256];
cout<<"dammi stringa"<<endl;
cin>>s1;

inverti(s1,s2);
toglivocali(s2,s3);
cout<<"il risultato finale è:"<<s3<<endl;
cout<<s2;

return 0;
}


Gracias

class_OpenGL

Es un error de lógica:

Código (cpp) [Seleccionar]
void QuitarVocales(char v[], char ris[]) {
    int len=strlen(v);
    int j=0;

    for(int i=0; i<len;i++) {
        if(v[i]!='a' && v[i]!='e' && v[i]!='i' && v[i]!='o' && v[i]!='u' &&
           v[i]!='A' && v[i]!='E' && v[i]!='I' && v[i]!='O' && v[i]!='U') {
            ris[j]=v[i];
            j++;
        }
    }

    ris[j]='\0';
}


Si el caracter es distinto de cualquier vocal, entonces si que se guarda en el resultado

Programador aficionado. Me quiero centrar en programar videojuegos. La API que uso para crearlos es OpenGL