Ejercicios con Arrays

Esta página contiene ejercicios prácticos sobre el uso de arrays y matrices en JavaScript.

Ejercicio 1: Media de serie indeterminada

Calcula la media aritmética de una serie indeterminada de valores (termina con 9999).

Resultado:

Código del ejercicio:

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 {
    sum=sum+x[j];
}
med=sum/j;
alert("La media es "+med);

Ejercicio 2: Media con función

Calcula la media aritmética de un número determinado de valores utilizando una función.

Resultado:

Código del ejercicio:

function media(n)
{
    var x=new Array(n);
    var sum=0;
    for(i=0;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));

Ejercicio 3: Media con salida mejorada

Versión mejorada del ejercicio anterior con una salida más detallada.

Resultado:

Código del ejercicio:

function media(n)
{
    var x=new Array(n);
    var sum=0;
    var salida="";
    for(i=0;i     {
        num=parseFloat(prompt("Programa Mejorado\nEscribe 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));

Ejercicio 4: Medidas estadísticas

Calcula la media, desviaciones, varianza y desviación típica de 6 valores.

Resultado:

Código del ejercicio:

var x=new Array(6);
var sum=0;
var med;
var des=new Array(6);
var sum1=0;
var sum2=0;
var desmed,vari,dt;
var salida="VALORES:\n";
var salida1="DESVIACIONES RESPECTO A LA MEDIA:\n";
for(i=0;i<6;i++)
{
    num=parseFloat(prompt("Escribe un valor para la serie ("+(i+1)+"º):",""));
    x[i]=num;
    salida=salida+x[i]+" - ";
    sum=sum+x[i];
}
med=sum/6;
for(i=0;i<6;i++)
{
    des[i]=Math.abs(x[i]-med);
    salida1=salida1+des[i]+" - ";
    sum1=sum1+des[i];
    sum2=sum2+(des[i]*des[i]);
}
desmed=sum1/6;
vari=sum2/6;
dt=Math.sqrt(vari);
alert(salida+"\n"+"MEDIA ARITMÉTICA = "+med+"\n"+salida1+"\n"+"DESVIACIÓN MEDIA ="+desmed+"\nVARIANZA="+vari+"\nDESVIACIÓN TÍPICA = "+dt);

Fórmulas estadísticas:

• Media aritmética: x = (x1+x2+x3+ ...)/n

• Desviaciones respecto a la media: d1=|x1-x|, d2=|x2-x|, ...

• Desviación media: media aritmética de las desviaciones

• Varianza: media aritmética de las desviaciones al cuadrado

• Desviación típica: raíz cuadrada de la varianza

Ejercicio 5: Generador de letras

Genera un array con letras del abecedario.

Resultado:

Código del ejercicio:

alert(GeneraLetras());
function GeneraLetras()
{
    var n;
    n=parseInt(prompt("Cuántas letras quieres (1 a 26)",""));
    if (isNaN(n)==true) return;
    if (n<1) n=1;
    if (n>28) n=26;
    var Letras=new Array(n);
    for (i=0;i<=Letras.length-1;i++)
    {
        Letras[i]=String.fromCharCode(65+i);
    }
    return Letras;
}

Explicación:

length es una propiedad de los arrays que indica el número de elementos.

String.fromCharCode() genera caracteres a partir de códigos ASCII (65='A', 66='B', etc.).

Ejercicio 6: Arrays paralelos

Manejo de arrays paralelos con datos y edades.

Resultado:

Código del ejercicio:

var salida="";
var Datos=new Array("Pepito","Paquito","Felipe");
var Edad=new Array(57,15,26);
alert("La matriz Datos tiene "+Datos.length+" elementos");
alert("La matriz Edad tiene "+Edad.length+" elementos");
for (i=0;i<=2;i++)
{
    salida=salida+Datos[i]+" - "+Edad[i]+"\n";
}
alert(salida);

Arrays paralelos:

Dos arrays que mantienen una relación entre sus elementos en la misma posición.

Ejercicio 7: Matriz bidimensional

Creación y visualización de una matriz bidimensional 5x5.

Resultado:

Código del ejercicio:

var Matriz2D= new Array(5);
for (i=0;i<5;i++)
{
    var Aux=new Array(5);
    for (j=0;j<5;j++)
    {
        Aux[j]="E"+i+j;
    }
    Aux[4] += "\n";
    Matriz2D[i]=Aux;
}
alert(Matriz2D);

Matrices bidimensionales:

En JavaScript se simulan creando un array de arrays.

Para acceder a un elemento: Matriz2D[fila][columna]

Bajar el archivo de texto con el código completo

Volver