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

 

 


Tema destacado: Introducción a Git (Primera Parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  como pasar una matriz a una funcion
0 Usuarios y 2 Visitantes están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: como pasar una matriz a una funcion  (Leído 5,501 veces)
hector hernadez

Desconectado Desconectado

Mensajes: 1


Ver Perfil
como pasar una matriz a una funcion
« en: 15 Octubre 2017, 15:14 pm »

buenos dias amigos, espero me puedan ayudar con esto,

estoy realizando un programa donde el usuario ingresa el tamaño de columnas y filas de una matriz, luego el usuario carga dicha matriz con números del 1 al 10,  lo que devuelve el programa es una matriz nueva donde si los valores de la matriz que ingreso el usuario son menores o iguales a 5 la matriz nueva convertirá esos valores a 0 de lo contrario los convertirá a 1. para ese calculo hice una función. pero cuando me llevo a las matrices como parámetros me da error. no se si me hice entender pero aquí les pongo el enunciado y el código que levo hasta ahora

Código
  1. /* 10. Dado un arreglo de nxn cuyos elementos son enteros positivos del 1 al 10,
  2.  ordénese un nuevo arreglo llamado nuevo, cuyos elementos sean:
  3.   0 si  m(i, j) <= 5 y 1 si  m(i,j) > 5. */
  4. #include<stdio.h>
  5.  
  6.  void modif_vec(int C,int F,int vec[][C], int nuevo[][C])
  7.  
  8.  {
  9.    int x,z;
  10.  
  11.    for (x=0;x<F;x++)
  12.        for (z=0;z<C;z++)
  13.    {
  14.        if (vec[x][z]<=5)
  15.            nuevo[x][z]=0;
  16.        else
  17.            nuevo[x][z]=1;
  18.    }
  19.  
  20.  
  21.  }
  22.  
  23.  
  24.  
  25.  
  26. int main()
  27. {
  28.    int x,z,F,C;
  29.  
  30.  
  31.    printf("ingrese el numero de filas para su arreglo \n" );
  32.    scanf("%i",&F);
  33.  
  34.    printf("ingrese el numero de columnas para su arreglo \n" );
  35.    scanf("%i",&C);
  36.  
  37. int vec[F][C],nuevo[F][C];
  38.  
  39.    /* bloque de instrucciones para cargar la matriz */
  40.    printf("ingrese valores para la matriz \n\n\n");
  41.    for (x=0; x<F; x++)
  42.        for (z=0; z<C; z++)
  43.        {
  44.            printf("ingrese valores para la fila numero %i columna %i\n ",x+1,z+1);
  45.            scanf("%i",&vec[x][z]);
  46.  
  47.            while (vec[x][z] < 1 || vec[x][z] > 10 )
  48.            {
  49.                printf("solo se permiten valores entre 1 y 10 \n vuelva a ingresar el valor nuevamente \n");
  50.                scanf("%i",&vec[x][z]);
  51.            }
  52.        }
  53.  
  54.  
  55.        modif_vec(C,F,vec,nuevo);
  56.  
  57.        printf("el arreglo nuevo es el siguiente \n\n");
  58.  
  59.        for(x=0;x<F;x++)
  60.        {
  61.  
  62.  
  63.        printf("\n\n");
  64.            for(z=0;z<C;z++)
  65.            printf("%i  ",nuevo[x][z]);
  66.  
  67.        }
  68.  
  69.    return 0;
  70. }
  71.  

  

estos son los errores que manda

Código:
||=== Build file: "no target" in "no project" (compiler: unknown) ===|
E:\taller de arreglos\ejer10\ejercicio 10.cpp|7|error: use of parameter outside function body before ']' token|
E:\taller de arreglos\ejer10\ejercicio 10.cpp|7|error: expected ')' before ',' token|
E:\taller de arreglos\ejer10\ejercicio 10.cpp|7|error: expected unqualified-id before 'int'|
||=== Build failed: 3 error(s), 0 warning(s) (0 minute(s), 0 second(s)) ===|


muchas gracias de antemano  ;D ;D


· Los códigos deben ir en etiquetas GeSHi
· No hagas doble post
>aquí las reglas del foro
-Engel Lex


« Última modificación: 15 Octubre 2017, 19:39 pm por engel lex » En línea

Gallu

Desconectado Desconectado

Mensajes: 247



Ver Perfil
Re: como pasar una matriz a una funcion
« Respuesta #1 en: 15 Octubre 2017, 21:33 pm »

A mi me da que lo que tienes son errores de sintáxis, fíjate que en la declaración de la función modif_vec los vectores que pasas tienen la letra C, no soy un experto en este lenguaje pero creo que es incorrecto.

Échale un ojo a lo siguiente:

https://www.tutorialspoint.com/cprogramming/c_passing_arrays_to_functions.htm

Saludos


En línea

Nadie alcanza la meta con un solo intento, ni perfecciona la vida con una sola rectificación, ni alcanza altura con un solo vuelo.
engel lex
Moderador Global
***
Desconectado Desconectado

Mensajes: 15.514



Ver Perfil
Re: como pasar una matriz a una funcion
« Respuesta #2 en: 15 Octubre 2017, 22:02 pm »

Citar
error: use of parameter outside function body before ']'

Error: Eso de parametros fuera del cuerpo de la funcion, antes de "]"

es decir, el cuerpo de la función (donde los parámetros son validos) empieza en "{" y tu estás intentando usa C que es un parámetro, antes de el "{"
En línea

El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Pasar matriz char a una función como referencia
Programación C/C++
KISKE 2 7,289 Último mensaje 18 Junio 2013, 13:07 pm
por KISKE
consulta pasar una matriz a una funcion
Programación C/C++
feedf 8 3,973 Último mensaje 30 Junio 2013, 00:50 am
por feedf
Pasar nombre de funcion como parametro de otra funcion en java
Java
xGisKaRDx 3 9,545 Último mensaje 1 Agosto 2014, 23:27 pm
por jhonatanAsm
Pasar solo una columna de una matriz como argumento de una funcion
Programación C/C++
Javier_Fig 4 2,946 Último mensaje 22 Septiembre 2015, 18:24 pm
por A.I.
Problema pasar matriz por referencia a una función en C
Programación C/C++
juligarc10 3 3,844 Último mensaje 27 Septiembre 2020, 23:25 pm
por K-YreX
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines