Hola
Estoy haciendo un cuadro mágico en c++ pero resulta que tengo todo hecho y lo que me falta es que la matriz resultante quede en el centro de la ventana del programa digamos si es una matriz de 49x49 entonces que si ingreso el numero de que me haga la matriz 3x3 entonces que quede sobrando los espacios laterales superiores e inferiores de tal forma que la matriz me quede en el centro
Copyright © 2024 Q2A.ES - All rights reserved.
Answers & Comments
Verified answer
Pero, ¿qué estás usando para imprimir la matriz en la pantalla?
Porque si es en modo DOS (la pantalla negra) puedes hacer dos cosas:
- Si usas conio.h, con la función gotoxy calculas según la cantidad de filas y columnas de la ventana (por lo general es un 80x25 ó un 80x50 en la versión extendida) y podría ser:
int filaInicial = 80/2 - numFilasMatriz/2 - 1;
int columnaInicial = 25/2 - numColumnasMatriz/2 + 1;
gotoxy (filaInicial, columnaInicial);
cout<<matriz[0][0];
Así, para 3x3 tendrías:
filaInicial = 38
columnaInicial = 12
Con eso podrías centrar la matriz:
----- [MATRIZ] -----
- Si no tienes conio.h, haciendo el mismo cálculo puedes imprimir saltos de línea (para la primera fila) y espacios (para las columnas):
for (i=0; i<filaInicial; i++) cout<<endl;
for (i=0; i<columnaInicial; i++) cout<<" "; // esto se repetiría
cout<<matriz[0][0];
Si estás trabajando en modo gráfico con ventanas, alguna función de las librerías que estés usando debe permitirte "centrar" un componente (la matriz) en un frame (la ventana principal).
...
mi viejo busca en la web del programador y hay e encontrado cantidad de ejemplos de codigo para muchos lenguajes de programacion entre ellos java y turbo c y c++
suerte