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

 

 


Tema destacado: Rompecabezas de Bitcoin, Medio millón USD en premios


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Recorrido de matriz diagonal secundaria c++
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Recorrido de matriz diagonal secundaria c++  (Leído 10,439 veces)
SojatDotar

Desconectado Desconectado

Mensajes: 40


Ver Perfil
Recorrido de matriz diagonal secundaria c++
« en: 19 Octubre 2015, 21:47 pm »

Buenas, me podrían ayudar en hacer el recorrido de una matriz de la diagonal secundaria, una matriz de entero de modo que tenga se vea así http://prntscr.com/8ssapl lo he pensando de varias forma, pero no logro que se vea así, el código que tengo es
Código:
#include <iostream>
using namespace std;

int main () {

int mat[4][4];
int cont=1;
for(int i=0;i<4;i++){
for(int j=0;j<4;j++){

mat[j][i]=cont++;

}
}
int k=0,r=0;
for(int i=0; i<7; i++){
r=(i/4);

for(int j=k; j>=0; j--){

cout << mat[r][j]<<" ";
r++;
}
cout << endl;
k++;
k-=k/4;
}

cin.get();
return 0;
}


En línea

engel lex
Moderador Global
***
Desconectado Desconectado

Mensajes: 15.514



Ver Perfil
Re: Recorrido de matriz diagonal secundaria c++
« Respuesta #1 en: 19 Octubre 2015, 22:12 pm »

fijate algo, tu recorrido sería

Código:
0,0
0,1|1,0
0,2|1,1|2,0
0,3|1,2|2,1|3,0
1,3|2,2|3,1
2,3|3,2
3,3

si las coordenadas son(X,Y):

fijate que cada par suma el numero del ciclo donde está (primero 0, 1, etc)...

primero, la coordenada inicial se le suma 1 en Y, hasta que y llega al tope, entonces se le suma 1 a X hasta que ambos llegan al tope donde es el fin

sobre cada ronda, siempre le resta uno a la Y y se lo sumas a la X, terminando donde Yfinal = Xinicial...


creo que esto es suficiente info para que te pienses el algoritmo de recorrido ;)


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.
SojatDotar

Desconectado Desconectado

Mensajes: 40


Ver Perfil
Re: Recorrido de matriz diagonal secundaria c++
« Respuesta #2 en: 19 Octubre 2015, 22:28 pm »

no comprendo bien
En línea

geeke

Desconectado Desconectado

Mensajes: 93


Ver Perfil
Re: Recorrido de matriz diagonal secundaria c++
« Respuesta #3 en: 21 Octubre 2015, 00:07 am »

Código
  1. #include <stdio.h>
  2.  
  3. int main(void)
  4. {
  5.    int matriz[4][4] = {{1,2,3,4},{5,6,7,8},{9,10,11,12},{13,14,15,16}};
  6.    int x = 0, y = 0, i;
  7.  
  8.    for(;;)
  9.    {
  10.        printf("%*s", ((y == 0) ? 3 - x : y) * 2, "");
  11.        for(i = 0; x - i >= 0 && y + i < 4  ; i++)
  12.        {
  13.            printf("%3d ", matriz[x - i][y + i]);
  14.        }
  15.        printf("\n");
  16.        if(x < 3)
  17.            ++x;
  18.        else if(y < 3)
  19.            ++y;
  20.        else
  21.            break;
  22.    }
  23.    return 0;
  24. }
En línea

SojatDotar

Desconectado Desconectado

Mensajes: 40


Ver Perfil
Re: Recorrido de matriz diagonal secundaria c++
« Respuesta #4 en: 21 Octubre 2015, 04:10 am »

Gracias, pero mas que el código me gustaría mas comprender su elaboración, todavía no comprendo bien como hacer el ejercicio, eso es mas que todo mi problema
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Diagonal secundaria de matriz.!
Scripting
cuazzo 6 31,795 Último mensaje 22 Junio 2010, 01:17 am
por cuazzo
recorrido de una matriz de forma recursiva
Programación General
dark_headhunter 4 17,029 Último mensaje 10 Junio 2011, 23:39 pm
por Khronos14
Recorrido de una Matriz
Java
Fabi0lo 3 3,911 Último mensaje 26 Octubre 2011, 00:46 am
por s00rk
Moverse por las paralelas a la diagonal secundaria de una matriz.
Programación C/C++
AlucardDracula 4 2,765 Último mensaje 17 Diciembre 2013, 22:34 pm
por AlucardDracula
ayuda diagonal principal y secundaria phyton 3
Scripting
papess 2 11,992 Último mensaje 13 Mayo 2019, 18:51 pm
por papess
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines