Mr oraculo

Solo disponible en BuenasTareas
  • Páginas : 10 (2484 palabras )
  • Descarga(s) : 0
  • Publicado : 27 de diciembre de 2010
Leer documento completo
Vista previa del texto
Lección 5 – Funciones y subrutinas

Funciones y subrutinas
Introducción
En lecciones anteriores se ha descrito el concepto de diseño descendente; esta técnica permite desarrollar algoritmos que resuelvan un problema mediante un proceso de refinamiento progresivo, descomponiendo el problema original en subproblemas menores hasta obtener una granularidad suficientemente fina que permitaresolver cada subproblema mediante un algoritmo sencillo. Generalmente, por cada nivel del diseño descendente se desarrollo un pseudocódigo de alto nivel que hace uso de acciones no primitivas; si se detecta que alguna de estas acciones no primitivas aparece más de una vez es posible nombrarla y utilizarla de forma repetida. Tales acciones con nombre se denominan subprogramas y pueden ser, a su vez,funciones y subrutinas. La utilización de subprogramas proporciona múltiples ventajas: • Facilitan la modularidad y estructuración de los algoritmos. • • • Facilitan la lectura e inteligibilidad de los algoritmos. Permiten una economización del esfuerzo del programador al poder escribir código reutilizable en muchas partes de un mismo algoritmo. Facilitan la depuración y mantenimiento de losprogramas.

Funciones
Las funciones son subrutinas que pueden tener o no argumentos pero que siempre devuelven un valor de retorno. Así pues, las invocaciones a funciones son expresiones de un tipo determinado y deben emplearse igual que cualquier expresión de su tipos; es decir, una llamada a función puede formar parte de una expresión aritmética, lógica o de cadena en función de su tipo, puedeconstituir la parte derecha de una sentencia de asignación, aparecer en una sentencia de salida o constituir un argumento para otro subprograma. Por otro lado, las llamadas a funciones nunca pueden formar una sentencia aislada ni constituir la parte izquierda de una sentencia de asignación. Las invocaciones a funciones siguen, tanto en la notación algorítmica como en FORTRAN, la siguiente sintaxis:nombre_función ([argumento][,argumento]*)

Como se puede ver, es posible tener funciones con 0 o más argumentos, las funciones que se utilizarán en nuestros algoritmos pueden estar definidas por el propio usuario o, en muchas ocasiones, ser funciones estándar, esto es, definidas por el propio compilador.

Funciones intrínsecas o estándar
FORTRAN proporciona un gran número de funcionesintrínsecas, algunas de ellas se corresponden con funciones de nuestra notación algorítmica mientras que otras equivalen a operadores de dicha notación; a continuación se muestra una tabla con las funciones FORTRAN más empleadas y su homóloga en la notación algorítmica.
Operación Raíz cuadrada e
n

Función SQRT EXP LOG LOG10 SIN COS TAN ASIN ACOS ATAN ABS MOD

Tipo real real real real real realreal real real real entero real entero

FORTRAN Tipo argumentos real real real real real real real real real real entero real entero

Sintaxis SQRT(arg1) EXP(arg1) LOG(arg1) LOG1O(arg1) SIN(arg1) COS(arg1) TAN(arg1) ASIN(arg1) ACOS(arg1) ATAN(arg1) ABS(arg1) MOD(arg1,arg2)

Homólogo √ e
n

Logaritmo neperiano Logaritmo decimal Seno Coseno Tangente Arco seno Arco coseno Arco tangente Valorabsoluto Módulo/resto

ln log sin sin sin asin acos atan || %

Notación algorítmica Tipo Tipo argumentos entero real real entero real real entero real real entero real real entero real real entero real real entero real real entero real real entero real real entero real real entero entero real real entero entero

Sintaxis √ arg1 e arg1 ln(arg1) log(arg1) sin(arg1) cos(arg1) tan(arg1)asin(arg1) acos(arg1) atan(arg1) |arg1| arg1%arg2

1

Lección 5 – Funciones y subrutinas

Funciones definidas por el usuario
Obviamente, resultan mucho más interesantes para nosotros las funciones definidas por el usuario, aquellas cuya naturaleza es especificada por el desarrollador del algoritmo. La invocación o llamada de estas funciones se realiza de forma idéntica a la de las funciones...
tracking img