Hola!

Registrándote como bakuno podrás publicar, compartir y comunicarte en privado con otros bakuos :D

Regístrame ya!

SEGUIMIENTO A UN ARREGLO BIDIMENSIONAL

celio

Bovino maduro
Desde
11 Ago 2007
Mensajes
239
Hasta la presente con esto de los arreglos me ha costado pero le sigo insistiendo y le sigo dando duro y he entendido cosas gracias a ustedes seguire siendo persistente para poder aprender.....:) Ok la cosa es que enconte un ejercicio en el libro de schildt donde hay que imprimir los subindises de una matriz de 4 x 5
#include <stdio.h>
#include <conio.h>
void main()
{
clrscr();
int dos_d[4][5];
int i,j;
for(i=0;i<4;i++){
for(j=0;j<5;j++)
dos_d[j]=i*j;
}
for(i=0;i<4;i++){
for(j=0;j<5;j++)
printf("%d\t",dos_d[j]=i*j);
printf("\n");
}
getch();

}

Osea que queda una matriz multiplicando el i * j

012345
000000
012345
0246810
03691215
048121620


Al hacer mi prueba de escritorio(pues estoy aprendiendo la logica) de la instruccion dos_d[j]=i*j;

i j dos[j]
0 0 0
1 1 1
2 2 2
3 3 9
4 4 16
5 20


Como ven en la prueba de escritorio no me da como me deberia dar la matriz del codigo anterior

Primera pasada
for(i=0;i<4;i++){
i vale 0 ; i menor que cuatro SI , entra al ciclo
for(j=0;j<5;j++)
j vale 0 ;j menor que 5 SI , entra al ciclo
dos_d[j]=i*j;
dos_d[j]= 0 x 0 = 0;
i incrementa en uno , y j en uno
y asi sucesivamente me da el seguimiento que dije anteriormente no el que quisiera que es

012345
000000
012345
0246810
03691215
048121620


No se por que no me sale y no entiendo por que no me sale asi



Muchas gracias

Atte

Celio
 
Revisando tu codigo lo vi medio raro, para la salida que quieres no me cuadra mucho, hice este codigo en java

Código:
        int i, j;
        int arreglo[][] = new int[4][5];
        for (i=0; i<4; i++){
            for (j=0; j<5; j++){
                arreglo[i][j]=i*j;
            }
        }
        for (i=0; i<4; i++){
            for (j=0; j<5; j++){
                System.out.print(arreglo[i][j]+" ");
            }
            System.out.println();
        }
y tiene esta salida,

0 0 0 0 0
0 1 2 3 4
0 2 4 6 8
0 3 6 9 12

cualquier cosa pregunta y te ayudo
 
que onda mi buen, que bueno que le sigas aprendiendo a la programacion.

no entendi muy bien lo que quieres hacer, es decir tienes una matriz de 4x5

que quieres de resultado?? multiplicar todo los indices o q pex?
 
HTML:
#include <cstdio>
#include <conio.h>
int main()
{

int dos_d[6][6]={0,1,2,3,4,5};
int i=0,j=0,b=0,c=0;
for(i=0;i<=5;i++)
{
                  b++;
                 for(j=0;j<=5;j++){
                                   dos_d[b][j]= (dos_d[0][c])*(dos_d[0][j]);
                                  }
c++;
}
for(i=0;i<6;i++){
                  
                  for(j=0;j<6;j++){printf("%d\t",dos_d[i][j]);}
                   printf("\n");
                  }



getch();

}

jaja no c si, asi lo querias pero asi me quedo y da el resultado que querias
 
ok

no no muchachos lo que sucede es que ese codigo esta en el libro de Herbeth Shildt , la guia de auto enseñanza y lo que no me da es la prueba de escritorio ,

mi prueba de escritorio da:

i j dos[j]
0 0 0
1 1 1
2 2 2
3 3 9
4 4 16
5 20


mientras que compilando el programa me da:
000000
012345
0246810
03691215
048121620


y no entiendo por que osea q como se le hace una prueba de escritorio cuando hay un arreglo bidimensional ..



Gracias
 
que onda mi buen, que bueno que le sigas aprendiendo a la programacion.

no entendi muy bien lo que quieres hacer, es decir tienes una matriz de 4x5

que quieres de resultado?? multiplicar todo los indices o q pex?

Si claro es la multiplicacion de indices i * j

Gracias..
 
jejejje ya le puse un poco mas atencion a tu pregunte jiijji, tu problema radica en que no sabes como hacer la prueba de escritorio, a un arreglo bidimensional,,

pos es ta casi bien en todo, menos en el arreglo jijjiij.

al ser un arreglo de 4x5 no tienes un vector asi:
0
1
2
3 PORQ AHI NAMAS ESTARIAS EVALUANDO LA POSICION i PERO TE FALTA LA j

un ejemplo asi rapidito::
voy a evaluar un arreglo de 3x2 osea i[0,1,2] y j[0,2]
--------------------------------------------------------------------------------------------
i---------j------------arreglo dos[j]
0--------0----------------0
0--------1----------------0 //recuerda que i se incrementa asta que se termina d incremenatr j
1--------0----------------0 //se incrementa i y se vuelva empezar el ciclo de j
1--------1----------------1
2--------0----------------0
2--------1----------------2 //fin de los ciclos

tu resultado es:
0---0
0---1 3x2
0---2

espero haberte aclaro tu duda, cualquier cosa, aqui andamos
siguese asiii!!!
 
jejejje ya le puse un poco mas atencion a tu pregunte jiijji, tu problema radica en que no sabes como hacer la prueba de escritorio, a un arreglo bidimensional,,

pos es ta casi bien en todo, menos en el arreglo jijjiij.

al ser un arreglo de 4x5 no tienes un vector asi:
0
1
2
3 PORQ AHI NAMAS ESTARIAS EVALUANDO LA POSICION i PERO TE FALTA LA j

un ejemplo asi rapidito::
voy a evaluar un arreglo de 3x2 osea i[0,1,2] y j[0,2]
--------------------------------------------------------------------------------------------
i---------j------------arreglo dos[j]
0--------0----------------0
0--------1----------------0 //recuerda que i se incrementa asta que se termina d incremenatr j
1--------0----------------0 //se incrementa i y se vuelva empezar el ciclo de j
1--------1----------------1
2--------0----------------0
2--------1----------------2 //fin de los ciclos

tu resultado es:
0---0
0---1 3x2
0---2

espero haberte aclaro tu duda, cualquier cosa, aqui andamos
siguese asiii!!!


J
0
1
0
1
0
1

Por que si al igual que la J va de uno en uno van con ceros no entiendo??
 
Por que si al igual que la J va de uno en uno van con ceros no entiendo??


jejejej buena observacion, :vientos:

esque me equivoque, porque puese j[0,2] y era j[0,1]

ya que es una matriz de 3x2 osea i[0,1,2] x j[0,1]

gracias por el dato, jejej ya ves....todo nos equivocamos

cualquier cosa aki andamos :metal::metal::metal:
 
Volver
Arriba