3.- Matrices y Arrays
Una matriz es un conjunto de elementos colocados de forma adyacente en la memoria de
manera que nos podemos referir a ellos con un solo nombre común.
- Las matrices se pueden clasificar según su tamaño en:
• Matrices Estáticas: tienen un tamaño fijo e inmutable.
• Matrices Dinámicas: tienen un tamaño variable. En JavaSript las matrices siempre
son dinámicas.
- Las matrices se pueden clasificar según sus dimensiones:
• Arrays: son matrices de una dimensión.
• Matrices: son matrices multidimensionales.
En JavaScript, las matrices son siempre "Arrays", pero veremos que podemos "simular"
matrices multidimensionales.
- Escribe el siguiente programa:
<HTML>
<SCRIPT LANGUAGE="JavaScript">
// PROG050.HTM
var x=new Array();
var salida="";
for(i=0;i<=10;i++)
{
x[i]=2*i;
salida=salida+"x["+i+"]="+x[i]+"\t";
}
alert(salida);
</SCRIPT>
</HTML>- Graba el programa con el nombre Prog050.htm en TuCarpeta y ejecútalo.
- Estudio del Prog050.htm
• var x=new Array();
Definimos la variable "x" como un "array" de un número indeterminado de elementos.
• Los elementos de un "array" se indican: NombreArray[índice]= valor
El índice= 0, 1, 2, 3, 4, ...
En nuestro caso:
X[0] será el primer valor del array
X[1] será el segundo.
Etc.
• x = 2*i
Asignamos a cada elemento del array el doble de su índice, es decir: x[0]= 0; x[1]= 2;
x[2]= 4; etc.
- Escribe el siguiente programa:
<HTML>
<SCRIPT LANGUAGE="JavaScript">
//PROG051.HTM
var n;
var salida="";
n=prompt("Escribe el número de elementos del Array","");
n=parseInt(n);
var Vector=new Array(n);
for(i=0;i<n;i++)
{
Vector[i]=prompt("Introduce Valor","");
salida=salida+Vector[i]+"\n";
}
alert("Los valores de la matriz son:\n"+salida);
</SCRIPT>
</HTML>- Graba el programa con el nombre Prog051.htm en TuCarpeta.
- Observa de qué forma, podemos definir un array con un número variable de valores.
Programa que calcula la media aritmética de una serie indeterminada de valores
- Escribe:
<HTML>
<SCRIPT LANGUAGE="JavaScript">
//PROG051a.HTM
var x=new Array();
var med;
var y=0;
var i=0;
var sum=0;
while(y != 9999)
{
y=parseFloat(prompt("Introduce un valor\npara acabar escribe
9999","9999"));
x[i]=y;
i++;
}
x[i]=0;
for(j=0;j<i-1;j++)
{
sum=sum+x[j];
}
med=sum/j;
alert("La media es "+med);
</SCRIPT>
</HTML>- Grábalo con el nombre Prog051a.htm y ejecútalo varias veces para comprobar que
funciona.
Programa que calcula la media aritmética de un número determinado de valores
utilizando una función
- Escribe:
<HTML>
<SCRIPT LANGUAGE="JavaScript">
//PROG051b.HTM
function media(n)
{
var x=new Array(n);
var sum=0;
for(i=0;i<n;i++)
{
num=parseFloat(prompt("Escribe un valor de la serie
("+(i+1)+"º):",""));
x[i]=num;
sum=sum+x[i];
}
return sum/n;
}
var valores;
valores=parseInt(prompt("Escribe el número de elementos de la serie",""));
alert("La media de todos los valores es: "+media(valores));
</SCRIPT>
</HTML>- Grábalo con el nombre Prog051b.htm y ejecútalo varias veces para comprobar que
funciona.
- Mejora la "salida" del programa anterior de la siguiente forma:
<HTML>
<SCRIPT LANGUAGE="JavaScript">
//PROG051c.HTM
function media(n)
{
var x=new Array(n);
var sum=0;
var salida="";
for(i=0;i<n;i++)
{
num=parseFloat(prompt("Escribe un valor de la serie ("+(i+1)+"º):",""));
x[i]=num;
salida=salida+x[i]+" - ";
sum=sum+x[i];
}
salida=salida+"\nLa Media Aritmética de estos "+n+" números es "+(sum/n);
return salida;
}
var valores;
valores=parseInt(prompt("Escribe el número de elementos de la serie",""));
alert(media(valores));
</SCRIPT>
</HTML>- Grábalo con el nombre Prog051c.htm y pruébalo.

Haz un programa que sirva para calcular un cateto de un triángulo rectángulo a partir del