Foro de elhacker.net

Programación => Programación C/C++ => Mensaje iniciado por: Alex Seahorse en 19 Abril 2012, 07:17 am



Título: Arreglos, calcular cuantas consonantes... (solucionado por lluvplay).
Publicado por: Alex Seahorse en 19 Abril 2012, 07:17 am
Hola amigos del foro, bueno el motivo de este tema era para pedir un poco de ayuda sobre el tema ya mencionado.

Lo que pasa es que en la escuela me han pedido hacer este programa pero con arreglos, anteriormente yo ya lo había realizado pero ya agregándole lo que son los arreglos se me ha complicado mucho.

Espero que alguien me pueda ayudar un poco, dejo mi código anterior para así poder entender su lógica de programación con arreglos, de antemano gracias.

Saludos.


Título: Re: Arreglos, calcular cuantas consonantes, vocales, palabras tiene un texto.
Publicado por: Alex Seahorse en 19 Abril 2012, 07:18 am
#include <cstdlib>
#include <iostream>

using namespace std;

int main(int argc, char *argv[])
{
    char c='l',texto[200];
    int x=0, cont_voc=0, cont_cons=0, cont_pal=0, cont_car=0,a=0,e=0,i=0,o=0,u=0;
    while(c!='.')
    {
          c=getchar();
          texto
  • =c;
          x++;
         
          if(c==' '||c=='.')
          cont_pal = cont_pal +1;
          if(c=='a'||c=='e'||c=='i'||c=='o'||c=='u'||c=='A'||c=='E'||c=='I'||c=='O'||c=='U')
          cont_voc = cont_voc +1;
          else
          cont_cons = cont_cons +1;
          switch(c)
          {
          case 'a':
          case 'A':
          a=a+1;
          break;
          case 'e':
          case 'E':
          e=e+1;
          break;
          case 'i':
          case 'I':
          i=i+1;
          break;
          case 'o':
          case 'O':
          o=o+1;
          break;
          case 'u':
          case 'U':
          u=u+1;
          break;                             
          }
    }
    cont_cons = cont_cons - cont_pal;
    texto
  • ='\0';
    system("cls");
    printf("\n\n%s\n\n",texto);
    printf("TOTAL DE VOCALES: %d\n",cont_voc);
    printf("TOTAL DE CONSONANTES: %d\n",cont_cons);
    printf("TOTAL DE PALABRAS: %d\n\n\n",cont_pal);
    printf("TOTAL DE LETRAS A: %d\n",a);
    printf("TOTAL DE LETRAS E: %d\n",e);
    printf("TOTAL DE LETRAS I: %d\n",i);
    printf("TOTAL DE LETRAS O: %d\n",o);
    printf("TOTAL DE LETRAS U: %d\n",u);               
    system("PAUSE");
    return EXIT_SUCCESS;
}


Título: Re: Arreglos, calcular cuantas consonantes, vocales, palabras tiene un texto.
Publicado por: adrianmendezRap en 19 Abril 2012, 11:14 am
Una pregunta. ¿A que te refieres con arreglos? ¿Os mandaron ampliar el código introduciendo nuevas funciones?


Título: Re: Arreglos, calcular cuantas consonantes, vocales, palabras tiene un texto.
Publicado por: flony en 19 Abril 2012, 12:47 pm
la idea es que haga el mismo programa pero usando matrices, algunos le llaman arreglos, que va a salir mas cortito el codigo ponele la firma


Título: Re: Arreglos, calcular cuantas consonantes, vocales, palabras tiene un texto.
Publicado por: lluvplay en 19 Abril 2012, 16:23 pm
hola chico !!! segun lo que veo necesitas algo como esto !!! pero en verdad no se si salio mas corto !!! cualquiera consulta estamos aqui !!!
Código:
#include<iostream.h>
#include<stdio.h>
#include <cstdlib>

int main ()
{
char vector[100];
int a=0,e=0,i=0,o=0,u=0, con,b;     
/// en el lenguaje C o C++ los vectores necesitan ser incializados porque estan
/// llenos de basura
/// Inciando vector

for (con=0;con<100;con++)
vector[con]=' '; // lo incializo con espacis en blanco

printf("Introduzca la Palabra: ");     
for (con=0;con<100;con++)
{
scanf("%c",&vector[con]);/// leemos la palabra
if (vector[con]=='\n')/// cuando presionamos enter fin e lectura
{
b=con;/// desimos hasta donde vamos a revisar el vector para no tener q revisar las 100 casillas
con=con+1111;    // salimos de la lectura
}// fin del if
}// fin del for
/// For del conteo normal mente tu profesor debio explicarte que no siempre son necesarios los else
/// como nosotros solo estamos buscando vocales listo solo vocales el signo "||" significa O
for (con=0;con<=b;con++)
{
if (vector[con]=='a'|| vector[con]=='A')
a=a+1;   
if (vector[con]=='e'|| vector[con]=='E') 
e=e+1;
if (vector[con]=='i'|| vector[con]=='I')
i=i+1;   
if (vector[con]=='o'|| vector[con]=='O') 
o=o+1;
if (vector[con]=='u'|| vector[con]=='U') 
u=u+1;
}
    printf("TOTAL DE VOCALES: %d\n",a+e+i+o+u);/// contamos las vocales
    printf("TOTAL DE CONSONANTES: %d\n",b-(a+e+i+o+u));// b es el total de la palabra - las vocales sobran las consonates
    printf("TOTAL DE PALABRAS: %d\n\n\n",b);// total de la palabra contado arriba
    printf("TOTAL DE LETRAS A: %d\n",a);
    printf("TOTAL DE LETRAS E: %d\n",e);
    printf("TOTAL DE LETRAS I: %d\n",i);
    printf("TOTAL DE LETRAS O: %d\n",o);
    printf("TOTAL DE LETRAS U: %d\n",u);           
system("PAUSE");
return 0;
}
anexo esto solo corre en Dev C !!! si bien usas borland C q no lo usas ( lo deduzco del codigo que mostraste arriba ) no va  a correr xq el enter se toma con el getch(); y su valor es el enter !!! para lo demas espero haber podido ayudar.


Título: Re: Arreglos, calcular cuantas consonantes, vocales, palabras tiene un texto.
Publicado por: Alex Seahorse en 19 Abril 2012, 17:23 pm
lluvplay

¡Muchas gracias por la ayuda, de verdad eres un maestro!

Ahora solo me queda estudiar más esa parte de arreglos (matrices), me has salvado la vida...

Saludos.  ;-)


Título: Re: Arreglos, calcular cuantas consonantes... (solucionado por lluvplay).
Publicado por: durasno en 19 Abril 2012, 17:43 pm
Los arreglo no son matrices, una matriz es bidimensional o mas.

array=arreglo=vector      (unidimensional)


Saludos


Título: Re: Arreglos, calcular cuantas consonantes... (solucionado por lluvplay).
Publicado por: flony en 20 Abril 2012, 04:49 am
para que lo sepas un vector es una matriz que tiene la particularidad de ser unidimensional, pero no por ello deja de ser una matriz...no quise ponerlo la primera vez, por no iniciar una discusión teórica que no llevaba a la resolución de este problema en particular