Este documento contiene tres ejemplos de algoritmos en pseudocódigo. El primero describe cómo almacenar números en una matriz de 3x3. El segundo ordena una lista de nombres alfabéticamente almacenados en un arreglo. El tercero encuentra los dos mayores valores en una lista de datos.
Presentación guía sencilla en Microsoft Excel.pptx
Ordena y muestra lista de nombres alfabeticamente con arreglos en pseudocódigo
1. Matriz de 3 filas x 3 columnas. Se debe alimentar la matriz con 9 números
ingresados porteclado.
y terminamos en 3
2. Este ejemplo almacena una lista de nombres en un arreglo y luego los ordena
2. alfabéticamente. El método de ordenamiento es relativamente simple. Para la entrada de
datos se utiliza una estructura MIENTRAS, sin saber a priori la cantidad de datos que se
ingresarán. Se ingresa una lista de nombres (la lista termina cuando se ingresa un nombre en
blanco) no permitiendo ingresar repetidos y luego se ordena y muestra
Proceso OrdenaLista
Dimensionlista[200];
Escribir "Ingrese los nombres (enter en blanco para terminar):"; // leer la lista
cant<-0;
Leer nombre;
Mientras nombre<>"" Hacer
cant<-cant+1;
lista[cant]<-nombre;
Repetir // leer un nombre y ver que no este ya en la lista
Leer nombre;
se_repite<-Falso;
Para i<-1 Hasta cant Hacer
Si nombre=lista[i] Entonces
se_repite<-Verdadero;
FinSi
FinPara
Hasta Que NO se_repite
FinMientras// ordenar
Para i<-1 Hasta cant-1 Hacer// busca el menor entre i y cant
pos_menor<-i;
Para j<-i+1 Hasta cant Hacer
Si lista[j]<lista[pos_menor] Entonces
pos_menor<-j;
FinSi
FinPara// intercambia el que estaba en i con el menor que encontró
aux<-lista[i];
lista[i]<-lista[pos_menor];
lista[pos_menor]<-aux;
3. FinPara// mostrar como queda la lista
Escribir "La lista ordenada es:";
Para i<-1 Hasta cant Hacer
Escribir " ",lista[i];
FinPara
FinProceso
3. Busca los dos mayores de una lista de N datos
Proceso Mayores // Busca los dos mayores de una lista de N datos
Dimensiondatos[200];
Escribir "Ingrese la cantidad de datos:";
Leer n;
Para i<-1 Hasta n Hacer
Escribir "Ingrese el dato ",i,":";
Leer datos[i];
FinPara
Si datos[1]>datos[2] Entonces
may1<-datos[1];
may2<-datos[2];
Sino
may1<-datos[2];
may2<-datos[1];
FinSi
Para i<-3 Hasta n Hacer
Si datos[i]>may1 Entonces
may2<-may1;
may1<-datos[i];
Sino
Si datos[i]>may2 Entonces
may2<-datos[i];
FinSi
4. FinSi
FinPara
Escribir "El mayor es: ",may1;
Escribir "El segundo mayor es: ",may2;
FinProceso
PROBLEMAS
1. El dueño de un restaurante entrevista a cinco clientes de su negocio y les pide
que califiquen de 1 a 10 los siguientes aspectos: (1 es pésimo y 10 es excelente
o inmejorable)
Atención de parte de los empleados
Calidad de la comida
Justicia del precio (el precio que pagó le parece justo?)
Ambiente (muebles cómodos?, música adecuada?, iluminación suficiente?,
decoración, etc.)
Escriba un algoritmo que pida las calificaciones de los cinco clientes a cada uno de
estos aspectos, y luego escriba el promedio obtenido en cada uno de ellos. La lista
debe aparecer ordenada del aspecto mejor calificado al peor calificado.
2. En una hacienda hay un hato que se compone de N vacas. Diseñe un algoritmo
que guarde en una matriz de dimensión 7xN la producción de leche diaria (en
litros) de cada una de las vacas, durante una semana. Además, el algoritmo
debe calcular la producción total del hato en cada uno de los siete días, y el
número de la vaca que dio más leche en cada día.