Está en la página 1de 12

Arreglos

Buri Jimenez Cortes

Estructura de Datos

Instituto IACC

02-12-2018
Desarrollo

Se tiene un arreglo que contiene solo 20 números pares entre el 1 y 100. Realice un ejemplo en
pseudocódigo para sumar todos sus valores, imprimir la posición y el valor del menor, la posición
y el valor del mayor y el promedio de todos los números. Luego llévelo a código PHP. Imprima
las pantallas de las salidas.
Pseudocódigo:
Proceso Tarea_2
// arreglo que contiene solo 20 números pares entre el 1 y 100
Dimensión arreglo[20];
arreglo[0] <-2
arreglo[1] <-4
arreglo[2] <-6
arreglo[3] <-8
arreglo[4] <-10
arreglo[5] <-12
arreglo[6] <-14
arreglo[7] <-16
arreglo[8] <-18
arreglo[9] <-20
arreglo[10] <-22
arreglo[11] <-24
arreglo[12] <-26
arreglo[13] <-28
arreglo[14] <-30
arreglo[15] <-32
arreglo[16] <-34
arreglo[17] <-36
arreglo[18] <-38
arreglo[19] <-40

longitud<-20
contador<- longitud-1
Mostrar "A continuación se muestra un arreglo que contiene solo 20 números pares entre
el 1 y 100: ";
Mostrar "";
para i <-0 hasta longitud-1 Hacer
Mostrar "Posición [" i "]: " arreglo[i];
FinPara
//se realizará la sumatoria de todos los valores del arreglo
suma<- 0

Para i <-0 hasta longitud-1 Hacer


suma<- suma + arreglo(i)
FinPara

promedio<- suma/longitud

Escribir ("********************************************************");
Escribir ("Se procede a realizar una sumatoria de todos los valores de este arreglo,
arrojando como resultado el valor de: "), suma;
Escribir ("********************************************************");
Escribir "EL promedio de los valores del arreglo, es: " promedio;

// imprimir la posición y el valor del mayor


vmayor <- 0
Para i<-0 Hasta longitud-1 Hacer
Si arreglo[i] > vmayor Entonces
vmayor <- arreglo[i]
pos_mayor<-i //variable que guarda la posición correspondiente al valor
mayor
FinSi
FinPara
Escribir ("********************************************************");
Mostrar 'La posición y valor del número mayor es: '
Mostrar "Posición [" pos_mayor "]: " vmayor;

// imprimir la posición y el valor del menor


vmen <- 100 //Se debe colocar el valor máximo indicado para el arreglo, para así buscar
el valor menor.
Para i<-0 Hasta longitud-1 Hacer
Si arreglo[i] < vmen Entonces
vmen <- arreglo[i]
pos_menor<-i //variable que guarda la posición correspondiente al valor
menor
FinSi
FinPara
Escribir ("********************************************************");
Mostrar 'La posición y valor del número menor es: '
Mostrar "Posición [" pos_menor "]: " vmen;

FinProceso

PHP:

<?php

// arreglo que contiene solo 20 números pares entre el 1 y 100


$arreglo = array();
$arreglo[1] = 2;
$arreglo[2] = 4;
$arreglo[3] = 6;
$arreglo[4] = 8;
$arreglo[5] = 10;
$arreglo[6] = 12;
$arreglo[7] = 14;
$arreglo[8] = 16;
$arreglo[9] = 18;
$arreglo[10] = 20;
$arreglo[11] = 22;
$arreglo[12] = 24;
$arreglo[13] = 26;
$arreglo[14] = 28;
$arreglo[15] = 30;
$arreglo[16] = 32;
$arreglo[17] = 34;
$arreglo[18] = 36;
$arreglo[19] = 38;
$arreglo[20] = 40;
$longi = 20;
$contador = $longitud-1;
echo 'A continuación se muestra un arreglo que contiene solo 20 números pares entre el 1
y 100: ',PHP_EOL;
echo '',PHP_EOL;
for ($i=0;$i<=$longitud-1;$i++) {
echo 'Posición [',$i,']: ',$arreglo[$i+1],PHP_EOL;
}
// se realizará la sumatoria de todos los valores del arreglo
$suma = 0;
for ($i=0;$i<=$longitud-1;$i++) {
$suma = $suma+$arreglo[$i+1];
}
$promedio = $suma/$longitud;
echo ('********************************************************'),PHP_EOL;
echo ('Se procede a realizar una sumatoria de todos los valores de este arreglo, arrojando
como resultado el valor de: '),$suma,PHP_EOL;
echo ('********************************************************'),PHP_EOL;
echo 'EL promedio de los valores del arreglo, es: ',$promedio,PHP_EOL;
// imprimir la posición y el valor del mayor
$vmayor = 0;
for ($i=0;$i<=$longitud-1;$i++) {
if ($arreglo[$i+1]>$vmayor) {
$vmayor = $arreglo[$i+1];
// variable que guarda la posición correspondiente al valor mayor
$pos_mayor = $i;
}
}
echo ('********************************************************'),PHP_EOL;
echo 'La posición y valor del número mayor es: ',PHP_EOL;
echo 'Posición [',$pos_mayor,']: ',$vmayor,PHP_EOL;
// imprimir la posición y el valor del menor
// Se debe colocar el valor máximo indicado para el arreglo, para así buscar el valor
menor.
$vmen = 100;
for ($i=0;$i<=$longitud-1;$i++) {
if ($arreglo[$i+1]<$vmen) {
$vmen = $arreglo[$i+1];
// variable que guarda la posición correspondiente al valor menor
$pos_menor = $i;
}
}
echo ('********************************************************'),PHP_EOL;
echo 'La posición y valor del número menor es: ',PHP_EOL;
echo 'Posición [',$pos_menor,']: ',$vmen,PHP_EOL;
?>
Se tiene un arreglo asociativo (utilizando clave-dato) que contiene solo 10 nombres de estudiantes
y sus calificaciones. Luego, realice un cuadro comparativo donde indique las características del
arreglo de la pregunta 1 y del arreglo asociativo de esta segunda pregunta, enumerando las
diferencias que distinga en cada uno

Pseudocódigo:

Algoritmo tarea
Escribir ("********************************************************");
Mostrar ""
Mostrar "Ejercicio 2"
Mostrar "";

// arreglo que contiene solo 10 nombres de estudiantes y sus calificaciones


Dimensión calificaciones[10];
calificaciones['Pedro'] <-5.5
calificaciones['Juan'] <-4.3
calificaciones['Diego'] <-3.0
calificaciones['Hugo'] <-6.1
calificaciones['Paco'] <-5.6
calificaciones['Luis'] <-7.0
calificaciones['Andres'] <-6.4
calificaciones['Manuel'] <-6.9
calificaciones['Carolina'] <-4.1
calificaciones['Francisca'] <-4.0

longitud2<-10
contador2<- longitud2-1

Mostrar "A continuación se muestra un arreglo que contiene las calificaciones de 10


estudiantes: ";
Mostrar "";

Mostrar "Nombre: Pedro, Calificacion: " calificaciones['Pedro'];


Mostrar "Nombre: Juan, Calificacion: " calificaciones['Juan'];
Mostrar "Nombre: Diego, Calificacion: " calificaciones['Diego'];
Mostrar "Nombre: Hugo, Calificacion: " calificaciones['Hugo'];
Mostrar "Nombre: Paco, Calificacion: " calificaciones['Paco'];
Mostrar "Nombre: Luis, Calificacion: " calificaciones['Luis'];
Mostrar "Nombre: Andres, Calificacion: " calificaciones['Andres'];
Mostrar "Nombre: Manuel, Calificacion: " calificaciones['Manuel'];
Mostrar "Nombre: Carolina, Calificacion: " calificaciones['Carolina'];
Mostrar "Nombre: Francisca, Calificacion: " calificaciones['Francisca'];

//Suma
suma2<-
calificaciones['Pedro']+calificaciones['Juan']+calificaciones['Diego']+calificaciones['Hugo']+calif
icaciones['Paco']+calificaciones['Luis']+calificaciones['Andres']+calificaciones['Manuel']+calific
aciones['Carolina']+calificaciones['Francisca'];
Mostrar "";
Mostrar "La sumatoria de las calificaciones, es: " suma2;

//Promedio
promedio2<-suma2/longitud2
Mostrar "";
Mostrar "El promedio de las calificaciones, es: " promedio2;
Mostrar "";

//Valor mayor
vmayor2<-0
Si calificaciones['Pedro'] > vmayor2 Entonces
vmayor2 <- calificaciones['Pedro']
indice_mayor<-'Pedro' //variable que guarda el índice correspondiente al
valor mayor
FinSi
Si calificaciones['Juan'] > vmayor2 Entonces
vmayor2 <- calificaciones['Juan']
indice_mayor<-'Juan' //variable que guarda el índice correspondiente al valor
mayor
FinSi
Si calificaciones['Diego'] > vmayor2 Entonces
vmayor2 <- calificaciones['Diego']
indice_mayor<-'Diego' //variable que guarda el índice correspondiente al
valor mayor
FinSi
Si calificaciones['Hugo'] > vmayor2 Entonces
vmayor2 <- calificaciones['Hugo']
indice_mayor<-'Hugo'//variable que guarda el índice correspondiente al valor
mayor
FinSi
Si calificaciones['Paco'] > vmayor2 Entonces
vmayor2 <- calificaciones['Paco']
indice_mayor<-'Paco' //variable que guarda el índice correspondiente al valor
mayor
FinSi
Si calificaciones['Luis'] > vmayor2 Entonces
vmayor2 <- calificaciones['Luis']
indice_mayor<-'Luis' //variable que guarda el índice correspondiente al valor
mayor
FinSi
Si calificaciones['Andres'] > vmayor2 Entonces
vmayor2 <- calificaciones['Andres']
indice_mayor<-'Andres' //variable que guarda el índice correspondiente al
valor mayor
FinSi
Si calificaciones['Manuel'] > vmayor2 Entonces
vmayor2 <- calificaciones['Manuel']
indice_mayor<-'Manuel' //variable que guarda el índice correspondiente al
valor mayor
FinSi
Si calificaciones['Carolina'] > vmayor2 Entonces
vmayor2 <- calificaciones['Carolina']
indice_mayor<-'Carolina' //variable que guarda el índice correspondiente al
valor mayor
FinSi
Si calificaciones['Francisca'] > vmayor2 Entonces
vmayor2 <- calificaciones['Francisca']
indice_mayor<-'Francisca' //variable que guarda el índice correspondiente al
valor mayor
FinSi

Mostrar 'El alumno con la calificacion mayor, es: ' indice_mayor;


Mostrar "Su nota, es: " vmayor2;
Mostrar "";

//Valor menor
vmen2<-7
Si calificaciones['Pedro'] < vmen2 Entonces
vmen2 <- calificaciones['Pedro']
indice_menor<-'Pedro' //variable que guarda el índice correspondiente al
valor menor
FinSi
Si calificaciones['Juan'] < vmen2 Entonces
vmen2 <- calificaciones['Juan']
indice_menor<-'Juan'
FinSi
Si calificaciones['Diego'] < vmen2 Entonces
vmen2 <- calificaciones['Diego']
indice_menor<-'Diego'
FinSi
Si calificaciones['Hugo'] < vmen2 Entonces
vmen2 <- calificaciones['Hugo']
indice_menor<-'Hugo'
FinSi
Si calificaciones['Paco'] < vmen2 Entonces
vmen2 <- calificaciones['Paco']
indice_menor<-'Paco'
FinSi
Si calificaciones['Luis'] < vmen2 Entonces
vmen2 <- calificaciones['Luis']
indice_menor<-'Luis'
FinSi
Si calificaciones['Andres'] < vmen2 Entonces
vmen2 <- calificaciones['Andres']
indice_menor<-'Andres'
FinSi
Si calificaciones['Manuel'] < vmen2 Entonces
vmen2 <- calificaciones['Manuel']
indice_menor<-'Manuel'
FinSi
Si calificaciones['Carolina'] < vmen2 Entonces
vmen2 <- calificaciones['Carolina']
indice_menor<-'Carolina'
FinSi
Si calificaciones['Francisca'] < vmen2 Entonces
vmen2 <- calificaciones['Francisca']
indice_menor<-'Francisca'
FinSi

Mostrar 'El alumno con la calificacion menor, es: ' indice_menor;


Mostrar "Su nota, es: " vmen2;
Mostrar "";
FinAlgoritmo
Cuadro Comparativo entre un Arreglo Común y un Arreglo Asociativo

Arreglo 1:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
2 4 6 8 10 12 14 16 18 20 22 24 26 28 30 32 34 36 38 40

Arreglo 2:
Pedro Juan Diego Hugo Paco Luis Andres Manuel Carolina Francisca
5 4 3 6 5 7 6 6 7 2

Cuadro Comparativo:
Arreglo Común Arreglo Asociativo (clave-dato)
Para ubicar un dato, es necesario conocer la Para ubicar un dato, es necesario conocer la
posición en la que fue almacenado. clave con la que fue almacenado.
Puede ser recorrido fácilmente, en forma No puede ser recorrido en forma
automática. automática.
Facilidad para realizar operaciones entre los Dificultad para realizar operaciones entre
valores contenidos en el arreglo. los valores contenidos en el arreglo.
En pseudocódigo, el arreglo no acepta una En pseudocódigo, el arreglo si acepta una
cantidad de elementos, mayor a la cantidad de elementos, mayor a la
dimensión declarada. dimensión declarada.
Bibliografía

 https://codigofacilito.com/cursos/PHP

 Contenidos semana 2, Estructuras de Datos, IACC 2018

También podría gustarte