Tarea 1

8
INSTUTITO TECNOLÓGICO DE ESTUDIOS SUPERIORES DE MONTERREY CAMPUS MONTERREY Métodos Computacionales en Ingeniería Tarea No. 1 David Tapia – A01138017 Luis Becerra – A00817996 Michel Romero – A00818452

description

Métodos

Transcript of Tarea 1

Page 1: Tarea 1

INSTUTITO TECNOLÓGICO DE ESTUDIOS SUPERIORES DE MONTERREY

CAMPUS MONTERREY

Métodos Computacionales en Ingeniería

Tarea No. 1

David Tapia – A01138017Luis Becerra – A00817996

Michel Romero – A00818452

Monterrey, N.L. a 30 de Enero de 2015

Page 2: Tarea 1

Problema 1.- Utilizando media palabra, 2 bytes, expresa los siguientes números con base binaria:

1542010

- 1682010

Nota: Los números negativos se deberán de manejar con el complemento a dos.

Problema 2.- Convierta el número con base decimal, que se presenta a continuación, en número con base binaria, octal y hexadecimal.

960328710

15420 0

7710 0

3855 1

1927 1

963 1

481 1

240 0

120 0

60 0

30 0

15 1

7 1

3 1

1 1

0 0

0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0

0 1 0 0 0 0 0 1 1 0 1 1 0 1 0 01 0 1 1 1 1 1 0 0 1 0 0 1 0 1 1

0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1

1 0 1 1 1 1 1 0 0 1 0 0 1 1 0 0

16820-16820

Complemento a 2

15420

Page 3: Tarea 1

Binario

0 0 0 0 0 0 0 0 1 0 0 1 0 0 1 0 1 0 0 0 1 0 0 0 1 1 0 1 0 1 1 1

Octal

0 0 0 0 0 0 0 0 1 0 0 1 0 0 1 0 1 0 0 0 1 0 0 0 1 1 0 1 0 1 1 1

Hexadecimal

0 0 0 0 0 0 0 0 1 0 0 1 0 0 1 0 1 0 0 0 1 0 0 0 1 1 0 1 0 1 1 1

9603287 1

4801643 1

2400821 1

1200410 0

600205 1

300102 0

150051 1

75025 1

37512 0

18756 0

9378 0

4689 1

2344 0

1172 0

586 0

293 1

146 0

73 1

36 0

18 0

9 1

4 0

2 0

1 1

0 0

4 4 5 0 4 3 2 7

9 2 8 8 D 7

Page 4: Tarea 1

Problema 3.- Realice las siguientes operaciones utilizando números con base binaria y compruebe el resultado:

Nota: Los números negativos se deberán de manejar con el complemento a dos.Problema 4.- El compilador de Fortran 95/2003 ofrece los procedimientos intrínsecos que se listan en la Tabla B-1. Para el caso de los logaritmos hay varias opciones. Consultando la tabla, indique el valor de la variable “Y” cuando se efectúan las instrucciones que se muestran a continuación:

PROGRAM EJERCICIO IMPLICIT NONE

REAL, PARAMETER :: PI=3.14159REAL :: X, YE, YOPEN(UNIT=5, FILE='RESUL.TXT', STATUS='UNKNOWN')

7892

5467

Complemento a 2

-5467

-3042

0 0 0 0 1 0 0 1 0 1 1 1 1 0 0 1

0 0 0 1 0 1 0 1 0 1 0 1 1 0 1 1

0 0 0 1 1 1 1 0 1 1 0 1 0 1 0 0

0 0 0 1 0 1 0 1 0 1 0 1 1 0 1 1

1 1 1 0 1 0 1 0 1 0 1 0 0 1 0 0

0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1

1 1 1 0 1 0 1 0 1 0 1 0 0 1 0 1

0 0 0 0 1 0 0 1 0 1 1 1 1 0 0 1

1 1 1 0 1 0 1 0 1 0 1 0 0 1 0 1

1 1 1 1 0 1 0 0 0 0 0 1 1 1 1 0

Page 5: Tarea 1

X=-15.0YE=9.0Y=YEIF(.NOT.(10.0 > (SIN(5.0+ALOG(-X**3))**0.3*4.0 &

+ALOG10(ABS(X/2.0)-5.0)*40.0))) Y=PI**5.0WRITE (5,10) X, YE, Y

10 FORMAT (3X, 'X = ', F10.6, /, & 3X, 'YE = ', F10.6, /, & 3X, 'Y = ', F10.6, /) END PROGRAM EJERCICIO

Tomando como referencia lo visto en clase, realizando las operaciones que están dentro de los

paréntesis más internos, se realizó lo siguiente:

SIN(5.0+ALOG(-X**3))**0.3*4.0+ALOG10(ABS(X/2.0)-5.0)*40.0)))

3375 -7.5

8.1241 7.5

13.1241 2.5 0.5292 0.3979 3.3049 15.9176

19.2225

Como 10 no es mayor que 19.2225, por tanto se genera un FALSE, sin embargo el comando “.NOT.”

niega esto y convierte la respuesta de la ecuación en un TRUE, y procede con el cálculo, por tanto el

valor de Y es el siguiente:

Y = (3.1416) * 5 = 306.0232

Problema 5.- Explique qué se obtiene en la variable “Resultado” cuando se realiza la siguiente instrucción:

Resultado=y**x

a) Cuando y=-15.0 y x=3

Por ser Y un valor REAL y X es un valor ENTERO, se realiza un cálculo ordinario de exponencial al

cubo, y el resultado sería el siguiente:

Page 6: Tarea 1

Resultado = (-15) ^ 3 = (-15) * (-15) * (-15) = -3375

b) Cuando y=-15.0 y x=3.01

Por ser tanto Y como X valores REALES, se encuentra una dificultad en la programación y con ello un

error en la ejecución debido a lo siguiente:

Resultado = y ^ x = e ^ (x * ln (y) )

Al no existir el logaritmo natural de un número real negativo, se produce el error en la ejecución.

Nota: Se recomienda ver la sección 2.6.5 Mixed Mode Arithmetic and Exponentiation del libro de texto: “Fortran 95/2003 for Scientists and Engineers” de Stephen J. Chapman.

Problema 6.- A partir de la filmina 75, del material de apoyo de la segunda sesión, aparecen las instrucciones que se usan para el manejo de archivos con datos. Usando el material que viene en la sección 5.5 de la tercera edición del libro: “Fortran 95/2003 for Scientists and Engineers” de Stephen J. Chapman, describa brevemente como se usan las instrucciones OPEN y CLOSE.

Comando Descripción

OPEN

Asocia un archivo específico en disco con una indicación i/o. OPEN (open_list):

UNIT: indica el número i/o asociado al archivo. UNIT=int_expr. FILE: indica el nombre del archivo que debe abrirse. FILE=char_expr. STATUS: indica el estatus del archivo que va a abrirse. STATUS=char_expr. :

OLD, NEW, REPLACE, SCRATCH, o UNKOWN. ACTION: indica si el archivo que se va a abrir sólo para lectura, escritura o ambas.

ACTION=char_expr. : READ, WRITE or READWRITE. IOSTAT: indica el nombre de una variable entera en donde el estatus de la

operación que se está realizando (éxito/error). IOSTAT=int_var. IOMSG (solo 2003): indica el nombre de una variable tipo caracter que va a

contener un mensaje si un error ocurre. IOMSG=chart_var.CLOSE Termina la asociación específica del archivo en disco con una indicación i/o