• Lunes 29 de Abril de 2024, 21:58

Autor Tema:  Problema con arrays, q error tengo??  (Leído 1345 veces)

matyrocker

  • Nuevo Miembro
  • *
  • Mensajes: 2
    • Ver Perfil
Problema con arrays, q error tengo??
« en: Martes 17 de Mayo de 2011, 20:04 »
0
Hola!! bueno hace unos meses arranque con c++
tengo un problema con este codigo, es sobre arrays

me dicen q tengo una matriz ya cargada(20 numeros)
y q me debe mostrar el mayor de ellos y su coordenada

claramente el resultado deberia ser: 20 (q es el mayor)
                                                       2 10(q es su ubicacion o coordenada)
el problema es q a la hora de mostrar el resultado no me muestra el numero 20 sino esto: 1974443572   :huh:
las coordenadas si me las muestra correctamente !!...
 
entonces q es lo q estoy haciendo mal? por q no me muestra 20 como numero mayor??
este es el codigo:
                                                     
#include<iostream.h>
int main()
{
    int f,c,may,fila,col;
    int m[2][10]={1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20};
    may=m[1][1];
    for  (f=1;f<=2;f++)
    for(c=1;c<=10;c++)
    {
    if (m[f][c]>may)
    may=m[f][c];
    fila=f;
    col=c;

}
    cout<<(" ")<<may;
    cout<<("n ")<<fila;
    cout<<("n ")<<col;
    printf("nn");
 
    system("Pause");
}


                saludos! y gracias!!

alexg88

  • Miembro activo
  • **
  • Mensajes: 37
    • Ver Perfil
Re: Problema con arrays, q error tengo??
« Respuesta #1 en: Martes 17 de Mayo de 2011, 21:40 »
0
Los arrays en C++ empiezan con índice 0 y terminan en el índice = longitud_array -1.

Por eso, como pones el bucle desde 1 a 10, se te sale del array y te salen esos datos extraños.

matyrocker

  • Nuevo Miembro
  • *
  • Mensajes: 2
    • Ver Perfil
Re: Problema con arrays, q error tengo??
« Respuesta #2 en: Martes 17 de Mayo de 2011, 22:00 »
0
mmm...no me quedo del todo claro, hice algunas modificaciones pero sigue igual, en fin me podrias decir como seria la manera correcta??

ssaammuu

  • Miembro activo
  • **
  • Mensajes: 41
  • Nacionalidad: es
    • Ver Perfil
    • http://desarrollodejuegos.net
Re: Problema con arrays, q error tengo??
« Respuesta #3 en: Martes 17 de Mayo de 2011, 22:50 »
0
Como te han dicho, los arrays empiezan por índice 0.
Por ejemplo:
Código: C++
  1.  
  2. char array[3]={'a','b','c'};
  3. //entonces array[0]=='a'
  4. //              array[1]=='b'
  5. //         y   array[2]=='c'
  6.  
  7.  

Por lo que tus bucles deberían emepezar por 0, (f=0 por ejemplo) y acambar por numero-1 (f<2 por ejemplo)

Otra cosa es el array bidimensional
Código: C++
  1. int m[2][10]={1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20};
  2.  
sería
Código: C++
  1. int m[2][10]={ {1,2,3,4,5,6,7,8,9,10}
  2.                                     ,{11,12,13,14,15,16,17,18,19,20} };
  3.