Estructuras selectivas
Simple, doble y múltiple.
La especificación formal de algoritmos
tiene realmente utilidad cuando el algoritmo requiere una descripción
más complicada que una lista sencilla de instrucciones.
Este es el caso
cuando existen un número de posibles alternativas resultantes de la
evaluación de una determinada condición.
Estas estructuras se identifican porque en la fase de solución del problema existe algún punto en el cual es necesario establecer una pregunta, para decidir si ciertas acciones d eben realizarse o no.
Las condiciones se especifican usando expresiones lógicas. La representación de una estructura selectiva se hace con palabras en pseudocódigo (if - then - else o en español si - entonces - sino) y en flujograma con una figura geométrica en forma de rombo.
Estas estructuras se identifican porque en la fase de solución del problema existe algún punto en el cual es necesario establecer una pregunta, para decidir si ciertas acciones d eben realizarse o no.
Las condiciones se especifican usando expresiones lógicas. La representación de una estructura selectiva se hace con palabras en pseudocódigo (if - then - else o en español si - entonces - sino) y en flujograma con una figura geométrica en forma de rombo.
ESTRUCTURAS SELECTIVAS SIMPLES.
Se
identifican porque están compuestos únicamente de una condición. La
estructura si - entonces evalúa la condición y en tal caso:
Si la condición es verdadera, entonces ejecuta la acción Si (o acciones si son varias).
Si la condición es falsa, entonces no se hace nada.
Si la condición es verdadera, entonces ejecuta la acción Si (o acciones si son varias).
Si la condición es falsa, entonces no se hace nada.
Inglés
If <condición>
then<acción Si>
endif
Ejemplo 1.
Construir un algoritmo tal, que dado como dato la calificación de un alumno en un examen, escriba "Aprobado" en caso que esa calificación fuese mayor que 8.
Construir un algoritmo tal, que dado como dato la calificación de un alumno en un examen, escriba "Aprobado" en caso que esa calificación fuese mayor que 8.
Salidas: mensaje de aprobado si se cumple la condición.
En Pseudocódigo, seria así :
Entradas: calificación
Datos adicionales: un alumno aprueba si la calificación es mayor que 8
Variables:
Cal = calificación
Algoritmo:
Inicio
Leer (cal)
Si cal > 8 entonces
Escribir ("aprobado")
Fin_si
Fin
Datos adicionales: un alumno aprueba si la calificación es mayor que 8
Variables:
Cal = calificación
Algoritmo:
Inicio
Leer (cal)
Si cal > 8 entonces
Escribir ("aprobado")
Fin_si
Fin
Algoritmo:
Determinar a partir de la calificación dada (entero entre 0 y 10) si un alumno es APROBADO o
REPROBADO
Listado de puntos clave del problema
Datos
Condiciones
Listado de lo que se sabe
Con calificación menor a 6 el alumno reprueba
Estructuras selectivas
Listado de lo que no se sabe
Reporte
Solicitar calificación
Comparar calificación
Mostrar si es A o R
Propuesta de solución
Pedir la calificación al usuario, si es menor a 6 el alumno está reprobado, de lo contrario el alumno aprobó. Imprimir resultado
REPROBADO
Listado de puntos clave del problema
Datos
Condiciones
Listado de lo que se sabe
Con calificación menor a 6 el alumno reprueba
Estructuras selectivas
Listado de lo que no se sabe
Reporte
Solicitar calificación
Comparar calificación
Mostrar si es A o R
Propuesta de solución
Pedir la calificación al usuario, si es menor a 6 el alumno está reprobado, de lo contrario el alumno aprobó. Imprimir resultado
Diagrama de Flujo:
Programado en C
#include<stdio.h>
int main ()
{
setvbuf(stdout, NULL, _IONBF, 0);
printf("Programa para Conocer si un alumno tiene calificación aprobatoria o reprobatoria\n");
float calif;
printf("Introduzca la calificación del alumno\n");
scanf("%f", &calif);
if(calif<0)
{
printf("Error en la calificación\n");
}
else
{
if (calif<6)
{
printf("Alumno reprobado");
}
else
{
if (calif<=10)
{
printf("Alumno aprobado");
}
else
{
printf("Calificación no válida");
}
}
}
return 0;
}
int main ()
{
setvbuf(stdout, NULL, _IONBF, 0);
printf("Programa para Conocer si un alumno tiene calificación aprobatoria o reprobatoria\n");
float calif;
printf("Introduzca la calificación del alumno\n");
scanf("%f", &calif);
if(calif<0)
{
printf("Error en la calificación\n");
}
else
{
if (calif<6)
{
printf("Alumno reprobado");
}
else
{
if (calif<=10)
{
printf("Alumno aprobado");
}
else
{
printf("Calificación no válida");
}
}
}
return 0;
}
Esta toma de decisión (expresada con un rombo) se basa en la evaluación
de una o más condiciones que nos señalarán como alternativa o
consecuencia, la rama a seguir.
0 comentarios:
Publicar un comentario