Una matriu banda és una matriu quadrada on els elements no nuls estan confinats al voltant de la diagonal. Volem dibuixar l’aspecte d’una matriu banda d’ amb un paràmetre que ens indica el gruix de la banda. A continuació es mostra el dibuix per diverses bandes en una matriu de :
..... x.... xx... xxx..
..... .x... xxx.. xxxx.
..... ..x.. .xxx. xxxxx
..... ...x. ..xxx .xxxx
..... ....x ...xx ..xxx
b=0 b=1 b=2 b=3
Podem interpretar el valor de com el nombre d’elements no nuls a la primera fila i a la primera columna de la matriu.
L’entrada consisteix en diversos casos. Cada cas especifica els valors d’ i , amb i .
Cal escriure l’aspecte de les matrius bandes amb els caràcters
. i x segons les figures mostrades a
l’enunciat. Cal afegir una línia en blanc per separar les matrius de
cada cas. No hi ha d’haver línia de separació després de la darrera
matriu.
Cal estructurar el programa amb les funcions que es considerin
oportunes. Per a cada funció (excepte el main) cal escriure
una especificació que indiqui el que fa la funció.
Important
En els comentaris del programa cal contestar a la pregunta següent (20% de la nota de l’exercici):
Com caldria modificar el programa per tal que dibuixés una matriu amb dues bandes del mateix gruix (diagonal i anti-diagonal) formant una creu? Escriviu el codi que caldria posar dins dels comentaris del programa.
Aquest és un exemple d’una matriu amb dues bandes (, ).
xx....xx
xxx..xxx
.xxxxxx.
..xxxx..
..xxxx..
.xxxxxx.
xxx..xxx
xx....xx
Input
3 0 3 1 3 3 5 2 5 4
Output
... ... ... x.. .x. ..x xxx xxx xxx xx... xxx.. .xxx. ..xxx ...xx xxxx. xxxxx xxxxx xxxxx .xxxx