Академический Документы
Профессиональный Документы
Культура Документы
En ciencias de la computacin, y anlisis numrico el pseudocdigo (o falso lenguaje) es una descripcin 1 informal de alto nivel de un algoritmo informtico de programacin, compacto e informal, que utiliza las 2 convenciones estructurales de un lenguaje de programacin verdadero , pero que est diseado para la lectura humana en lugar de la lectura mediante mquina, y con independencia de cualquier otro lenguaje de programacin. Normalmente, el pseudocdigo omite detalles que no son esenciales para la comprensin humana del algoritmo, tales como declaraciones de variables, cdigo especfico del sistema y algunas subrutinas. El lenguaje de programacin se complementa, donde sea conveniente, con descripciones detalladas en lenguaje natural, o con notacin matemtica compacta. Se utiliza pseudocdigo pues este es ms fcil de entender para las personas que el cdigo de lenguaje de programacin convencional, ya que es una descripcin eficiente y con un entorno independiente de los principios fundamentales de un algoritmo. Se utiliza comnmente en los libros de texto y publicaciones cientficas que se documentan varios algoritmos, y tambin en la planificacin del desarrollo de programas informticos, para esbozar la estructura del programa antes de realizar la efectiva codificacin. No existe una sintaxis estndar para el pseudocdigo, aunque los ocho IDE's que manejan pseudocdigo tengan su sintaxis propia. Aunque sea parecido, el pseudocdigo no debe confundirse con los programas esqueleto que incluyen cdigo ficticio, que pueden ser compilados sin errores. Los diagramas de flujo y UML pueden ser considerados como una alternativa grfica al pseudocdigo, aunque sean ms amplios en papel.
El principal objetivo del pseudocdigo es el de representar la solucin a un algoritmo de la forma ms detallada posible, y a su vez lo ms parecida posible al lenguaje que posteriormente se utilizara para la codificacin del mismo. Las principales caractersticas de este lenguaje son:
Se puede ejecutar en un ordenador Es una forma de representacin sencilla de utilizar y de manipular. Facilita el paso del programa al lenguaje de programacin. Es independiente del lenguaje de programacin que se vaya a utilizar. Es un mtodo que facilita la programacin y solucin al algoritmo del programa. Todo documento en pseudocdigo debe permitir la descripcin de:
Instrucciones primitivas Instrucciones de proceso Instrucciones de control Instrucciones compuestas Instrucciones de descripcin Estructura a seguir en su realizacin: Cabecera:
Inicio Instrucciones Fin Para comentar en pseudocdigo se le antepone al comentario dos asteriscos (*) Ejemplos * Programa que calcula el rea de un cuadrado a partir de un lado dado por teclado.
Programa: area_cuadrado Modulo: main **( tambin se puede llamar principal) Variables: lado: natural area: natural Inicio Visualizar "Introduce el lado del cuadrado" Leer lado Area<- lado * lado Visualizar "El rea del cuadrado es", area Fin
* Programa que visualice la tabla de multiplicar del numero introducido por teclado
Programa: Tabla multiplicar Modulo: main Variables: t: entero num : entero Inicio Visualizar "Introduce un nmero" Leer num Desde t=1 hasta t=10 repetir Visualizar num, " X", t, "=", num*t Fin desde Fin
Una vez que tenemos preparado un diagrama de flujos (ordinograma u organigrama) y un pseudocdigo ya podemos comenzar con la codificacin del programa en nuestro ordenador. A partir de aqu todo vara dependiendo del lenguaje de programacin que utilicemos, pero en todos los programas tendremos que definir los tipos de datos que utilizaremos. De todo esto hablar en el siguiente artculo.
1- Ejemplo: Realizar el pseudocdigo de un programa que permita calcular el rea de un rectngulo. Se debe introducir la base y la altura para poder realizar el clculo.. Programa; rea Entorno: BASE, ALTURA, AREA son nmero enteros Algoritmo: escribir Introduzca la base y la altura leer BASE, ALTURA calcular AREA = BASE * ALTURA escribir El rea del rectngulo es AREA Finprograma 2- Ejemplo: Realizar el pseudocdigo que permita al usuario introducir por teclado dos notas, calculando la suma y el producto de las notas. Programa: SumaProducto Entorno: NOTA1,NOTA2,SUMA,PRODUCTO son nmeros enteros Algoritmo: escribir Introduzca las notas leer NOTA1,NOTA2 calcular SUMA = NOTA1 + NOTA2 calcular PRODUCTO = NOTA1 * NOTA2 escribir La suma de las dos notas es: SUMA escribir El producto de las dos notas es :PRODUCTO Finprograma
3- Ejemplo: Realizar el pseudocdigo de un programa que permita saber si un nmero es mayor, menor o igual a cero. Programa: ComparaNmeros Entorno: NUMERO es un nmero entero
Algoritmo: Escribir Introduzca un nmero leer NUMERO SI NUMERO>0 ENTONCES escribir El nmero introducido es positivo SI NO SI NUMERO<0 ENTONCES escribir El nmero introducido es negativo SI NO escribir El nmero es cero FINSI FINSI Finprograma
4- Ejemplo: Supongamos un algoritmo que lea las coordenadas de tres puntos y los mueva tres puntos en la coordenada x y escriba el resultado en algn dispositivo de salida: ALGORITMO lee_tres_vertices ENTRADA: las coordenadas (x,y) de tres puntos SALIDA: las coordenadas (x,y) de los tres puntos movidos 3 puntos hacia la derecha. VARIABLES: i:entera x,y: real INICIO PARA i=1 HASTA 3 CON INCREMENTO +1 ESCRIBE "Abscisa del punto nmero ", i LEER x ESCRIBE "Ordenada del punto nmero ", i LEER Y ESCRIBE "El punto es (" x+3","y")" FIN_PARA FIN El programa equivalente a este algoritmo se muestra a continuacin. Como podemos apreciar en un programa en Pascal es importantsimo no olvidar detalles de sintaxis. Por ejemplo cada sentencia termina en punto y coma. De cualquier forma es inmediato apreciar los simples cambios existentes. program lee_tres_vertices; var x,y:real; i:integer; begin for i:=1 to 3 do begin write ('Abscisa del punto nmero ',i); readln(x); write ('Ordenada del punto nmero ',i); readln(y); writeln (' El punto es (',x+3,',',y,')'); end; end; 5- Ejemplo:
Problema: calcular y mostrar la suma de los diez primeros nmeros entre 1 y 1000 que sean divisibles por uno dado.
6- Ejemplo: programa suma_divisibles variables natural : divisor, suma, contador, nmero inicio programa divisor leer Introduce el divisor: suma 0
contador 0 para nmero desde 1 hasta 1000 hacer si divisor divide a nmero entonces suma suma + nmero contador contador + 1 fin si si contador = 10 entonces interrumpir fin si fin para escribir La suma es, suma fin programa 7- Ejemplo: Proceso ejercicio_uno Escribir "digite el limite de los naturales"; leer n; Para i<-1 Hasta n Con Paso 1 Hacer escribir i; FinPara
FinProceso Proceso ejercicio_dos Repetir Escribir "ESCRIBA SU CLAVE DE INGRESO"; Leer c; Si c<>c Entonces Escribir "CLAVE DE INCORRECTA"; FinSi Hasta Que c=12345 Escribir "BIENVENIDO"; FinProceso
8- Ejemplo: Proceso ejercicio_dosA Escribir "FAVOR CREAR SU NUEVA CLAVE DE INGRESO"; Leer nc; Repetir Escribir "ESCRIBA SU CLAVE DE INGRESO"; Leer c; Si c<>nc Entonces Escribir "CLAVE DE INCORRECTA"; FinSi Hasta Que c=nc Escribir "BIENVENIDO";
FinProceso // Crear un programa que genere 15 nmeros aleatorios entre 1 y 10, Proceso Numeros_aleatorios_punto3 contador<-1 Mientras contador<16 Hacer Escribir azar(10)," ","Numero: ", contador; contador<-contador+1 FinMientras
FinProceso
--------------------------------------------------------------------------------------------------------
9- Ejemplo: //4. Crear un programa que genere 20 nmeros aleatorios entre 1 y //un numero ledo por teclado, mostrarlos por pantalla, //Marco Jaramillo Proceso punto_4
Escribir "DIGITE EL LIMITE DE NUMEROS ALEATORIOS"; Leer L; contador<-1 Mientras contador<=L Hacer
Escribir "_____________________"; Escribir "NUMERO DE ORDEN:", " ", contador; Escribir azar(L); contador<-contador+1 FinMientras
Escribir "INGRESE VALOR INICIAL"; Leer i; Escribir "INGRESE VALOR FINAL"; Leer f;
contador<-i
Escribir "_____________________"; Escribir "NUMERO DE ORDEN:", " ", contador; Escribir azar (i+f); contador<-contador+1 FinMientras
FinProceso
//Disee un algoritmo que genere nmeros aleatorios en el intervalo de 100 a 900 //hasta obtener un numero par que cumpla con ser menor que 300 o mayor que 700. //muestre los nmeros generados, la suma de todos los nmeros generados, //el mayor numero generado y el menor numero generado. Use la estructura repetitiva mientras. //Marco Jaramillo Proceso punto_7 sumador<-0 Repetir p<-azar(800)+100; sumador<-sumador+p Escribir "ALEATORIO: ",p; Hasta Que (p mod 2 =0) & (p<300 o p>700) n<-p Escribir " "; Escribir "EL NUMERO ALEATORIO GENERADO, PAR MENOR QUE 300 O MAYOR QUE 700 ES: ", n; Escribir " "; Escribir "LA SUMA DE LOS NUMEROS GENERADOS ES: ", sumador; FinProceso //Hacer un programa que lea los resultados de los partidos de un equipo de futbol //ante sus adversarios y diga cuanto puntaje acumul, cuantos goles a favor tiene y //cuantos goles en contra tiene: //MARCO JARAMILLO Proceso PUNTO_8 salir<-1 golesfavor<-0 golescontra<-0 puntos<-0 puntosvisitante<-0 puntoslocal<-0 partidosjugados<-0 Mientras salir = 1 hacer Escribir "DESEA REGISTRAR UN PARTIDO (DIGITE 1 PARA SI U OTRO PARA SALIR)"; Leer salir Si salir = 1 entonces Escribir "______________________________________________________________ "; 11- Ejemplo:
Escribir " "; Escribir "INGRESE RESULTADO DEL PARTIDO GOLES DEL LOCAL:"; Leer local; Escribir "INGRESE RESULTADO DEL PARTIDO GOLES DEL VISITANTE:"; Leer visitante; Si local = visitante entonces Escribir "EMPATE"; puntoslocal<-puntoslocal+1 puntosvisitante<-puntosvisitante+1 FinSi Si local > visitante entonces Escribir "GANADOR LOCAL: ", local, " GOLES"; puntoslocal<-puntoslocal+3 Escribir "PUNTOS LOCAL: ", puntoslocal; FinSi Si local < visitante entonces Escribir "GANADOR VISITANTE: ", visitante, " GOLES"; puntosvisitante<-puntosvisitante+3 Escribir "PUNTOS VISITANTE: ", puntosvisitante; FinSi golesfavor<-golesfavor+local golescontra<-golescontra+visitante puntosvisitante<-puntosvisitante+puntos puntoslocal<-puntoslocal+puntos partidosjugados<-partidosjugados+1 Finsi FinMientras Escribir "GOLES LOCAL: ", golesfavor; Escribir "GOLES VISITANTE: ", golescontra; Escribir "PUNTOS LOCAL: ", puntoslocal; Escribir "PUNTOS VISITANTE: ", puntosvisitante; Escribir "PARTIDOS JUGADOS: ", partidosjugados; FinProceso 1.-Hacer un pseudocodigo que imprima los numeros del 1 al 100.
--------------------------------------------------------------------------
2.-Hacer un pseudocodigo que imprima los numeros del 100 al 0, en orden decreciente.
PROGRAMA contador2 ENTORNO: c <- 100 ALGORITMO: Borrar_pantalla( ) MIENTRAS c <= 0 HACER ESCRIBIR c c <- c - 1 FINMIENTRAS FINPROGRAMA
--------------------------------------------------------------------------
--------------------------------------------------------------------------
PROGRAMA suma ENTORNO: c <- 1 suma <- 0 ALGORITMO: Borrar_pantalla( ) MIENTRAS c <= 100 HACER suma <- suma + c c <- c + 1 FINMIENTRAS ESCRIBIR "La suma de los 100 primeros nmeros es: "
--------------------------------------------------------------------------
5.-Hacer un pseudocdigo que imprima los numeros impares hasta el 100 y que imprima cuantos impares hay.
PROGRAMA impares ENTORNO: c <- 1 son <- 0 ALGORITMO: Borrar_pantalla( ) MIENTRAS c < 100 ESCRIBIR c c <- c + 2 son <- son + 1 FINMIENTRAS ESCRIBIR "El nmero de impares: " ESCRIBIR son FINPROGRAMA
Diagrama de flujo
Diagrama de flujo sencillo con los pasos a seguir si una lmpara no funciona.
El diagrama de flujo o diagrama de actividades es la representacin grfica del algoritmo o proceso. Se utiliza en disciplinas como programacin, economa, procesos industriales y psicologa cognitiva. En Lenguaje Unificado de Modelado (UML), un diagrama de actividades representa los flujos de trabajo paso a paso de negocio y operacionales de los componentes en un sistema. Un diagrama de actividades muestra el flujo de control general. En SysML el diagrama de actividades ha sido extendido para indicar flujos entre pasos que mueven elementos fsicos (e.g., gasolina) o energa (e.g., presin). Los cambios adicionales permiten al diagrama soportar mejor flujos de comportamiento y datos continuos. Estos diagramas utilizan smbolos con significados definidos que representan los pasos del algoritmo, y representan el flujo de ejecucin mediante flechas que conectan los puntos de inicio y de fin de proceso.
En UML 1.x, un diagrama de actividades es una variacin del diagrama de estado UML donde los "estados" representan operaciones, y las transiciones representan las actividades que ocurren cuando la operacin es completa. El diagrama de mensajes del facebook UML 2.0, mientras que es similar en aspecto al diagrama de actividades UML 1.x, ahora tiene semnticas basadas en redes de Petri. En UML 2.0, el diagrama general de interaccin est basado en el diagrama de actividades. El diagrama de actividad es una forma especial de diagrama de estado usado para modelar una secuencia de acciones y condiciones tomadas dentro de un proceso. La especificacin del Lenguaje de Modelado Unificado (UML) define un diagrama de actividad como: una variacin de una mquina estados, lo cual los estados representan el rendimiento de las acciones o 1 subactividades y las transiciones se provocan por la realizacin de las acciones o s ubactividades. El propsito del diagrama de actividad es modelar un proceso de flujo de trabajo (workflow) y/o modelar operaciones. Una Operacin es un servicio proporcionado por un objeto, que est disponible a travs de una interfaz. Una Interfaz es un grupo de operaciones relacionadas con la semntica.
Establecer el alcance del proceso a describir. De esta manera quedar fijado el comienzo y el final del diagrama. Frecuentemente el comienzo es la salida del proceso previo y el final la entrada al proceso siguiente. Identificar y listar las principales actividades/subprocesos que estn incluidos en el proceso a describir y su orden cronolgico. Si el nivel de detalle definido incluye actividades menores, listarlas tambin. Identificar y listar los puntos de decisin. Construir el diagrama respetando la secuencia cronolgica y asignando los correspondientes smbolos. Asignar un ttulo al diagrama y verificar que est completo y describa con exactitud el proceso elegido.
2.-Objetivo.Representar grficamente las distintas etapas de un proceso y sus interacciones, para facilitar la comprensin de su funcionamiento. Es til para analizar el proceso actual, proponer mejoras, conocer los clientes y proveedores de cada fase,representar los controles, etc.
3.-Ventajas.Podemos citar como ventajas que se pueden obtener con la utilizacin de los diagramas de flujo, las siguientes:
o o o
Ayudan a las personas que trabajan en el proceso a entender el mismo , con lo que facilitaran su incorporacin a la organizacin e incluso, su colaboracin en la bsqueda de mejoras del proceso y sus deficiencias. Al presentarse el proceso d una manera objetiva, se permite con mayor facilidad la identificacin de forma clara de las mejoras a proponer. Permite que cada persona de la empresa se site dentro del proceso, lo que conlleva a poder identificar perfectamente quien es su cliente y proveedor interno dentro del proceso y su cadena de relaciones, por lo que se mejora considerablemente la comunicacin entre los departamentos y personas de la organizacin.
o o o
Normalmente sucede que las personas que participan en la elaboracin del diagrama de flujo se suelen volver entusiastas partidarias del mismo, por lo que continuamente proponen ideas para mejorarlo. Es obvio que los diagramas de flujo son herramientas muy valiosas para la formacin y entrenamiento del nuevo personal que se incorpore a la empresa. Lo mas reseable es que realmente se consigue que todas las personas que estn participando en el proceso lo entendern de la misma manera, con lo que sera mas fcil lograr motivarlas a conseguir procesos mas econmicos en tiempo y costes y mejorar las relaciones internas entre los cliente-proveedor del proceso.
Pseudocdigo
Diagrama de Flujo
1.Inicio 2.Inicializar variables: A = 0, B = 0 3.Solicitar la introduccin de dos valores distintos 4. Leer los dos valores 5.Asignarlos a las variables A y B 6. Si A = B Entonces vuelve a 3 porque los valores deben ser distintos 7.Si A>B Entonces Escribir A, Es el mayor 8. De lo contrario: Escribir B, Es el mayor 9.Fin_Si B Es el mayor 10. Fin A Es el mayor No A>B A, B Si A=B No Si Inicio
Fin
Ejercicios propuesto:
a. b. Realizar un algoritmo que permita leer dos valores, determinar cual de los dos valores es el menor y escrbalo Realizar un algoritmo que sume dos nmeros.
Ejercicio No: 2
Desarrolle un algoritmo que permita leer tres valores y almacenarlos en las variables A, B y C respectivamente. El algoritmo debe imprimir cual es el mayor y cual es el menor. Recuerde constatar que los tres valores introducidos por el teclado sean valores distintos. Presente un mensaje de alerta en caso de que se detecte la introduccin de valores iguales.
Pseudocdigo
Diagrama de Flujo
1. 2. 3. 4.
Inicio Inicializar las variables A, B y C Leer los tres valores Almacenar en las variables A, B yC Si A > B y A > C Entonces Escribir A Es el mayor Sino
B>A y B>C Si No
Inicio
A, B, C
5. 6. 7. 8. 9.
A > B y A >C
Si
A Es el mayor
B Es el mayor
10. Sino 11. Escribir C Es el mayor 12. Fin_Si 13. Fin_Si 14. Fin
Fin
Ejercicios propuestos:
a. b. c. Es este algoritmo la solucin perfecta al ejercicio anterior? Razone su respuesta. De ser necesario qu cambios deber realizar? Indquelos. Desarrolle un algoritmo que permita leer tres valores y almacenarlos en las variables A, B, y C respectivamente. El algoritmo debe indicar cual es el menor. Asumiendo que los tres valores introducidos por el teclado son valores distintos. Desarrolle un algoritmo que lea cuatro nmeros diferentes y a continuacin imprima el mayor de los cuatro nmeros introducidos y tambin el menor de ellos.
d.
Ejercicio No: 3
Desarrolle un algoritmo que realice la sumatoria de los nmeros enteros comprendidos entre el 1 y el 10, es decir, 1 + 2 + 3 + . + 10.
Pseudocdigo
1. Inicio 2. Declaracin de variables: N= 0, Suma = 0 3. Asignacin Contador : N=N+1 4. Asignacin Acumulador: Suma = Suma + N 5. Si N = 10 Entonces
Diagrama de Flujo
Inicio
N=0 Suma = 0
No
6.
Escribir Suma
N = 10 Si Suma
Fin
Ejercicios propuestos:
a. Desarrolle un algoritmo que realice la sumatoria de los nmeros enteros mltiplos de 5, comprendidos entre el 1 y el 100, es decir, 5 + 10 + 15 +. + 100. El programa deber imprimir los nmeros en cuestin y finalmente su sumatoria Desarrolle un algoritmo que realice la sumatoria de los nmeros enteros pares comprendidos entre el 1 y el 100, es decir, 2 + 4 + 6 +. + 100. El programa deber imprimir los nmeros en cuestin y finalmente su sumatoria Desarrolle un algoritmo que lea los primeros 300 nmeros enteros y determine cuntos de ellos son impares; al final deber indicar su sumatoria.
b.
c.
Ejercicio No: 4 Determinar la hipotenusa de un tringulo rectngulo conocidas las longitudes de sus dos catetos. Desarrolle el algoritmo correspondiente.
Pseudocdigo
Diagrama de Flujo
1. 2. 3. 4.
Inicio Declaracin de Variables: CatA= 0, CatB=0 Leer el valor de cada cateto Almacenarlo en la variable CatA y CatB Calcular el valor de Hip con la formula indicada Escribir el valor de la Hipotenusa Fin
Inicio
CatA=0, CatB=0
CatA, CatB
5. 6. 7.
Hip
=CatA + CatB
Hipotenusa
Fin
Ejercicio propuestos:
a. Qu falta en este algoritmo? Qu errores presenta? b. Desarrollar un algoritmo que calcule el rea de un cuadrado.
Ejercicio No: 5
Desarrolle un algoritmo que permita determinar el rea y volumen de un cilindro dado su radio (R) y altura (H).
Pseudocdigo
Diagrama de Flujo
1. 2. 3. 4. 5.
Inicio Declaracin de variables: R = 0, H = 0 Leer el valor de Radio (R) y Altura (H) Calcular el Volumen aplicando la frmula Calcular el valor del rea aplicando la frmula respectiva Escribir el valor del rea y del Volumen Fin
6. 7.
Ejercicio:
a. Realiza un algoritmo que le permita determinar el rea de un rectngulo.
Ejercicio No: 6
Desarrolle un algoritmo que permita leer un valor cualquiera N y escriba si dicho nmero es par o impar.
Diagrama de Flujo
Inicio
N=0
5. Si el residuo de dividir a N entre 2 es igual a cero 6. Si es Si: Entonces: Escribir Es par 7. Sino: Escribir Es impar 8. Fin_Si
No
Si
N es Impar
N es Par
9. Fin
Fin
Ejercicios propuesto:
a. b. Complete el algoritmo con la instruccin o instrucciones necesarias. Desarrolle un algoritmo que le permita determinar de una lista de nmeros: b.1. Cuntos estn entre el 50 y 75, ambos inclusive? b.2. Cuntos mayores de 80? b.3. Cuntos menores de 30? El algoritmo debe finalizar cuando n (el total de nmeros de la lista), sea igual a 0.
Ejercicio No: 7 Desarrolle un algoritmo que permita convertir calificaciones numricas, segn la siguiente tabla: A = 19 y 20, B =16, 17 y 18, C = 13, 14 y 15, D = 10, 11 y 12, E = 1 hasta el 9. Se asume que la nota est comprendida entre 1 y 20. Pseudocdigo Diagrama de Flujo
1. 2.
Inicio Declaracin de variables: NuevaNota = Carcter Leer registros hasta fin de archivo Si Nota>=19 OR Nota<=20 Entonces NuevaNota= A
No
Inicio
NuevaNota =A
3. 4. 5. 6. 7. 8. 9.
Registro
Si
Fin Archivo?
Fin
Si no (De lo contrario)
Nota>=19 OR Nota<=20
Si NuevaNota = A
Si NuevaNota = B
No Si
Nota>=13 OR Nota<=15
NuevaNota = C
No
17.
NuevaNota= E
Registro, NuevaNota
Ejercicio propuesto:
a. Realiza el mismo algoritmo utilizando Mientras (While); tambin hazlo utilizando En Caso (Case)
Ejercicio No: 8 Desarrolle un algoritmo que permita leer dos nmeros y ordenarlos de menor a mayor, si es el caso.
Pseudocdigo
Diagrama de Flujo
1. 2.
Inicio Declaracin de Variables: A = 0, B = 0, Temporal = 0 Leer A y B Si A<B Entonces Asignar a Temporal = B Asignar a B = A Asignar a A = Temporal Si no (De lo contrario)
B=A No Temporal = B Si A, B Si A>B Inicio A=0, B=0, Temporal = 0
3. 4. 5. 6. 7. 8.
Orden = A , B
Fin
Ejercicio Propuesto:
a. Desarrolle un algoritmo que permita realizar la escritura de los primeros 100 nmeros naturales utilizando la estructura Mientras (While).
Ejercicio No: 9
Desarrolle un algoritmo que permita leer un valor entero positivo N y determinar si es primo o no. Pseudocdigo Diagrama de Flujo
1. 2.
Inicio J =2, S = 0 N
No J= N/ 2
>
<=
N/J=0 No S=S+1 N, no es primo J=J+1 N/J=0 Si
10. Si S = 0 Entonces 11. 12. 13. 14. 15. Escribir N es primo Sino (De lo contrario) Escribir N no es primo Fin_Si Fin
N, es primo
Fin
Ejercicio propuesto: a. Qu falta en este algoritmo? Qu errores presenta? b. Realice un algoritmo que determine los veinte primeros nmeros, Cules son mltiplos de 2?. c. Realice un algoritmo que determine cuantos minutos hay en 5 horas.
Ejercicio No: 10
Tanto el Pseudocdigo como el Diagrama de flujo presentan errores; encuntrelos y corrijalos. Realice un algoritmo que calcule el monto a pagar por el servicio de estacionamiento, teniendo en cuenta que por la primera hora de estada se tiene una tarifa de 1000 bolvares y las restantes tienen un costo de 600 bolvares. Se tiene como datos: hora de entrada, hora de salida (formato militar), iniciada una hora se contabiliza como hora total.
Pseudocdigo 1. Inicio 2. Declaracin de Variables HE = 0 (Hora Entrada) HS = 0 (Hora Salida) Pago = 0 3. Leer Datos: HE, HS 4. 5. 6. 7. 8. 9. 10. 11. HoraEstadia = HS HE HoraFraccin = HoraEstadiaHoraEstadia Si HoraEstadia>= 1 Entonces Si HoraFraccion >= 1 Entonces
Diagrama de Flujo
Inicio
HE = 0, HS = 0 Pagor = 0
HE, HS
HoraEstadia = HS HE Fraccion =
HoraEstadia=HoraEstadia +1
12. De lo contrario
HorasRestante=HoraEstadia - 1
Paga, Pago
Fin
Ejercicio propuesto: a. Realice un algoritmo que determine el pago a realizar por la entrada a un espectculo donde se pueden comprar slo hasta cuatro entrada, donde al costo de dos entradas se les descuenta el 10%, al de tres entrada el 15% y a la compra de cuatro tickets se le descuenta el 20 %.