elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Guía actualizada para evitar que un ransomware ataque tu empresa


  Mostrar Temas
Páginas: [1]
1  Programación / Programación C/C++ / ayuda con aritmetica de punteros en: 16 Marzo 2017, 23:57 pm
alguien que me oriente en terminar esto
Código
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #define VOCALES 5
  4. #define TAMANOMAXIMO 20
  5.  
  6. void main(void)
  7. {
  8.    int i;
  9.  
  10.    char A[TAMANOMAXIMO]={0};
  11.    char B[TAMANOMAXIMO]={0};
  12.    char C[TAMANOMAXIMO]={0};
  13.    char vocales[VOCALES];
  14.    int VA=0,VB=0,VC=0; // estos son los que cuentan las vocales por cada arreglo
  15.  
  16.    char *puntero=0;
  17.    //se agregan las vocales al arreglo
  18.  
  19.    vocales[0]="a";
  20.    vocales[1]="e";
  21.    vocales[2]="i";
  22.    vocales[3]="o";
  23.    vocales[4]="u";
  24.    //nota: solo funciona con minusculas para mayusculas seria otro apuntador con otro arreglo pero utilizando mayusculas
  25.  
  26.  
  27.        printf("Ingresa palabra no mayor a 20 silabas\n");
  28.  
  29.        fgets(A,TAMANOMAXIMO, stdin);// esta funcion toma una cadena ingresada por el usuario y la guarda en un arreglo
  30.        //los parametros que se ingresan en la funcion es el arreglo(A), el tamaño del arreglo (TAMANOMAXIMO) y de que tipo es (stdio)
  31.  
  32.        printf("\n\n");
  33.  
  34.  
  35.        printf("Ingresa palabra no mayor a 20 silabas\n");
  36.  
  37.        fgets(B,TAMANOMAXIMO, stdin);// esta funcion toma una cadena ingresada por el usuario y la guarda en un arreglo
  38.        //los parametros que se ingresan en la funcion es el arreglo(B), el tamaño del arreglo (TAMANOMAXIMO) y de que tipo es (stdio)
  39.  
  40.        printf("\n\n");
  41.  
  42.  
  43.        printf("Ingresa palabra no mayor a 20 silabas\n");
  44.  
  45.        fgets(C,TAMANOMAXIMO, stdin);// esta funcion toma una cadena ingresada por el usuario y la guarda en un arreglo
  46.        //los parametros que se ingresan en la funcion es el arreglo(C), el tamaño del arreglo (TAMANOMAXIMO) y de que tipo es (stdio)
  47.  
  48.  printf("\n\n");
  49.  int j;
  50.  for(j=0;i<VOCALES;j++)
  51.  {
  52.    puntero=&vocales[j];
  53.  
  54.    for(i=0;i<TAMANOMAXIMO;i++)
  55.    {
  56.  
  57.      if(A[i]==*puntero)
  58.      {
  59.        VA++;
  60.      }
  61.      if(B[i]==*puntero)
  62.      {
  63.        VB++;
  64. 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,
  65.  
  66. #include <stdio.h>
  67. #define COLUMNAS 5
  68. #define FILAS 5
  69.  
  70. void main(void)
  71. {
  72.    int i,j;
  73.  
  74.    int A[COLUMNAS][FILAS]={0};
  75.    int B=0;
  76.    int *puntero=0;//este puntero va a ver la posicion A[i][j]
  77.    int *puntero2=0;//este puntero va a ver la posicion A[j][i]
  78.  
  79.  
  80.  
  81.    for(i=0;i<COLUMNAS;i++)
  82.    {
  83.      for(j=0;j<FILAS;j++)
  84.      {
  85.        printf("Ingresa numero para A [%d][%d] \n",i,j );
  86.  
  87.        scanf("%d", &A[i][j]);
  88.      }
  89.  
  90.  
  91.  
  92.    }    
  93.  printf("\n\n");
  94.  
  95.  
  96.    for(i=0;i<COLUMNAS;i++)
  97.    {
  98.      for(j=0;j<FILAS;j++)
  99.      {
  100.        printf("[%d] ",A[i][j]);
  101.  
  102.      }
  103.      printf("\n" );
  104.     }  
  105.  
  106.  
  107.  
  108. int encontrado;
  109. encontrado=1;//encontrado tiene 2 valores únicos 0 y 1, donde 0 no encontrado y 1 encontrado, se inicializa en verdadero suponiendo que
  110.  // la matriz es simetrica
  111. i=0;
  112.  j=0;
  113.  
  114.  
  115.       while(i<COLUMNAS && encontrado==1)
  116.    {
  117.      while(j<FILAS && encontrado==1)
  118.      {
  119.        puntero=&A[i][j];
  120.        puntero2=&A[j][i];
  121.        if(*puntero2!=*puntero)
  122.        {
  123.          encontrado=0;
  124.        }else{
  125.          j++;
  126.  
  127.        }
  128.  
  129.      }
  130.      i++;
  131.  
  132.  
  133.    }
  134.  
  135. if (encontrado==0)
  136. printf("\n\nLa matriz no es simetrica\n\n");
  137. if (encontrado==1)
  138. printf ("\n\nLa matriz es simetrica\n\n");
  139.  
  140.  
  141.  
  142. }
  143.  
  144. en este usando aritmetica de punteros debo determinar si la matriz ingresada es simetrica o no
  145.  
  146. #include <stdio.h>
  147. #define COLUMNAS 5
  148.  
  149. void main(void)
  150. {
  151.    int i;
  152.  
  153.    int A[COLUMNAS]={0};
  154.    int B=0;
  155.    int *puntero=0;
  156.  
  157.  
  158.    for(i=0;i<COLUMNAS;i++)
  159.    {
  160.  
  161.        printf("Ingresa numero para A [%d] \n",i );
  162.  
  163.        scanf("%d", &A[i]);
  164.  
  165.     }    
  166.  printf("\n\n");
  167.  
  168.  
  169.    for(i=0; i<COLUMNAS; i++)
  170.    {
  171.       printf("%d\t", A[i]);
  172.    }
  173.  printf("\n\n");
  174.     printf("ingrese valor que busca \n");
  175.        scanf("%d",&B);
  176.  
  177. int encontrado;
  178. encontrado=0;//encontrado tiene 2 valores únicos 0 y 1, donde 0 no encontrado y 1 encontrado
  179. i=0;
  180.  
  181.  
  182.       while(i<COLUMNAS && encontrado==0)
  183.    {
  184.     puntero=&A[i];
  185. if(B==*puntero)
  186.        {
  187. encontrado=1;
  188. }
  189.        else
  190.          {
  191.           i++;
  192.  
  193.          }
  194.  
  195.    }
  196.  
  197. if (encontrado==0)
  198. printf("elemento no econtrado\n");
  199. if (encontrado==1)
  200. printf ("elemento encontrado A[%d]= %d \n",i, B);
  201.  
  202.  
  203.  
  204. }

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
Páginas: [1]
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines