You are on page 1of 35

Pontificia Universidad Católica de Valparaíso

Facultad de Ingeniería
Escuela de Ingeniería Informática

“Subrutinas Predefinidas”

Asignatura

INF 1141 – Fundamentos de Algoritmos
Profesores

Pamela Hermosilla Monckton (Paralelo 1)
Rodolfo Villarroel Acevedo (Paralelo 2)

Profesores PHM/RVA
INF1141 – Fundamentos de Algoritmos

Pontificia Universidad Católica de Valparaíso
Escuela de Ingeniería Informática

SUBRUTINAS PREDEFINIDAS

1. Subrutinas QUE EXISTEN en SL (Procedimientos o Funciones)
2. Pueden SER UTILIZADAS por el programador en sus algoritmos

Pontificia Universidad Católica de Valparaíso
Escuela de Ingeniería Informática

Algunas Subrutinas Predefinidas en SL que conocemos….
NOMBRE

imprimir

PROPÓSITO

imprimir en pantalla los valores traspasados como
parámetros

PROTOTIPO

sub imprimir (valor_1, valor_2, ...)

EJEMPLO DE USO

imprimir(“suma es “, suma)

NOMBRE cls PROPÓSITO Limpiar la pantalla PROTOTIPO sub cls() EJEMPLO DE USO cls() .Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática Algunas Subrutinas Predefinidas en SL que conocemos….

.Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática Algunas Subrutinas Predefinidas en SL que conocemos….) EJEMPLO DE USO leer(a. variable_2.. .c) .b. NOMBRE leer PROPÓSITO Leer uno o mas valores desde el teclado y asignarlos a las variables que se pasan como parámetros PROTOTIPO sub leer (variable_1.

5.Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática Subrutinas Predefinidas en SL 1. 2. 3. Funciones Matemáticas Transformación de Datos Cadenas de Caracteres Entrada / Salida Otras . 4.

Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática NOMBRE PROTOTIPO DESCRIPCIÓN tan sub tan (a : numerico) retorna numerico Retorna la tangente de a (expresado en radianes) arctan sub arctan (a : numerico) retorna numerico Retorna el arco tangente de a (expresado en radianes) cos sub cos (a : numerico) retorna numerico Retorna el coseno de a (expresado en radianes) sin sub sin (a : numerico) retorna numerico Retorna el seno de a (expresado en radianes) int sub int (n : numerico) retorna numérico Retorna la parte entera de n .

Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática .

71828…) sqrt sub sqrt (n : numerico) retorna numerico Retorna la raíz cuadrada de n (n >= 0) . Si n=0  ERROR de compilación Si n < 0  ERROR de ejecución  programa terminará exp sub exp (n : numerico) retorna numerico Retorna e elevado a n (e es la base de los logaritmos naturales o neperianos 2.Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática NOMBRE PROTOTIPO DESCRIPCIÓN abs sub abs (n : numerico) retorna numerico Retorna el valor absoluto de n log sub log (n : numerico) retorna numerico Retorna logaritmo en base 10 de n (mayor a cero).

Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática .

2. 3. 4. 5. Funciones Matemáticas Transformación de Datos Cadenas de Caracteres Entrada / Salida Otras .Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática Subrutinas Predefinidas en SL 1.

cant_dec : numerico. se rellena a la izquierda con el carácter especificado. Forma 3 sub str (n : numerico. cant_dec : numerico. ancho : numerico) retorna cadena retorna numero en formato cadena con 2 decimales . se especifica cantidad de decimales y alineación a la derecha. Forma 4 sub str (n : numerico. ancho : numerico. ancho total NO especificado y alineación a la izquierda.Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática NOMBRE PROTOTIPO DESCRIPCIÓN str sub str (n : numerico. ancho : numerico. relleno : cadena) retorna cadena Retorna la representación del número n en formato cadena. ancho : numerico. relleno : cadena) retorna cadena Ancho total especificado . si el número formateado tiene menos dígitos que el ancho especificado. . cant_dec : numerico) retorna cadena retorna numero en formato cadena con acho total especificado . ancho total especificado (se cuenta el punto decimal) y alineación a la derecha. Forma 2 sub str (n : numerico. se especifica cantidad de decimales . FORMATEO Forma 1 sub str (n : numerico) retorna cadena retorna numero en formato cadena con 2 decimales.

Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática FORMA 1 .

Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática FORMA 2 .

Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática FORMA 3 .

Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática FORMA 4 .

Si cadena no contiene una secuencia que expresa un número retorna 0. produce un valor numérico. .Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática NOMBRE PROTOTIPO DESCRIPCIÓN val sub val (c : cadena) retorna numerico Dada una cadena c que contiene dígitos de un número entero o decimal.

Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática EJEMPLO .

Funciones Matemáticas Transformación de Datos Cadenas de Caracteres Entrada / Salida Otras . 2. 4. 5. 3.Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática Subrutinas Predefinidas en SL 1.

El resto se mantienen igual.Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática NOMBRE PROTOTIPO DESCRIPCIÓN ascii sub ascii (n : numerico) retorna cadena Retorna el carácter que se encuentra en la tabla ASCII en la posición n ord sub ord (c : cadena) retorna numerico Retorna la posición que ocupa el carácter c en la tabla ASCII lower sub lower (c : cadena) retorna cadena Dada una cadena c como parámetro  retorna una nueva cadena con los caracteres alfabéticos de c convertidos a minúsculas. El resto se mantienen igual. upper sub upper (c : cadena) retorna cadena Dada una cadena c como parámetro  retorna una nueva cadena con los caracteres alfabéticos de c convertidos a mayúsculas. .

Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática .

Si pos_inicial > que el total de caracteres de la cadena retorna cadena VACÍA.Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática NOMBRE PROTOTIPO DESCRIPCIÓN strlen sub strlen (c : cadena) retorna numerico Retorna la cantidad de caracteres de la cadena c strdup sub strdup (c : cadena. . Si se omite cant se copian todos los caracteres hasta el final de c. substr sub substr (c : cadena pos_inicial : numerico cant : numerico) retorna cadena Retorna una copia de una porción de la cadena c . n : numerico) retorna cadena Dada una cadena c y un número n  retorna una nueva cadena compuesta por n copias de c. a partir de la posición pos_inicial. La cantidad de caracteres copiados es cant.

Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática .

Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática Subrutinas Predefinidas en SL 1. 2. 4. Funciones Matemáticas Transformación de Datos Cadenas de Caracteres Entrada / Salida (algunas….) Otras . 3. 5.

. retorna cero. readkey() espera indefinidamente a que el usuario pulse una tecla. Ambos parámetros se pueden omitir (por defecto el pitido tiene frecuencia=500 y duración_miliseg=100) readkey sub readkey (milisegundos : numerico) retorna numerico Espera a que se pulse una tecla y retorna un código numérico que identifica lo pulsado por el usuario. duración_miliseg : numerico) Emite un pitido a cierta frecuencia y la ejecución del programa se suspende durante el tiempo que se indica en el segundo parámetro expresado en milisegundos. retornará cero. Si el dispositivo de entrada no es el teclado. si nada se pulsó en ese tiempo.Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática NOMBRE PROTOTIPO DESCRIPCIÓN beep sub beep (frecuencia. Si se omite el parámetro. que está expresado en milisegundos. El tiempo que se espera depende del parámetro. porque por ejemplo es un archivo.

Ambos parámetros son pasados por referencia. fondo : numerico) Obtiene el color del texto y del fondo vigentes. Los colores están identificados por un valor entero.Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática NOMBRE PROTOTIPO DESCRIPCIÓN get_color sub get_color (ref primer_plano. por lo que se deben traspasar variables. No tiene ningún efecto cuando el dispositivo de salida no es la pantalla. fondo : numerico) Permite cambiar los colores que se usarán al imprimir mensajes en la pantalla. set_color sub set_color (primer_plano. . el color correspondiente no se ve afectado. El segundo parámetro de set_color() indica el color de fondo. El primer parámetro (primer_plano) indica el color del texto. Si cualquiera de los parámetros es 0.

Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática .

Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática .

Si la salida es a un archivo fila y columna valen 0. col_actual : numerico) Obtiene la fila y columna en la que se encuentra el cursor en la pantalla.Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática NOMBRE PROTOTIPO DESCRIPCIÓN get_curpos sub get_curpos (ref linea_actual. nueva_col : numerico) Posiciona el cursor en la línea y columna especificadas. puede pasarse 0 como columna. 1. similar efecto se logra pasando 0 como número de línea: solo se cambia la columna. La esquina superior izquierda de la pantalla corresponde a la posición (1. No tiene ningún efecto cuando el dispositivo de salida no es la pantalla. . set_curpos sub set_curpos (nueva_lin. por lo que se deben traspasar variables. Ambos parámetros son pasados por referencia. Si solo se desea cambiar la columna conservando la fila actual.

Ambos parámetros son pasados por referencia. cant_cols : numerico) Obtiene la cantidad de líneas y columnas que tiene la pantalla. . El tamaño habitual de la pantalla es 25 líneas por 80 columnas.Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática NOMBRE PROTOTIPO DESCRIPCIÓN get_scrsize sub get_scrsize (ref cant_lin. por lo que se deben proveer dos nombres de variables.

Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática .

Funciones Matemáticas Transformación de Datos Cadenas de Caracteres Entrada / Salida (algunas…. 5. 3.) Otras .Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática Subrutinas Predefinidas en SL 1. 2. 4.

Opcionalmente puede proveerse un segundo parámetro como “semilla” o valor inicial que se inyecta al generador de números pseudo-aleatorios. Los valores pueden ser numéricos.Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática NOMBRE PROTOTIPO DESCRIPCIÓN max sub max (valor_1. La cadena vacía “” se considera que es menor a cualquier cadena no vacía. valor_2) retorna <valor_mayor> Dados dos valores simples. cadenas o lógicos y ambos deben coincidir en tipo. numerico) retorna numerico El resultado es un entero mayor o igual a cero y menor a un valor tope que se pasa como parámetro. asegúrese de hacerlo una sola vez en todo su programa. retorna una copia del menor de ellos. random sub random (tope : Genera un número pseudo-aleatorio. . cadenas o lógicos y ambos deben coincidir en tipo. Los valores pueden ser numéricos. valor_2) retorna <menor_valor> Dados dos valores simples. Si pasa este parámetro. retorna una copia del mayor de ellos. min sub min (valor_1.

Hacen lo mismo!! . Las variables deben coincidir en tipo y pueden corresponder a valores simples. registros o cualquier combinación de estos. <variable_2>) Intercambia el contenido de dos variables que se pasan como parámetros. Las variables deben coincidir en tipo y pueden corresponder a valores simples. registros o cualquier combinación de estos. swap sub swap (<variable_1>.Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática NOMBRE PROTOTIPO DESCRIPCIÓN intercambiar sub intercambiar (<variable_1>. arreglos. arreglos. <variable_2>) Intercambia el contenido de dos variables que se pasan como parámetros.

Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática .