Introducción a la
Programación
Trimestre 2004 Otoño --- Tarea 6
Miércoles 24 de Noviembre de
2004 a las
14:30 hrs
Matrices estocásticas
Una matriz cuadrada se dice estocástica si las sumas de todos
los elementos de cada renglón y las sumas de todos los elementos
de cada columna son iguales. Normalmente, todas esas sumas deben ser
iguales a 1, pero en esta tarea supondremos que todas las sumas deben
ser iguales a 100. Por ejemplo, la matriz de 2x2 cuyos dos renglones
son (31, 41) y (59, 26) no es estocástica, pero la matriz de 3x3
cuyos tres renglones son (31, 41, 28), (59, 26, 15) y (10, 33, 57)
sí es estocástica. Más aún, observe que la
segunda matriz se obtuvo de la primera completando cada renglón
por la derecha y cada columna por abajo de modo que todas las sumas
fueran iguales a 100. Dado un entero n y una matriz de n por n, escriba
un programa que obtenga una matriz de n+1 por n+1 que sea
estocástica.
Especificación
La entrada consiste de un número entero n,
que tendrá un valor entre 1 y 100, seguido de n renglones, cada uno de ellos con n números
enteros entre 0 y 100. Todas las sumas de renglones y columnas de esta
matriz serán menores o iguales a 100. La
salida consiste de dos renglones, cada uno de ellos con n + 1 números enteros
separados por espacios. El primer renglón de la salida debe ser
la columna que se agregó a la derecha de la matriz de entrada y
el segundo renglón de la salida debe ser el renglón que
se agregó abajo de la matriz de entrada. El
nombre de tu
programa deberá ser matestNN.c,
donde NN es el
número de equipo
que les fue
asignado. Los archivos matestNN.o
y matestNN.exe no deben
ser
entregados. Notas: (a) Su
programa no deberá leer ni escribir nada además de los
datos mencionados. (b) Su programa no deberá usar nada que no
hayamos visto en clase. (c) Para compilar su programa en UNIX usen la
instrucción gcc
matestNN.c -o matest y para probarlo usen la instrucción ./matest y tecleen la entrada
deseada seguida de un enter.
Ejemplo
ENTRADA:
SALIDA:
2 28 15 57
31 41 10 33 57
59 26