Actividad 2 - Toma de Decisiones y Ciclos

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 20

Fundación Universitaria Unipanamericana

Facultad de Ingeniería

Programa – Técnica profesional en operación y mantenimiento de bases de datos

Materia Algoritmos

Actividad 2 – Toma de decisiones y ciclos

Docente:

Sonia Marcela Moreno Gracia

Integrantes:

Luis Fernando Velásquez Vallejo

Juan Camilo Herran Murillo

John Freddy Riveros Lesmes

Bogotá

2020
Tabla de Contenido
PRIMERA PARTE CONTEXTUALIZACIÓN: ........................................................................... 3
1. Explique el termino de ciclo y cita un ejemplo de la cotidianidad. ................................... 3
2. Explique el termino de toma de decisión y cita un ejemplo de la cotidianidad. .............. 3
3. Hacer un cuadro comparativo, donde se explique y de un ejemplo sencillo .................... 6
4. Escribe y explicada cada línea, de la sintaxis del ciclo Para en Pseint. ............................ 8
5. Escribe y explica cada línea, de la sintaxis de clico Mientras en Pseint. .......................... 9
SEGUNDA PARTE PRACTICA: ................................................................................................. 10
1. Ferretería ............................................................................................................................. 10
2. 22 estudiantes. ...................................................................................................................... 12
3. Notas 1 corte Unipanamericana ......................................................................................... 14
Parte B .......................................................................................................................................... 18
Ejemplo 1 ..................................................................................................................................... 18
Ejemplo 2 ..................................................................................................................................... 18
Referencias: ..................................................................................................................................... 20
PRIMERA PARTE CONTEXTUALIZACIÓN:
1. Explique el termino de ciclo y cita un ejemplo de la cotidianidad.

Los ciclos o bucles de programación (también denominados estructuras de control


interactivas o repetitivas) son sentencias que se utilizan para ejecutar una o varias
instrucciones de forma repetitiva cuando sea necesario.
Los ciclos o bucles permiten ejecutar repetidas veces una instrucción o un bloque de ellas;
deben estar construidos de manera tal que se pueda tener control de la cantidad de
repeticiones a realizar, de lo contrario se generaría un ciclo de ejecución infinita que podría
desencadenar un desborde de memoria y en consecuencia un fallo de la aplicación, o un
bloqueo de la misma porque el flujo de ejecución quedaría estancado en el ciclo,
sobrecargando de tareas al procesador de la máquina que ejecuta el programa.

Ciclo Mientras: Al ejecutarse esta instrucción, la condición es evaluada. Si la condición


resulta verdadera, se ejecuta una vez la secuencia de instrucciones que forman el cuerpo del
ciclo. Al finalizar la ejecución del cuerpo del ciclo se vuelve a evaluar la condición y, si es
verdadera, la ejecución se repite. Estos pasos se repiten mientras la condición sea verdadera.
Ejemplo:

Ciclo Para: La instrucción Para ejecuta una secuencia de instrucciones un número


determinado de veces.
Ejemplo:

2. Explique el termino de toma de decisión y cita un ejemplo de la cotidianidad.


Decisiones: El termino toma de decisiones o también llamadas de control de flujo son
estructuras de control que realizan una pregunta la cual retorna verdadero o falso (evalúa una
condición) y selecciona la siguiente instrucción a ejecutar dependiendo la respuesta o
resultado.
En algún momento dentro de nuestros algoritmos, es preciso cambiar el flujo de ejecución de
las instrucciones, es decir, el orden en que las instrucciones son ejecutadas. Muchas de las
veces tenemos que tomar una decisión en cuanto a que se debe ejecutar basándonos en una
respuesta de verdadero o falso (condición).
La ejecución de las instrucciones incluyendo una estructura de control como el condicional
funcionan de esta manera:
Las instrucciones comienzan a ejecutarse de forma secuencial (en orden) y cuando se llega a
una estructura condicional, la cual está asociada a una condición, se decide qué camino tomar
dependiendo siempre del resultado de la condición siendo esta falsa o verdadera.
Cuando se termina de ejecutar este bloque de instrucciones se reanuda la ejecución en la
instrucción siguiente a la de la condicional.
Los tipos de estructuras de decisión que podemos encontrar son:
● Simples: La condición se evalúa y si el resultado es “cierto” entonces el conjunto de
instrucciones encerrado entre las llaves se ejecuta. Si el resultado de la evaluación de la
condición es “falso”, entonces no se ejecutan el bloque de instrucciones.
Ejemplo:
Si (hora < 12)
escribir “Buenos Días”
fin si
En lenguaje C
if (hora < 12) {
printf (“Buenos Días\n”);
}
● Doble: Las estructuras de decisión doble permiten ejecutar dos conjuntos de sentencias
alternativos en función del resultado de la evaluación de una condición lógica. Si el
resultado es “cierto” se ejecuta un grupo de sentencias. Si el resultado es “falso “se ejecuta
otro grupo de sentencias.
Ejemplo:
if (Edad < 18 ){
printf(“Necesita autorizacion\n”);
}
else {
if (Edad > 30){ printf(“No aplica\n”);
}
else{
printf(“Puede continuar\n”);
}
}
● Anidadas: Colocar una estructura de decisión dentro de otra. A esto se le denomina
anidación.
Ejemplo:
Si (condición1) entonces
Si (condición2) entonces
sentencias
fin si
Sentencias
fin si
Notación en código C
if (decisión1) {
if (desición2) {
sentencias
}
sentencias
}
3. Hacer un cuadro comparativo, donde se explique y de un ejemplo sencillo
diseñado por usted aplicando las estructuras (if, else, switch – Case, while, for,
do while)

If, else, switch Case, while, for, do While


IF-si (Tomar decisiones) Case
Se usa cuando queremos ejecutar un Switch Case o switch statement,
fragmento de código en función de los declaración de cambiador o declaración de
valores de unas variables. (Usando los interruptor, es un tipo de mecanismo de
operadores de comparación en la condición) control de selección utilizado para permitir
que el valor de una variable o expresión
Ejemplo: cambie el flujo de control de la ejecución
del programa mediante búsqueda
if (condición)
{ Ejemplo:
código de programa en caso de que se switch (expresión)
cumpla la condición {
} case etiqueta:
sentencia;
break;
case etiqueta2:
sentencia;
break;

default: sentencia;
}
If Else-si no While
permite tomar cierta decisión al interior de Se ejecuta sucesivamente si se sigue
nuestro algoritmo, es decir, nos permiten cumpliendo la condición.
determinar qué acciones tomar dada o no
cierta condición.

Ejemplo: Ejemplo:

if (condición) { while (condición)


código del programa con la condición {
verdadera instrucciones a ejecutar con el bucle
} }
else {
código del programa cuando la condición
no se cumpla.
}
Switch-según sea do-while (Instrucción hacer – repetir
Se utiliza para agilizar la toma de mientras)
decisiones múltiples, trabaja de la misma es un tipo de estructura repetitiva eficiente.
manera que lo harían sucesivos if, if else o Lo que lo diferencia con el while es que en
until anidados. la estructura do-while la condición se
evalúa al finalizar el ciclo, esto hace que
Ejemplo: las instrucciones se ejecuten cuando menos
una vez.
switch (expresión) do {
{ código a ejecutar; para hacer en primera
case etiqueta: instancia
. sentencia; }
break; while (condición)
case etiqueta2: código a ejecutar;
sentencia;
break; ejemplo:

default: sentencia; Algoritmo ejemplo_Do_While


}
definir contador como entero;
Contador <- 1;
Mientras (Contador <= 200) Hacer
Escribir (Contador);
Contador <- Contador + 2;
Fin mientras
FinAlgoritmo

for
Un for en programación se usa cuando
queremos repetir un conjunto de
instrucciones un número finito de veces.
for valor inicial; condición; actualización)
{
instrucciones a ejecutar en el bucle
}

Ejemplo:

Algoritmo ciclo_For

Definir contador, suma Como


Entero;
suma<-0;
Para contador=1 Hasta 20
Con Paso 1 Hacer;
suma <- suma +
contador;

Fin Para

Escribir"La suma es: ", +


suma;

4. Escribe y explicada cada línea, de la sintaxis del ciclo Para en Pseint.


I. Utilizamos la variable i, esta la inicializamos para guarde el valor iniciado
en 0 hasta 10, indicándole que vaya incrementando de uno en uno.
II. Luego mostramos en pantalla la variable i , 10 veces
III. Fin del programa

5. Escribe y explica cada línea, de la sintaxis de clico Mientras en Pseint.

I. Definimos la variable a inicializándola en 0.


II. Creamos el bucle Mientras indicando que mientras que el valor de la
variable a sea igual menor o igual que 10 entre al bucle y le pedimos que
ejecute las siguientes instrucciones.
III. Mostramos en pantalla una cadena de texto que dice “Números pares ”, y el
valor que en ese momento tiene a.
IV. En cada iteración ir aumentando el valor de a en 2, con el fin de terminar el
ciclo cuando alance el valor de 10.
V. Fin del programa

SEGUNDA PARTE PRACTICA:

1. Ferretería
Don pedro en su ferretería realiza la siguiente oferta por la compra de más de
$110.000 pesos (mínimo 4 productos) realiza un descuento de 3%. Si la compra
corresponde a un valor menos no aplica descuento. Se requiere realizar un algoritmo
de la factura que lleve mínimo 4 productos de ferretería y aplicar los respectivos
descuentos de la oferta.

Logaritmo:

Proceso Ferretería
Definir compras, descuentos, totalapagar como real;
Definir productos Como Entero;
Definir valmenora4, valmayora4 Como Real;

Escribir "Total de productos a facturar: ";


Leer productos;

Escribir "Total de compra a facturar: ";


Leer compras;

descuentos<- compras*0.03;
totalapagar<-compras-descuentos;

si productos >= 4 y compras >= 110000 entonces


Escribir "Total a pagar precio estandar: $", compras;
Escribir "Descuento: $", descuentos;
Escribir "Total a pagar con descuento: $", totalapagar;
SiNo
Escribir "Total a pagar, sin derecho a descuento: $", compras;
FinSi

FinProceso
2. 22 estudiantes.
La fundación San José requiere un algoritmo para calcular la nota definitiva de los
estudiantes de decimo semestre de sistemas del corte 1 (22 estudiantes), las notas
relacionadas durante el semestre son. Apoyo a la presencialidad 35%, trabajo en clase 35%,
primer parcial 20%, producto entregable 10%.

Algoritmo Promedio22Alumnos
// Definir Variables
Definir nombre Como Caracter;
Definir notas,i,k Como Entero;
Definir promedio, prom Como Real;
Definir nota_1,nota_2,nota_3,nota_4 Como Real;
// Inicializar variables
nombre<-" ";
// Calcular notas 22 alumnos
Para i<-1 Hasta 22 Hacer
Escribir "Ingrese el nombre del alumno ",i;
Leer nombre;
Escribir "ingrese la nota 1 ";
Leer nota_1;
si nota_1<0 o nota_1>5 Entonces
Escribir "Error, la nota no puese ser mayor de 5 ni menor que
0, Ingrese nuevamente ";
Leer nota_1;
Mientras nota_1<0 o nota_1>5 Hacer
Escribir "Error, la nota no puese ser mayor de 5 ni
menor que 0, Ingrese nuevamente ";
Leer nota_1;
FinMientras
FinSi
Escribir "ingrese la nota 2 ";
Leer nota_2;
si nota_2<0 o nota_2>5 Entonces
Escribir "Error, la nota no puese ser mayor de 5 ni menor que
0, Ingrese nuevamente ";
Leer nota_2;
Mientras nota_2<0 o nota_2>5 Hacer
Escribir "Error, la nota no puese ser mayor de 5 ni
menor que 0, Ingrese nuevamente ";
Leer nota_2;
FinMientras
FinSi
Escribir "ingrese la nota 3 ";
Leer nota_3;
si nota_3<0 o nota_3>5 Entonces
Escribir "Error, la nota no puese ser mayor de 5 ni menor que
0, Ingrese nuevamente ";
Leer nota_3;
Mientras nota_3<0 o nota_3>5 Hacer
Escribir "Error, la nota no puese ser mayor de 5 ni
menor que 0, Ingrese nuevamente ";
Leer nota_3;
FinMientras
FinSi
Escribir "ingrese la nota 4 ";
Leer nota_4;
si nota_4<0 o nota_4>5 Entonces
Escribir "Error, la nota no puese ser mayor de 5 ni menor que
0, Ingrese nuevamente ";
Leer nota_4;
Mientras nota_4<0 o nota_4>5 Hacer
Escribir "Error, la nota no puese ser mayor de 5 ni
menor que 0, Ingrese nuevamente ";
Leer nota_4;
FinMientras
FinSi

prom<-nota_1 * 0.35 + nota_2 * 0.35 + nota_3 * 0.20 + nota_4 *


0.10;
promedio<-prom;

Escribir "El nombre del alumno es ", nombre;


Escribir "El promedio de las notas es ", promedio;
Escribir "La cantidad de Alumunos ingresados es ",i;
Fin Para

FinAlgoritmo
3. Notas 1 corte Unipanamericana
Calcula la nota definida del primer corte de un estudiante de la facultad de
ingeniería, de la Unipanamericana ten encuentra los porcentajes nota_1 (20%),
nota_2(30%), nota_3 (35%), nota_3 (10%), nota_4(5%), imprimir la nota definitiva.

Algoritmo calcula_las_Notas_estudiantes
Definir nombre Como Caracter;
Definir prom Como Real;
Definir nota_1,nota_2,nota_3,nota_4, nota_5, promedio Como Real;
Definir continuar Como Entero;

continuar<-0;

Mientras continuar=0 Hacer


Escribir "Ingrese el nombre del alumno ";
Leer nombre;
Escribir "ingrese la nota 1 ";
Leer nota_1;
si nota_1<0 o nota_1>5 Entonces
Escribir "Error, la nota no puese ser mayor de 5 ni menor que
0, Ingrese nuevamente ";
Leer nota_1;
Mientras nota_1<0 o nota_1>5 Hacer
Escribir "Error, la nota no puese ser mayor de 5 ni
menor que 0, Ingrese nuevamente ";
Leer nota_1;
FinMientras
FinSi
Escribir "ingrese la nota 2 ";
Leer nota_2;
si nota_2<0 o nota_2>5 Entonces
Escribir "Error, la nota no puese ser mayor de 5 ni menor que
0, Ingrese nuevamente ";
Leer nota_2;
Mientras nota_2<0 o nota_2>5 Hacer
Escribir "Error, la nota no puese ser mayor de 5 ni
menor que 0, Ingrese nuevamente ";
Leer nota_2;
FinMientras
FinSi
Escribir "ingrese la nota 3 ";
Leer nota_3;
si nota_3<0 o nota_3>5 Entonces
Escribir "Error, la nota no puese ser mayor de 5 ni menor que
0, Ingrese nuevamente ";
Leer nota_3;
Mientras nota_3<0 o nota_3>5 Hacer
Escribir "Error, la nota no puese ser mayor de 5 ni
menor que 0, Ingrese nuevamente ";
Leer nota_3;
FinMientras
FinSi
Escribir "ingrese la nota 4 ";
Leer nota_4;
si nota_4<0 o nota_4>5 Entonces
Escribir "Error, la nota no puese ser mayor de 5 ni menor que
0, Ingrese nuevamente ";
Leer nota_4;
Mientras nota_4<0 o nota_4>5 Hacer
Escribir "Error, la nota no puese ser mayor de 5 ni
menor que 0, Ingrese nuevamente ";
Leer nota_4;
FinMientras
FinSi
Escribir "ingrese la nota 5 ";
Leer nota_5;
si nota_5<0 o nota_5>5 Entonces
Escribir "Error, la nota no puese ser mayor de 5 ni menor que
0, Ingrese nuevamente ";
Leer nota_5;
Mientras nota_5<0 o nota_5>5 Hacer
Escribir "Error, la nota no puese ser mayor de 5 ni
menor que 0, Ingrese nuevamente ";
Leer nota_5;
FinMientras
FinSi
prom<-nota_1 * 0.20 + nota_2 * 0.30 + nota_3 * 0.35 + nota_4 *
0.10 + nota_5 * 0.05;
promedio<-prom;
Escribir "El nombre del alumno es ", nombre;
Escribir "El promedio de las notas es ", promedio;
Escribir "Desea continuar si=0, No=1";
Leer continuar;

FinMientras

FinAlgoritmo
Parte B: Esta parte de la actividad se desarrolla: Revisa el siguiente Algoritmo
pásalo a Pseint, ejecuta las líneas y describe el proceso mediante un texto.

Ejemplo 1

• Se declaran las variables lim, i, j como entero y letras, pivote como carácter.
• Se le da una dimensión de 100 caracteres a la variable letras esto quiere decir
que a la
variable letras se le puede digitar una cantidad máxima de 100 caracteres.
• Después se pide la entrada de datos y se guarda en la variable lim que empieza a
contar desde cero.
• Se implementa el ciclo repetir hasta que donde lee y guarda cada uno de los
caracteres en el contador lim.
• Se implementa el final del ciclo de Repetir, Hasta Que para saber cuándo el
contador debe dejar de guardar los caracteres.
• Para la variable i que se inicializa desde 0 hasta lim-1 que es cuando deja de
guardar los caracteres con paso en 1 quiere decir que se va de uno en el contador
j.
• Después se agrega otro ciclo este ciclo es si entonces que se utiliza Para decir
que si letras i son menores que letras j Entonces va a tomar las letras i y las va a
guardar
• En pivote va a tomar cuentas letras j y la va a guardar letras i, va a tomar el
valor de pivote y la va a a guardar en j hay se termina el ciclo ya después se crea
otro ciclo Para imprimir todos los caracteres ingresados de uno en uno.

Ejemplo 2

a) Primero se declaran las variables num, invertido, digito como real, esto nos
quiere decir que se van a utilizar números con cifras decimales.
b) Se crea el bucle repetir.
c) Mandamos a la pantalla del programa un aviso “Digite un numero a invertir”.
d) Se ingresa datos y se guardan en la variable num.
e) El programa entra en el bucle repetir que nos condiciona, diciendo que, si el
número que digitamos por teclado es menor que 9, nos mostrara de nuevo en
pantalla nuestro aviso “Digite un numero a invertir”.
f) Entramos a la variable invertido y la inicializamos en 0
g) Entramos al ciclo While o Mientras el cual ejecuta una secuencia de
instrucciones mientras una condición sea verdadera.
h) Esta entra a la variable invertido y la vuelve 0 luego la multiplica por 10
i) Luego entra en la variable digito toma el dato de la variable num y le saca el
residuo de la división entre 10
j) Luego entra a la variable invertido toma el dato de invertio luego que se
multiplica por 10 y le suma el resultado de la variable digito.
k) Luego lee la variable num le resta el valor de la variable digito.
l) Por último, la variable num toma el resulta de la resta y lo divide en 10.
m) Este ciclo se repite ya que la variable num quedo en 0
n) Luego que se repite el ciclo ya finaliza ya que la variable num toma un
numero diferente a 0
o) Luego nos muestra en pantalla un texto “Resultado: ”, e imprimimos la
variable invertido.
p) Fin del programa
Referencias:
- Escuela de sistemas – Facultad de ingeniería – (Gilberto Diaz):
https://informatica2011ulagos.files.wordpress.com/2011/03/08_estructurasdedecisio
n.pdf
- Decisiones y Ciclos (PseInt):
https://sites.google.com/site/portafolioprogra2016/decisiones-pseint
- BDW Badwin Arévalo Vera. (mayo 25/2017). ciclos o bucles- nociones de
programación. Lugar de publicación https://www.bdwtown.com/blog/ciclos-o-
bucles-nociones-de programacion_11.html

También podría gustarte