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

 

 


Tema destacado: Arreglado, de nuevo, el registro del warzone (wargame) de EHN


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Error: "........Dejo de funcionar"
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Error: "........Dejo de funcionar"  (Leído 1,902 veces)
SDCC

Desconectado Desconectado

Mensajes: 55


Ver Perfil
Error: "........Dejo de funcionar"
« en: 10 Noviembre 2017, 04:42 am »

Código
  1. #include <stdio.h>
  2.  
  3. int main(){
  4. int m,x,j,m2[m],m3[x];
  5.  
  6. for (m=1;m<=10;m++){
  7. m2[m]=m*3;
  8. }
  9. for (x=1;x<=10;x++){
  10. m3[x]=x*2;
  11. }
  12. for(x=1;x<=10;x++){
  13. for(j=1;j<=10;j++){
  14. if(m2[x] == m3[j]){
  15. printf("%i \n",m2[j]);
  16. }
  17. }
  18. }
  19. }
  20.  
  21.  

Buenos dias compañeros disculpen estoy comenzando en esto y me tope con este error a la hora de asignar una valor dentro una matriz , tengo la percepción de que el error puede estar en ell como declare alguna variable pero realmente aun no logro entender de manera lógica en que es lo que estoy mal , principalmente el programa es sencillo y lo único que intento hacer es que se imprima los valores que se repiten en la tabla de 2 y 3


En línea

CalgaryCorpus


Desconectado Desconectado

Mensajes: 323


Ver Perfil WWW
Re: Error: "........Dejo de funcionar"
« Respuesta #1 en: 10 Noviembre 2017, 06:53 am »

Pide memoria explicita, por ejemplo 

int arreglo[10];   <-- 10 enteros

esto esta mal:

int arreglo
  • ;   <--- cuantos elementos tiene este arreglo?

Para C / C++ tienes siempre que especificar el tamano de los arreglos cuando los defines.
No es necesario cuando luego los usas (los recorres). En ese momento tienes que recordar que los indices validos van de 0 hasta el valor que pusiste en tu definicion - 1.

Osea para este arreglo:

int arreglo[10];

los indices validos van de 0 a 9.

hacer un ciclo asi:

for( i = 1; i <= 10; i++ ) arreglo = ..

tiene el inconveniente que cuando i vale 10,  arreglo[10] no existe, (recuerdas que los indices van de 0 a 9?)

Tu programa esta lleno de estos errores.
Los corrijes y el programa se comportara mejor.


En línea

Aqui mi perfil en LinkedIn, invitame un cafe aqui
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
recursos visual basic, """"""proceso inmortal"""""
Análisis y Diseño de Malware
Dark4ngel 7 14,122 Último mensaje 3 Noviembre 2011, 10:42 am
por Dark4ngel
Escritoro inaccesible: Error de "ATBroker.exe" "Explorer.exe" y "Taskmgr.exe".
Windows
Eleкtro 6 13,385 Último mensaje 1 Diciembre 2011, 14:15 pm
por .:UND3R:.
error "Explorador de Windows dejó de funcionar"
Seguridad
Copervick 2 4,287 Último mensaje 27 Febrero 2012, 14:21 pm
por Copervick
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines