Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Pseudocdigo o
GNU Octave
Ejemplos
Pseudocdigo o
GNU Octave
Ejemplos
Contenido
Introduccin o Diagramas de ujo Construccin de diagramas de ujo o Pseudocdigo o GNU Octave Ejemplos
Pseudocdigo o
GNU Octave
Ejemplos
Dise o de la solucin: se debe proponer o aplicar un modelo para n o lograr sistematizar la bsqueda de la solucin. u o Codicacin: en esta etapa se describen los pasos que se deben o ejecutar para resolver el problema (algoritmo). Prueba: se verica el funcionamiento de la solucin propuesta y se o detectan los errores que se presenten con la posterior correccin de los o mismos (depuracin). o
Pseudocdigo o
GNU Octave
Ejemplos
Algoritmos
Denicin 1.1 (Algoritmo) o Un algoritmo es una secuencia nita de instrucciones, reglas o pasos que describen de modo preciso las operaciones que un computador debe realizar para ejecutar una tarea determinada en un tiempo nito. Cinco propiedades ampliamente aceptadas como requisitos para un algoritmo (Knuth):
Finitud: Un algoritmo siempre debe terminar despus de un n mero e u nito de pasos. Precisin: cada paso de un algoritmo debe estar precisamente denido o y sin ambiguedades. Entrada: un algoritmo tiene cero o ms entradas que le son dadas antes a de que el algoritmo comience, o dinmicamente mientras corre. a Salida: un algoritmo tiene una o ms salidas. a Ecacia: las operaciones a realizar en un algoritmo deben ser sucientemente bsicas como para que en principio puedan ser a realizadas de manera exacta y en un tiempo nito por un hombre usando papel y lpiz. a
Pseudocdigo o
GNU Octave
Ejemplos
Ejemplo
Algoritmo para preparar fr joles con chicharrn para 8 raciones. Los o datos de entrada (ingredientes) son:
2 libras de fr joles. 1 cucharada de aceite vegetal o de girasol. 1/4 de libra de tocino cortado en trocitos.
Algoritmo
1
Se lavan bien los frjoles y se dejan remojando en el agua desde la noche anterior. Al da siguiente, se ponen en la olla a presin con el agua en o que se remojaron, el aceite, el tocino y la zanahoria. Se cocinan sin sal hasta que estn blandos, aproximadamente por e 1 hora. Se lica una peque~a cantidad de los frjoles con la zanahoria, u n los cubos de caldo y la sal, y se agrega a los frjoles. Se cocinan media hora ms con la olla destapada hasta que a espesen.
Pseudocdigo o
GNU Octave
Ejemplos
Otros ejemplos
Muchos algoritmos no requieren de un computador para su ejecucin: o
Cambiar la llanta de un carro Ir al banco a pagar una cuenta Ir a un restaurante a comer Determinar la cantidad de dinero que nos deben devolver al pagar el bus Comprar una libra de azucar
En la prctica, un algoritmo es slo una parte de las etapas requeridas a o para resolver un problema:
Diseo del algoritmo. n Implementacin del algoritmo en un lenguaje de programacin adecuado o o (codicacin). o Ejecucin y validacin del programa por el computador. o o
Pseudocdigo o
GNU Octave
Ejemplos
Diseo de algoritmos n
Herramientas utilizadas para disear algoritmos n
Diagramas de ujo: representacin esquemtica de un algoritmo que o a muestra grcamente los pasos a seguir para alcanzar la solucin de un a o problema. Pseudocdigos: forma genrica de escribir un algoritmo, por medio de o e un lenguaje simple sin necesidad de conocer la sintxis de un lenguaje a de programacin. o
El diagrama de ujo se compone de guras que ilustran los pasos o procesos a seguir para alcanzar la solucin del problema. o Los s mbolos presentados permiten crear una estructura grca exible a que ilustra los pasos a seguir. Un diagrama de ujo permite con facilidad la posterior escritura de un programa en algn lenguaje de programacin. u o
Pseudocdigo o
GNU Octave
Ejemplos
Diagramas de ujo
S mbolo utilizado para marcar el inicio y el n del diagrama de ujo. S mbolo utilizado para ingresar los datos de entrada (expresa lectura). S mbolo utilizado para representar un proceso. En su interior se expresan asignaciones, operaciones aritmticas, cambios de valor de celdas en memoria, etc. e S mbolos utilizados para indicar la direccin del ujo o del diagrama. S mbolo utilizado para representar la estructura selectiva si entonces; en su interior se almacena una condicin que determina el ujo del diagrama. o S mbolo utilizado para representar la estructura selectiva si entonces/sino; en su interior se almacena una condicin que determina el ujo del diagrama. o
Pseudocdigo o
GNU Octave
Ejemplos
Diagramas de ujo
S mbolo utilizado para representar una decisin o mltiple. En su inetrior se almacena un selector y u dependiendo de su valor, se sigue por una de las ramas. S mbolo utilizado para representar la impresin de un o resultado (expresa escritura). S mbolo utilizado para expresar conexin dentro de o una misma pgina. a
S mbolo utilizado para expresar un mdulo de un o problema: para continuar con el ujo normal del diagrama es necesario primero resolver el subproblema enunciado en su interior.
Pseudocdigo o
GNU Octave
Ejemplos
Diagramas de ujo
Pseudocdigo o
GNU Octave
Ejemplos
Las lineas utilizadas para indicar la direccin del ujo del diagrama o deben ser rectas verticales y horizontales y no se deben cruzar.
Pseudocdigo o
GNU Octave
Ejemplos
Pseudocdigo o
GNU Octave
Ejemplos
Pseudocdigo o
GNU Octave
Ejemplos
Para asignar un valor o una expresin a una variable utilizamos o variable expresin o valor o
Pseudocdigo o
GNU Octave
Ejemplos
Explicacin de las variables: o A, B: variables de tipo entero. RES: variable de tipo real, almacena el resultado de la operacin. o
# 1 2 3 4 5 A 5 7 0 12 14 B 6 10 3 2 -5 RES 40, 33 96,33 3,00 65,33 27,00
Pseudocdigo o
GNU Octave
Ejemplos
Solucin o Consideraciones: Datos: CAL1, CAL2, CAL3, CAL4, CAL5 variables de tipo real que representan las 5 calicaciones del alumno. El promedio de las calicaciones est dado por a CAL1+ CAL2+ CAL3+ CAL4 + CAL5 5
Pseudocdigo o
GNU Octave
Ejemplos
# 1 2 3 4 5
CAL4 7 7 8 6 8
Pseudocdigo o
GNU Octave
Ejemplos
Pseudocdigo o
GNU Octave
Ejemplos
Recuerde que: El area de un rectngulo est dada por a a area = base altura El per metro de un rectngulo est dada por a a per metro = 2 (base + altura)
Pseudocdigo o
GNU Octave
Ejemplos
# 1 2 3 4 5
PERIMETRO 7 7 8 6 8
Pseudocdigo o
GNU Octave
Ejemplos
Terminolog bsica a a
Programa: conjunto de instrucciones que ejecuta un computador para alcanzar un resultado espec co (Von Neumann, 1946). Un programa se escribe en un lenguaje de programacin a partir de o un diagrama de ujo diseado con anterioridad. n Los lenguajes de programacin estn constituidos por un conjunto de o a
1
Reglas sintcticas: especif a can la formacin (sintxis) de instrucciones o a vlidas. a Reglas semnticas: especican el signicado de las instrucciones a vlidas. a
Desarrollo de un algoritmo (solucin general). o Construccin de un diagrama de ujo. o Construccin de un programa en un lenguaje de programacin. o o
Pseudocdigo o
GNU Octave
Ejemplos
Instrucciones en pseudocdigo o
Lectura de datos:
Leer A, VEL, C
Proceso:
Hacer TEMP TEMP + 1
Escritura:
Escribir A, VEL
Pseudocdigo o
GNU Octave
Ejemplos
Ejemplos
Programa en pseudocdigo para el diagrama de ujo del ejemplo (3.1) o
INVERTIR DATOS { Dado un conjunto de datos de entrada el programa invierte el orden de los mismos y los imprime } { A, B, C y D son variables de tipo entero }
1 2
Leer A, B, C, D Escribir D, C, B, A
Observaciones
Todo programa tiene un nombre que lo dene y que se elige teniendo en cuenta las reglas para la construccin de identicadores. o Entre llaves { } van comentarios que indican la funcin del programa. o Escribir un programa es sencillo cuando se conoce las instrucciones del pseudocdigo. La tarea intelectual consiste en la construccin del o o diagrama de ujo.
Pseudocdigo o
GNU Octave
Ejemplos
Ejemplos
CALCULA { Dado dos enteros A y B, el programa calcula el resultado de una expresin } o { A y B son variables de tipo entero, RES es una variable de tipo real }
1 2 3
Pseudocdigo o
GNU Octave
Ejemplos
Ejemplos
PROMEDIO CALIFICACION { Dadas las calicaciones de un estudiante, calcula su promedio } { CAL1, CAL2, CAL3, CAL4, CAL5 y PRO son variables de tipo real}
1 2
Leer CAL1, CAL2, CAL3, CAL4, CAL5 Hacer PRO (CAL1 + CAL2 + CAL3 + CAL4 + CAL5)/5 Escribir PRO
Pseudocdigo o
GNU Octave
Ejemplos
Ejemplos
CUADRADO CUBO { Dado un entero positivo, el programa calcula el cuadrado y el cubo de dicho nmero. } u { NUM es una variable de tipo entero, CUA y CUB son variables de tipo real }
1 2 3 4
Leer NUM Hacer CUA NUM*NUM Hacer CUB NUM3 Escribir CUA y CUB
Pseudocdigo o
GNU Octave
Ejemplos
Ejemplos
CUADRADO CUBO { Dados la base y la altura de un rectngulo, a calcula su per metro y su rea. } a { BASE, ALTURA, AREA Y PERIMETRO son variables de tipo real }
1 2 3
Leer BASE, ALTURA Hacer AREA BASE*ALTURA Hacer PERIMETRO 2*(BASE+ALTURA) Escribir AREA y PERIMETRO
Pseudocdigo o
GNU Octave
Ejemplos
Aspectos bsicos a
Lenguaje de alto nivel interpretado, orientado principalmente a computacin cient o ca Pretende ser compatible con MATLAB Proporciona una l nea de comandos interactiva para resolver problemas matemticos numricamente a e Incluye una coleccin de algoritmos y funciones matemticas o a
Pseudocdigo o
GNU Octave
Ejemplos
Aspectos bsicos a
Ventajas
Sencillo de utilizar Software libre: se distribuye bajo licencia GNU, GPL (General Public License) Sintxis muy similar a MATLAB a Cdigo abierto: amplia comunidad de soporte (foros, etc.) o
A diferencia de MATLAB. . .
No soporta programacin orientada a objetos o Capacidad de grcos limitada (GUIs) a Pocos toolboxes disponibles No dispone de los millones de una compa como MathWorks, Inc. na
Pseudocdigo o
GNU Octave
Ejemplos
~$ octave
GNU Octave, version 3.0.1 Copyright (C) 2008 John W. Eaton and others. This is free software; see the source code for copying conditions. There is ABSOLUTELY NO WARRANTY; not even for MERCHANTIBILITY or FITNESS FOR A PARTICULAR PURPOSE. For details, type warranty. Octave was configured for "x86_64-pc-linux-gnu". Additional information about Octave is available at http://www.octave.org. Please contribute if you find this software useful. For more information, visit http://www.octave.org/help-wanted.html Report bugs to <bug@octave.org> (but first, please read http://www.octave.org/bugs.html to learn how to write a helpful report). For information about changes from previous versions, type news. octave:1>
Pseudocdigo o
GNU Octave
Ejemplos
octave:#> 00 ans = 1
Pseudocdigo o
GNU Octave
Ejemplos
Pseudocdigo o
GNU Octave
Ejemplos
A 0 0 1 1
B 0 1 0 1
A&B 0 0 0 1
A|B 0 1 1 1
!A 1 1 0 0
(menor)
Pseudocdigo o
GNU Octave
Ejemplos
Variables y formatos
Variables: expresiones (identicadores) asociados a datos almacenados en un sistema de memoria Algunos tipos de datos:
Real de doble precisin: 8 bytes (15 cifras exactas) o String: cadena de caracteres
octave:#> a=2*a a = 6
Pseudocdigo o
GNU Octave
Ejemplos
Variables y formatos
Tipo short long short e long e short g long g Formato punto punto punto punto punto punto jo, 5 d gitos jo, 15 d gitos otante, 5 d gitos otante, 15 d gitos jo o otante, 5 d gitos jo o otante, 15 d gitos 3.1416 3.14159265358979 3.1416e+000 3.141592653589793e+000 3.1416 3.14159265358979
octave:#> c c = 1.23123123123123e-01
octave:#> b b = 0.333333333333333
octave:#> format
octave:#> c c = 0.12312
Pseudocdigo o
GNU Octave
Ejemplos
Variables predenidas
Variable ans pi e i eps Inf NaN Uso almacena el ultimo resultado almacena el valor de = 3,1415 . . . almacena el valor de e = 2,7183 . . . almacena el valor de 1 epsilon de la mquina a innito resultado no n merico (Not a Number) u
octave:#> format long octave:#> 1/0 warning: division by zero ans = Inf octave:#> pi ans = 3.14159265358979 octave:#> 0/0 warning: division by zero ans = NaN
Pseudocdigo o
GNU Octave
Ejemplos
Entorno de trabajo
Variables utilizadas en una sesin de trabajo (who, whos) o Historial de ordenes ejecutadas (, )
octave:#> who -v *** local user variables: __nargin__ c a alt perim ans area b base
cadena
octave:#> who -v *** local user variables: __nargin__ c perim a alt ans area b base
Pseudocdigo o
GNU Octave
Ejemplos
Entorno de trabajo
octave:#> who -v *** local user variables: __nargin__ a alt ans area b base c perim
octave-3.0.1:32> whos -v *** local user variables: Prot ==== rwrwd rwd rwd rwd rwd rwd rwd rwd Name ==== __nargin__ a alt ans area b base c perim Size ==== 1x1 1x1 1x1 1x1 1x1 1x1 1x1 1x1 1x1 Bytes ===== 8 8 8 1 8 8 8 8 8 Class ===== double double double logical double double double double double
Pseudocdigo o
GNU Octave
Ejemplos
Funciones matemticas a
Funcin o sqrt(x) exp(x) log(x) sin(x) cos(x) tan(x) asin(x) acos(x) atan(x) Uso calcula la ra cuadrada de x z funcin exponencial o funcin logaritmo natural o calcula sen(x) calcula cos(x) calcula tan(x) calcula sen1 (x) calcula cos1 (x) calcula tan1 (x)
Pseudocdigo o
GNU Octave
Ejemplos
Instrucciones de entrada/salida
Salida de datos:
disp("texto") printf("cadena de formato", arg1, arg2,...) octave:#> disp("hola, mundo!") hola, mundo! octave:#> m=3; octave:#> disp(m) 3 octave:#> pulg=2.54; cent=6.4516; octave:#> printf(" %d pulgadas equivalen a %f cenmetros \n", m, cent); 3 pulgadas equivalen a 6.451600 centmetros octave:#> printf(" %f pulgadas equivalen a %f centmetros \n", pulg, cent); 2.540000 pulgadas equivale a 6.451600 centmetros octave:#> printf(" %f pulgadas equivalen a %e cenmetros \n", pulg, cent); 2.540000 pulgadas equivale a 6.451600e+00 centmetros
Entero Punto jo Punto otante Caracter Cadena de caracteres d, i f, g e c s
Pseudocdigo o
GNU Octave
Ejemplos
Instrucciones de entrada/salida
Entrada de datos por teclado:
input("texto") input("texto", "s") octave:#> palabra = input("Ingrese una palabra: ","s"); Ingrese una palabra: casa
octave:#> printf("La palabra %s tiene %d letras \n", palabra, letras); La palabra casa tiene 4 letras
Pseudocdigo o
GNU Octave
Ejemplos
Scripts
Archivos de texto plano sin formato, con extensin .m, que contienen o una sucesin de comandos de Octave o Se editan con cualquier editor de texto (usaremos geany)
Pseudocdigo o
GNU Octave
Ejemplos
Ejemplos de scripts
hola mundo.m
promedio.m
% Calcula el promedio de dos nmeros reales u % Lee los valores de num1 y num2 num1 = input("Ingrese el primer nmero: "); u num2 = input("Ingrese el segundo nmero: "); u % Calcula el promedio y lo almacena en la variable prom prom = (num1+num2)/2; % Imprime los nmeros ingresados y su promedio u printf("El promedio de %g y %g es: %g \n", num1, num2, prom);
Pseudocdigo o
GNU Octave
Ejemplos
Ejemplos de scripts
pmol.m
% Este programa calcula el peso molecular de una molecula % organica. % Calculo de los g/mol de cada elemento. peso C = 12*9 ; peso H = 1*6 ; peso O = 16*4; % Calculo del peso molecular peso molecular = peso C + peso H + peso O % Calculo del porcentaje de oxigeno porcentaje O = peso O/peso molecular*100
Pseudocdigo o
GNU Octave
Ejemplos
Ejemplos de scripts
Ejemplo 5.1 Escriba un programa (script) en Octave que tenga como entradas los datos enteros A y B y escriba el resultado de la siguiente expresin: o (A + B)2 3 Solucin o
operacion.m
% Dados dos enteros A y B, calcula % (A+B)2/3 % Lee los valores de A y B A = input("Ingrese A: "); B = input("Ingrese B: "); RES = (A+B)2/3; % Imprime contenido de la variable RES disp(RES);
Pseudocdigo o
GNU Octave
Ejemplos
Ejemplos de scripts
Ejemplo 5.2 (Area y per metro de un rectngulo) a Escriba un programa (script) en Octave tal que dado como datos la base y la altura de un rectngulo, calcule su per a metro y area. Solucin o
rectangulo.m % Dados la base y la altura de un rectngulo, el programa a % calcula su rea y su permetro a % Lee los valores de la base y la altura BASE = input("Ingrese la base: "); ALTURA = input("Ingrese la altura: "); AREA = BASE*ALTURA; PERIMETRO = 2*(BASE+ALTURA); printf("El rea es %f y el permetro es %f \n", AREA, PERIMETRO); a
Pseudocdigo o
GNU Octave
Ejemplos
Funciones
Son scripts que tienen una sintaxis predenida Programas que resultan complejos por medio de scripts, se simplican por medio de funciones Una vez denidas, las funciones se invocan desde la l nea de comandos o desde un script
cuadrado.m
octave:#> cuadrado(3) ans = 9 octave:#> cuadrado(-2.5678) ans = 6.5936 octave:#> cuadrado(t) error: t undefined near line 2 column 10 error: evaluating argument list element number 1 octave:#> help cuadrado calcula el cuadrado de un nmero real u
Pseudocdigo o
GNU Octave
Ejemplos
Ejemplo de funcin o
Ejemplo 5.3 (Area y per metro de un rectngulo con funciones) a Resuelva el ejemplo (5.2) del rectngulo utilizando funciones. a Solucin o
area.m rectangulo2.m % Dados la base y la altura de un rectngulo, el programa a % calcula su rea y su permetro a % Lee los valores de la base y la altura BASE = input("Ingrese la base: "); ALTURA = input("Ingrese la altura: "); AREA = area(BASE,ALTURA); PERIMETRO = perimetro(BASE,ALTURA); printf("El rea es %f y el permetro es %f \n", AREA, PERIMETRO); a perimetro.m
octave:#> rectangulo2 Ingrese la base: 2 Ingrese la altura: 3 El rea es 6.000000 y el permetro es 10.000000 a
Pseudocdigo o
GNU Octave
Ejemplos
Ejemplo 6.1
Ejemplo 6.1 Realice un algoritmo (diagrama de ujo, pseudocdigo) tal que dado el costo o de un art culo vendido y la cantidad de dinero entregada por el cliente, calcule e imprima el cambio que se debe entregar al mismo. Implemntelo e en DFD. Solucin o Datos: PRECIO: variable de tipo real que representa el precio del producto. PAGO: variable de tipo real que representa el pago a realizar por el cliente. Variables de salida: DEVO: variable de tipo real. Almacen el cambio que se le debe entregar al cliente. Nota: asumimos que el pago del cliente es mayor que el precio del producto.
Pseudocdigo o
GNU Octave
Ejemplos
Ejemplo 6.1
DEVUELTO { Dado el costo de un producto y la cantidad de dinero entregada por el cliente, calcula el vuelto que hay que entregar al cliente. } { PRECIO, PAGO Y DEVO son variables de tipo real. }
1 2 3
# 1 2 3 4
Pseudocdigo o
GNU Octave
Ejemplos
Ejemplo 6.2
Ejemplo 6.2 Realice un algoritmo (diagrama de ujo, pseudocdigo) que reciba como o datos el nombre de un dinosaurio, su peso (en toneladas) y su altura (en pies), y que escriba el nombre del dinosaurio, su peso en kilogramos y su altura en metros. Implemntelo en DFD. e Solucin o Datos: NOM: variable de tipo cadena de caracteres que indica el nombre del dinosaurio. PES: variable de tipo real que representa el peso del dinosaurio. ALT: variable de tipo real que representa la altura del dinosaurio. Variables de salida: PESKG: variable de tipo real, almacena el peso del dinosaurio en Kg. ALTMT: variable de tipo real, almacena el peso del dinosaurio en mt. Consideraciones: 1 tonelada equivale a 1000 kilogramos. 1 pie equivale a 0.3047 metros.
Pseudocdigo o
GNU Octave
Ejemplos
Ejemplo 6.2
DINOSAURIO { Dado el nombre de un dinosaurio, su peso en toneladas y su altura en pies, el programa escribe el nombre del dinosaurio, su peso en kilogramos y su altura en metros. } { NOM es una variable de tipo cadena de caracteres. PES, ALT, PESKG, y ALTMT son variables de tipo real. }
1 2 3 4
Leer NOM, PES, ALT Hacer PESOKG PESO1000 Hacer ALTMT ALT0,3047 Escribir NOM, PESOKG, ALTMT
# 1 2 3 4
PES 5 15 50 25
ALT 30 90 80 70
Pseudocdigo o
GNU Octave
Ejemplos
Ejemplo 6.3
Ejemplo 6.3 En una gasolinera las mquinas registran el combustible surtido en galones a pero el precio de la gasolina est jado en litros. Realice un algoritmo a (diagrama de ujo, pseudocdigo) que calcule e imprima el valor que hay o que cobrarle al cliente e implemntelo en DFD. e Solucin o Datos: GAL: variable de tipo real que representa los galones de gasolina surtidos al cliente. Variables de salida: TOTAL: variable de tipo real, almacena el total que debe pagar el cliente. Consideraciones: 1 galn equivale a 3.785 litros. o 1 litro de gasolina cuesta $1480.
Pseudocdigo o
GNU Octave
Ejemplos
Ejemplo 6.3
GASOLINA { Dado los galones de gasolina surtidos a un cliente, calcula el precio que debe pagar el cliente. } { GAL y TOTAL son variableS de tipo real. }
1 2 3
# 1 2 3 4
Pseudocdigo o
GNU Octave
Ejemplos
Ejemplo 6.4
Ejemplo 6.4 Realice un algoritmo (diagrama de ujo, pseudocdigo) que reciba como o datos el radio y la altura de un cilindro y calcule e imprima su rea y a volumen. Implemntelo en DFD. e Solucin o Datos: RADIO: variable de tipo real que representa el radio del cilindro. ALT: variable de tipo real que representa la altura del cilindro. Variables de salida: VOL: variable de tipo real, almacena el volumen del cilindro. AREA: variable de tipo real, almacena el area del cilindro. Consideraciones: El volumen y el area de un cilindro estn dados respectivamente por a volumen = r2 h y area = 2r h
Pseudocdigo o
GNU Octave
Ejemplos
Ejemplo 6.4
CILINDRO { Dado el radio y la altura de un cilindro, calcula su rea y su volumen.} a { RADIO, ALT, VOL y AREA son variables de tipo real. }
1 2 3 4
Leer RADIO, ALT Hacer VOL 3.141592 RADIO2 ALT Hacer AREA 2 3,141592 RADIO ALT Escribir VOL, AREA
# 1 2 3 4
Pseudocdigo o
GNU Octave
Ejemplos
Ejemplo 6.5
Ejemplo 6.5 Realice un algoritmo (diagrama de ujo, pseudocdigo) que calcule e o imprima el nmero de segundos que hay en un determinado nmero de u u d as. Implemntelo en DFD. e
Solucin o Datos: DIAS: variable de tipo entero que representa el nmero de d u as. Variables de salida: SEG: variable de tipo real. Almacena la cantidad de segundos que hay en un nmero determinado de d u as.
Pseudocdigo o
GNU Octave
Ejemplos
Ejemplo 6.5
SEGUNDOS EN DIAS { Dado un nmero determinado de d u as, calcula cuntos segundos tienen stos. } a e { DIAS es una variable de tipo entero y SEG es una variable de tipo real. }
1 2 3
# 1 2 3 4
DIAS 1 7 15 30
Pseudocdigo o
GNU Octave
Ejemplos
Ejemplo 6.6
Ejemplo 6.6 Se desea conocer cuntos meses han transcurrido entre enero de 1949 y a enero de 2002. Realice un algoritmo (diagrama de ujo, pseudocdigo) que o resuelva dicho problema e implemntelo en DFD. e Solucin o Variables: ATRANS: variable de tipo entero; almacena el nmero de meses que hay u entre 1949 y 2002.
MESES { Determina el nmero de meses que hay u entre 1949 y 2002. }
1 2
Pseudocdigo o
GNU Octave
Ejemplos
Ejemplo 6.7
Ejemplo 6.7 (Generalizacin del ejemplo 6.6) o Se desea determinar los meses transcurridos entre los inicios de dos aos n cualesquiera. Realice un algoritmo (diagrama de ujo, pseudocdigo) que o resuelva dicho problema e implemntelo en DFD. e Solucin o Datos: AINICIAL: variable de tipo entero, representa el ao inicial. n AFINAL: variable de tipo entero, representa el ao nal. n ATRANS: variable de tipo entero; almacena el nmero de aos que hay u n entre el ao inicial y el ao nal. n n Variables de salida: MTRANS: variable de tipo entero; almacena el nmero de meses u transcurridos entre el ao inicial y el ao nal. n n
Pseudocdigo o
GNU Octave
Ejemplos
Ejemplo 6.7
MESES GENERAL { Dado un nmero determinado de d u as, calcula cuntos segundos tienen stos. } a e { DIAS es una variable de tipo entero y SEG es una variable de tipo real. }
1 2 3 4
Leer AINICIAL, AFINAL Hacer ATRANS AFINALAINICIAL Hacer MTRANS 12MTRANS Escribir ATRANS
# 1 2 3 4
Pseudocdigo o
GNU Octave
Ejemplos
Referencias
O. Cair o Metodolog de la programacin a o Segunda edicin. Alfaomega Grupo Editor, S.A., 2005 o
J.W. Eaton GNU Octave: A high-level interactive language for numerical computations Network Theory Ltd., 2002