funciones y fórmulas de tp pc1 pucp - la faku

Upload: hoscanoa

Post on 03-Apr-2018

215 views

Category:

Documents


0 download

TRANSCRIPT

  • 7/28/2019 Funciones y Frmulas de TP PC1 PUCP - La Faku

    1/4Faku

    aFaku

    La F

    aku

    a Faku

    La

    Faku

    LaFaku

    aFaku

    LaFaku

    La

    Faku

    aFaku

    LaFak

    aFa

    TECNICAS DE PROGRAMACION

    FUNCIONES Y FORMULAS PARA PC N

    1

    Prof. Hernan Oscanoa V.

    Funciones Aritmeticas Standards

    Pascal incluye un gran numero de funciones predefinidas que pueden ser utilizados en las ex-presiones entre constantes y variables. El Cuadro 1 muestra las funciones aritmeticas estandardivididos en tres grupos:

    Las funciones de conversion Funciones trigonometricas

    Otras funciones

    Cualquier funcion opera en un parametro que esta dentro de sus parentesis. El parametro es unaexpresion de un tipo especfico (observe que la expresion puede ser una variable o constante).Antes de utilizar cualquiera de estas funciones, es necesario conocer el tipo de par ametro que lafuncion usa y el tipo del valor de retorno (que es tambien el tipo de la funcion). Las funciones deconversion, por ejemplo, toman parametros reales y retornan resultados enteros. Otras funcionesutilizan parametros ya sea enteros o reales, y producen diferentes tipos. El tipo de valor devueltoes importante a la hora de asignar la funcion a una variable.

    Formato de Funcion Valor Retornado Parametro Resultado

    Funciones de Conversion

    ROUND(x) x redondeado al entero mas cercano REAL INTEGERTRUNC(x) x con parte fraccional truncada REAL INTEGER

    *Funciones Trigonometricas

    ARCTAN(x) Arcotangente de x REAL/INTEGER REALCOS(x) Coseno de x REAL/INTEGER REALSIN(x) Seno de x REAL/INTEGER REAL

    Funciones Miscelaneas

    ABS(x) Valor absoluto de x REAL/INTEGER REAL/INTEGEREXP(x) Exponencial de x (ex) REAL/INTEGER REALLN(x) Logaritmo natural de x REAL/INTEGER REALSQR(x) Cuadrado de x (x2) REAL/INTEGER REAL/INTEGER

    SQRT(x) Raz cuadrada de x (x) REAL/INTEGER REAL*Todos los angulos estan expresados en radianes.

    Cuadro 1: Funciones Aritmeticas Standards

    Funciones Aritmeticas Adicionales

    Pascal tiene un numero considerable de funciones aritmeticas adicionales. De estas funciones,especialmente necesitara dos de ellas:

    FRAC(n) devuelve la parte decimal del numero real n INT(n) devuelve la parte entera del numero real n

    1

  • 7/28/2019 Funciones y Frmulas de TP PC1 PUCP - La Faku

    2/4Faku

    aFaku

    La F

    aku

    a Faku

    La

    Faku

    LaFaku

    aFaku

    LaFaku

    La

    Faku

    aFaku

    LaFak

    aFa

    Por ejemplo1:

    1 Writeln (FRAC ( 8 , 2 2 ) : 2 : 2 ) ; {p r od u ce 0 , 2 2 }2 Writeln ( I N T ( 8 . 2 2 ) 2 : 2 ) ; {p r od u ce 8 , 0 0 }

    Ambas funciones devuelven numeros reales.

    Otro par de funciones que se utilizan para generar numeros aleatorios son:

    RANDOM devuelve un numero real aleatorio entre 0 y 1 (el cero esta incluido) RANDOM(n) devuelve un entero aleatorio entre 0 y el numero entero n (el cero esta incluido)

    Prueba estas dos declaraciones:

    1 RANDOMIZE;2 Writeln (RANDOM: 2 : 2 ) ;3 Writeln (RANDOM( n ) ) ;

    donde n es un numero entero variable de lectura desde el teclado. Utilice las dos declaraciones

    en un programa y vea los resultados de varias ejecuciones. Ellos deben ser diferentes en cadaejecucion. RANDOMIZE planta semillas para que los numeros generados sean diferentes en cadaejecucion.

    Funciones Matematicas No Standards

    Algunas de las funciones matematicas que requerimos no se encuentran disponibles; sin embargose puede expresar estas en base al standard disponible, como se ve en el Cuadro 2.

    Funcion Equivalente Funcion Equivalente

    an = en ln(a) csc() = 1

    sin()

    logb(x) = ln(x)

    ln(b)cos1(x) = arctan

    1 x2x

    tan() =

    sin()

    cos()sin1(x) = arctan

    x

    1 x2

    cot() =cos()

    sin()sinh(x) =

    ex ex

    2

    sec() =1

    cos()cosh(x) =

    ex + ex

    2

    Cuadro 2: Funciones Matematicas No Standards

    Funciones Standards Para Caracteres

    Hay cuatro funciones estandar que se dedican a las operaciones de manipulacion de caracteres:

    ORD(c) devuelve el numero ordinal del caracter c CHR(n) devuelve el caracter representado por el numero ordinal n PRED(c) devuelve el caracter c anterior en la secuencia ordinal SUCC(c) devuelve el siguiente caracter despues de c en la secuencia ordinal

    1Los trozos de codigo muestran una forma que al escribirlos dentro de un programa se muestre en la consola el

    resultado de la funcion implicada en una lnea. No queriendo decir que es la unica forma de su utilizacion.

    2

  • 7/28/2019 Funciones y Frmulas de TP PC1 PUCP - La Faku

    3/4Faku

    aFaku

    La F

    aku

    a Faku

    La

    Faku

    LaFaku

    aFaku

    LaFaku

    La

    Faku

    aFaku

    LaFak

    aFa

    Usted puede obtener el numero ordinal de un caracter mediante el uso de la funcion ORD, comoen el siguiendo el ejemplo:

    1 Writeln (ORD( A ) ) ; {El o rd i n a l d e l c ar a c te r A e s 65 }

    El numero ordinal del caracter es el que le corresponde en la codificacion decimal ASCII.

    Se tiene que resaltar que la funcion ORD opera tambien con valores booleanos de la siguienteforma:

    1 Writeln (ORD(TRUE) ) ; {E l o r d i n a l d e TRUE e s 1}2 Writeln (ORD(FALSE) ) ; {E l o r d i n a l d e FALSE e s 0 }

    Operadores A Nivel De Bits

    Un Byte es equivalente a 8 bits, esto significa que con Byte puedes tener 256 combinacionesposibles de ceros y unos. Pascal, permite realizar operaciones con bits, como son el despla-zamiento de bits hacia izquierda y derecha con las funciones shift y utilizar los operadoreslogicos AND, OR, XOR, NOT.

    SHR: Desplaza hacia la derecha los bits de n el numero de posiciones establecidas por m.Los bits que salen por el extremo derecho se pierden.

    Sintaxis: n S H R m

    Ejemplo: 125 SHR 3 = 15

    En Binario:

    125 0000000001111101 SHR 3 = 0000000000001111 15 SHL: Desplaza hacia la izquierda los bits de n el numero de posiciones establecidas por m.

    Los bits que salen por el extremo izquierdo se pierden.

    Sintaxis: n S H L m

    Ejemplo: 1 0 S H L 2 = 4 0En Binario:

    10 0000000000001010 SHL 2 = 0000000000101000 40 AND: Si el bit de n es uno y el correspondiente a m tambien lo es, el resultado es uno, y en

    el resto de casos es cero.

    Sintaxis: n A N D m

    Ejemplo: 29 AND 30 = 28

    En Binario:

    29 0000000000011101 AND30

    0000000000011110

    28 0000000000011100 OR: Si el bit de n es cero y el correspondiente a m tambien lo es, el resultado es cero, y en

    el resto de casos es uno.

    Sintaxis: n O R m

    Ejemplo: 1 7 O R 3 0 = 3 1

    En Binario:

    17 0000000000010001 OR30 000000000001111031 0000000000011111

    3

  • 7/28/2019 Funciones y Frmulas de TP PC1 PUCP - La Faku

    4/4Faku

    aFaku

    La F

    aku

    a Faku

    La

    Faku

    LaFaku

    aFaku

    LaFaku

    La

    Faku

    aFaku

    LaFak

    aFa

    XOR: Si el bit de n y el correspondiente a m son diferentes, el resultado es uno, y en el restode casos es cero

    Sintaxis: n X O R m

    Ejemplo: 103 XOR 25 = 126

    En Binario:

    103 0000000001100111 XOR25 0000000000011001126 0000000001111110

    NOT: Si el bit de n es uno, lo cambia por cero y viceversa.Sintaxis: NOT n

    Ejemplo: NOT 25 = 65510

    En Binario:

    NOT 0000000000011001 = 1111111111100110 65510

    Los operadores AND y OR se pueden interpretar como la multiplicacion y la suma en ciertos casos

    especiales.

    Hernan Oscanoa [email protected]

    Escrito con LA

    TEX2e

    4