Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Temas - leo soto

#1
alguien que me oriente en terminar esto
#include <stdio.h>
#include <stdlib.h>
#define VOCALES 5
#define TAMANOMAXIMO 20

void main(void)
{
   int i;

   char A[TAMANOMAXIMO]={0};
   char B[TAMANOMAXIMO]={0};
   char C[TAMANOMAXIMO]={0};
   char vocales[VOCALES];
   int VA=0,VB=0,VC=0; // estos son los que cuentan las vocales por cada arreglo

   char *puntero=0;
   //se agregan las vocales al arreglo

   vocales[0]="a";
   vocales[1]="e";
   vocales[2]="i";
   vocales[3]="o";
   vocales[4]="u";
   //nota: solo funciona con minusculas para mayusculas seria otro apuntador con otro arreglo pero utilizando mayusculas


       printf("Ingresa palabra no mayor a 20 silabas\n");

       fgets(A,TAMANOMAXIMO, stdin);// esta funcion toma una cadena ingresada por el usuario y la guarda en un arreglo
       //los parametros que se ingresan en la funcion es el arreglo(A), el tamaño del arreglo (TAMANOMAXIMO) y de que tipo es (stdio)

       printf("\n\n");


       printf("Ingresa palabra no mayor a 20 silabas\n");

       fgets(B,TAMANOMAXIMO, stdin);// esta funcion toma una cadena ingresada por el usuario y la guarda en un arreglo
       //los parametros que se ingresan en la funcion es el arreglo(B), el tamaño del arreglo (TAMANOMAXIMO) y de que tipo es (stdio)

       printf("\n\n");


       printf("Ingresa palabra no mayor a 20 silabas\n");

       fgets(C,TAMANOMAXIMO, stdin);// esta funcion toma una cadena ingresada por el usuario y la guarda en un arreglo
       //los parametros que se ingresan en la funcion es el arreglo(C), el tamaño del arreglo (TAMANOMAXIMO) y de que tipo es (stdio)

 printf("\n\n");
 int j;
 for(j=0;i<VOCALES;j++)
 {
   puntero=&vocales[j];

   for(i=0;i<TAMANOMAXIMO;i++)
   {

     if(A[i]==*puntero)
     {
       VA++;
     }
     if(B[i]==*puntero)
     {
       VB++;
diganme que me falta (es en c) y lo que tengo que realizar es que al ingresar una palabra en cada arreglo, me de el numero de vocales de cada una,

#include <stdio.h>
#define COLUMNAS 5
#define FILAS 5

void main(void)
{
   int i,j;
   
   int A[COLUMNAS][FILAS]={0};
   int B=0;
   int *puntero=0;//este puntero va a ver la posicion A[i][j]
   int *puntero2=0;//este puntero va a ver la posicion A[j][i]



   for(i=0;i<COLUMNAS;i++)
   {
     for(j=0;j<FILAS;j++)
     {
       printf("Ingresa numero para A [%d][%d] \n",i,j );

       scanf("%d", &A[i][j]);
     }

     

   }    
 printf("\n\n");


   for(i=0;i<COLUMNAS;i++)
   {
     for(j=0;j<FILAS;j++)
     {
       printf("[%d] ",A[i][j]);

     }
     printf("\n" );
    }  



int encontrado;
encontrado=1;//encontrado tiene 2 valores únicos 0 y 1, donde 0 no encontrado y 1 encontrado, se inicializa en verdadero suponiendo que
 // la matriz es simetrica
i=0;
 j=0;


      while(i<COLUMNAS && encontrado==1)
   {
     while(j<FILAS && encontrado==1)
     {
       puntero=&A[i][j];
       puntero2=&A[j][i];
       if(*puntero2!=*puntero)
       {
         encontrado=0;
       }else{
         j++;

       }

     }
     i++;


   }

if (encontrado==0)
printf("\n\nLa matriz no es simetrica\n\n");
if (encontrado==1)
printf ("\n\nLa matriz es simetrica\n\n");



}

en este usando aritmetica de punteros debo determinar si la matriz ingresada es simetrica o no

#include <stdio.h>
#define COLUMNAS 5

void main(void)
{
   int i;
   
   int A[COLUMNAS]={0};
   int B=0;
   int *puntero=0;


   for(i=0;i<COLUMNAS;i++)
   {

       printf("Ingresa numero para A [%d] \n",i );

       scanf("%d", &A[i]);

    }    
 printf("\n\n");


   for(i=0; i<COLUMNAS; i++)
   {
      printf("%d\t", A[i]);
   }
 printf("\n\n");
    printf("ingrese valor que busca \n");
       scanf("%d",&B);

int encontrado;
encontrado=0;//encontrado tiene 2 valores únicos 0 y 1, donde 0 no encontrado y 1 encontrado
i=0;


      while(i<COLUMNAS && encontrado==0)
   {
    puntero=&A[i];
if(B==*puntero)
       {
encontrado=1;
}
       else
         {
          i++;

         }

   }

if (encontrado==0)
printf("elemento no econtrado\n");
if (encontrado==1)
printf ("elemento encontrado A[%d]= %d \n",i, B);



}


en esta usando aritmetica de punteros, el programa debe indicar la posicion en el arreglo del elemento parado como parametro, en caso de que el elemento no se encuentre y devolver el tamaño en bytes del arreglo ingresado por el usuario

TODO ES EN C, LES AGRADECERIA SU AYUDA


· Los códigos deben ir en etiquetas GeSHi
· Los títulos deben ser descriptivos
>aquí las reglas del foro
-Engel Lex