![]() |
Ayuda con un programa muy simple Hola, necesito desesperadamente vuestra ayuda. Se trata de un programa muy simple en C++, lo he revisado mil y una veces, y no veo el fallo. El caso es que creo un array bidimensional, y lo relleno, y al escribir la segunda fila, ésta sobreescribe la primera. Os pongo el código, listo para pegar, compilar y ejecutar. #include <iostream.h> #include <string.h> #include <stdio.h> #include <conio.h> #include <stdlib.h> #include <windows.h> int main(){ int numvar=0; //número de variables del problema int i,j,k; //variables auxiliares para bucles int numrest=0; //numero de restricciones float arrayrest[numrest][numvar]; //array de restricciones do{ cout<<"Introduce el numero de variables:\n"; cin>>numvar; }while(numvar<=0); cout<<"\n"; cout<<"Introduce el numero de restricciones o ecuaciones:\n"; cin>>numrest; for (i=0;i<numrest;i++){ cout<<"Introduccion de la restriccion "; cout<<i+1; cout<<":\n"; for (j=0;j<numvar;j++){ cout<<"Introduce el valor de la variable X"; cout<<j+1; cout<<": "; cin>>arrayrest[i][j]; } } for (i=0;i<numrest;i++){ cout<<"ATENCION !!!!\n"; cout<<"\nLa restricccion "; cout<<i+1; cout<<" es: \n"; for (j=0;j<numvar;j++){ if (arrayrest[i][j]<0){ cout<<""; } else { cout<<"+"; } cout<<arrayrest[i][j]; cout<<"X"; cout<<j+1; } cout<<"\n\n"; } cout<<"La primera posicion del array bidimensional contiene: "; cout<<arrayrest[0][0]; system ("PAUSE"); return (0); } Seguro que es una chorrada, pero estoy loco dándole vueltas y no veo el fallo. Gracias por vuestra paciencia. |
Re: Ayuda con un programa muy simple Creo que el problema está en la declaración del array, pues lo declaras con unas variables que tienen valor cero. O sigues usando un array declararandolo con un tamaño suficiente para los valores introducidos por el usuario, o utilizas memoria dinámica que creas despues de saber el tamaño que necesitas (ésta opción parece la mejor). |
| La zona horaria es GMT -6. Ahora son las 21:39. |
Desarrollado por vBulletin® Versión 3.8.7
Derechos de Autor ©2000 - 2026, Jelsoft Enterprises Ltd.