P8 DISEÑO DE PROGRAMAS PARTE 2

of 27 /27
UNIVERSIDAD NACIONAL AUTÓNOMA DE MÉXICO FACULTAD DE INGENIERÍA. LABORATORIO DE COMPUTACIÓN PARA INGENIEROS. DISEÑO DE PRGRAMAS PARTE II. 1 FECHA: 13 DE OCTUBRE DE 2011 IM PRÁCTICA: DISEÑO DE PROGRAMAS PARTE I Profesor: Ing. Juan Angel Rodríguez Gómez. 1. Resumen La práctica realizada es una continuación de lo efectuado en la práctica anterior, sobre la realización de algoritmos para la resolución de diagramas de flujo, con sus respectivos diagramas de flujo y pruebas de escritorio. A diferencia de la práctica anterior, se nos fueron asignados los ejercicios propuestos pares. Es necesario mencionar que los diagramas hechos muestran ciertas estructuras de control, ya sea de decisión y repetición; dichas estructuras se describirán muy brevemente. Estructuras de control: Selectivas o de decisión: Las estructuras selectivas se utilizan para tomar decisiones. El mecanismo de acción evalúa una condición y a continuación en función del resultado, se lleva a cabo una opción u otra. Repetitivas: También reciben el nombre de bucle. Controlan un conjunto de instrucciones que deben repetirse cierto número de veces, mientras se cumple una condición que ha de ser claramente especificada. Básicamente, existen tres tipos de estructuras repetitivas: o Mientras” (While) o Repetir hasta” (do…until) o “Desde” (For) Finito. EQUIPO 1 NOMBRE NÚMERO DE CUENTA. ARISTEO MILLAN JAQUELIN 309041304 CASAS ALQUICIRA PERSEO DANIEL 309125736 FLORES FLORES RODRIGO 412002384 ROSAS RAYA MIGUEL ANGEL 412053348

Transcript of P8 DISEÑO DE PROGRAMAS PARTE 2

Page 1: P8 DISEÑO DE PROGRAMAS PARTE 2

UNIVERSIDAD NACIONAL AUTÓNOMA DE MÉXICO FACULTAD DE INGENIERÍA.

LABORATORIO DE COMPUTACIÓN PARA INGENIEROS. DISEÑO DE PRGRAMAS PARTE II.

1

FECHA: 13 DE OCTUBRE DE 2011

IM

PRÁCTICA: DISEÑO DE PROGRAMAS PARTE I

Profesor: Ing. Juan Angel Rodríguez Gómez.

1. Resumen La práctica realizada es una continuación de lo efectuado en la práctica anterior, sobre la realización de algoritmos para la

resolución de diagramas de flujo, con sus respectivos diagramas de flujo y pruebas de escritorio. A diferencia de la práctica anterior, se nos fueron asignados los ejercicios propuestos pares. Es necesario mencionar que los diagramas hechos muestran ciertas estructuras de control, ya sea de decisión y repetición;

dichas estructuras se describirán muy brevemente. Estructuras de control:

Selectivas o de decisión: Las estructuras selectivas se utilizan para tomar decisiones. El mecanismo de acción evalúa una

condición y a continuación en función del resultado, se lleva a cabo una opción u otra.

Repetitivas: También reciben el nombre de bucle. Controlan un conjunto de instrucciones que deben repetirse cierto

número de veces, mientras se cumple una condición que ha de ser claramente especificada. Básicamente, existen tres tipos

de estructuras repetitivas:

o “Mientras” (While)

o “Repetir hasta” (do…until)

o “Desde” (For) Finito.

EQUIPO 1

NOMBRE NÚMERO DE CUENTA. ARISTEO MILLAN JAQUELIN 309041304

CASAS ALQUICIRA PERSEO DANIEL 309125736

FLORES FLORES RODRIGO 412002384

ROSAS RAYA MIGUEL ANGEL 412053348

Page 2: P8 DISEÑO DE PROGRAMAS PARTE 2

UNIVERSIDAD NACIONAL AUTÓNOMA DE MÉXICO FACULTAD DE INGENIERÍA.

LABORATORIO DE COMPUTACIÓN PARA INGENIEROS. DISEÑO DE PRGRAMAS PARTE II.

2

FECHA: 13 DE OCTUBRE DE 2011

IM

2. Desarrollo (Ejercicios propuestos pares) 2.2 Calcular el n-ésimo número de Fibonacci.

1) Inicio

2) ingresar número.

3) El número debe ser mayor o igual que dos para pasar a

l paso 4, si no lo es regresar al paso 2 hasta accesar un dato válido.

4) Aplicar la formula con operadores propios del teorema de Fibonacci.

5) Fin

Prueba de escritorio

1) Inicio

2) 2

3)Es igual a 2

4) 1

5) Final

Page 3: P8 DISEÑO DE PROGRAMAS PARTE 2

UNIVERSIDAD NACIONAL AUTÓNOMA DE MÉXICO FACULTAD DE INGENIERÍA.

LABORATORIO DE COMPUTACIÓN PARA INGENIEROS. DISEÑO DE PRGRAMAS PARTE II.

3

FECHA: 13 DE OCTUBRE DE 2011

IM

2.4 Calcular el cociente de la división entera de dos números naturales.

Algoritmo. 1. Inicio 2. Ingresar primer número 3. Leer valor n 4. Ingresar segundo número 5. Leer valor d 6. Realizar la operación n/d 7. Mostrar el resultado “c”. 8. Fin

Prueba de escritorio

1. Inicio 2. Ingresar primer número 3. n=8 4. Ingresar segundo número 5. d=4 6. 8/4 7. 2 8. Fin

Page 4: P8 DISEÑO DE PROGRAMAS PARTE 2

UNIVERSIDAD NACIONAL AUTÓNOMA DE MÉXICO FACULTAD DE INGENIERÍA.

LABORATORIO DE COMPUTACIÓN PARA INGENIEROS. DISEÑO DE PRGRAMAS PARTE II.

4

FECHA: 13 DE OCTUBRE DE 2011

IM

2.6 Calcular la suma de los dígitos pares de un número natural.

1. Inicio

2. Número ∈ N

3. “Escribe un número “

4. Pide el numero

5. Si el número es natural continúa, de lo

contrario pídelo de nuevo hasta que lo sea.

6. Separa el numero en dígitos

7. Divide cada digito entre 2, si el resultado es

un entero guarda el dígito original sino,

asígnale valor 0 y guárdalo. Repite este paso

igual número de veces como dígitos tenga el

número.

8. Suma los dígitos guardados.

9. Muestra el resultado de la suma.

10. Fin

Prueba de escritorio

1. Inicio

2. Número ∈ N

3. “Escribe un número “

4. 5789

5. continua

6. 5- 4- 8- 9

7. 5/2= 2.50 4/2=24 8/2=48 9/2=

4.50

x ∈ N

“Escribe un

número”

x

x ∈ Separa x en sus dígitos

Divide cada digito entre 2

xn/2 ∈

Z

x/n 0

guárdalo

Suma los resultados

resultado

fin

inicio

Page 5: P8 DISEÑO DE PROGRAMAS PARTE 2

UNIVERSIDAD NACIONAL AUTÓNOMA DE MÉXICO FACULTAD DE INGENIERÍA.

LABORATORIO DE COMPUTACIÓN PARA INGENIEROS. DISEÑO DE PRGRAMAS PARTE II.

5

FECHA: 13 DE OCTUBRE DE 2011

IM

2.8 Calcular la longitud de una circunferencia a partir de su radio. (Usar la fórmula C=2rπ)

𝑨 = 𝝅𝑹𝒂𝒅𝒊𝒐𝟐

Radio

Inicio

“Dame el valor del

radio”.

“La longitud de la

circunferencia es”; P

1

1

Fin r

r

r>0

P= (3.1416)2r

SI NO

ALGORITMO 1) Inicio

2) Pedir el valor del radio

3) Si el radio es mayor a cero, proseguir al paso

4; en caso contrario regresar al paso 2.

4) Efectuar la operación P=3.1416(2r).

5) Mostar el resultado de la operación del paso

5.

6) Fin.

Prueba de escritorio. Dado r=3

1) Inicio

2) r=3

3) ¿X>0?SI. Proseguir al paso 4

4) Efectuar la operación P=3.1416(2)(3).

5) El resultado es 18.8496

6) Fin.

Page 6: P8 DISEÑO DE PROGRAMAS PARTE 2

UNIVERSIDAD NACIONAL AUTÓNOMA DE MÉXICO FACULTAD DE INGENIERÍA.

LABORATORIO DE COMPUTACIÓN PARA INGENIEROS. DISEÑO DE PRGRAMAS PARTE II.

6

FECHA: 13 DE OCTUBRE DE 2011

IM

2.10 Dado un número natural, devolver el número resultante de invertir el orden de sus dígitos. 1) Inicio

2) ingresar número.

3) El número debe ser natural para pasar al paso 4, si no lo es

regresar al paso 2 hasta accesar un dato válido.

4) Invertir digitos

5) Fin

Prueba de escritorio

1) Inicio

2) 23

3) Es natural

4) 32

5) Fin

Page 7: P8 DISEÑO DE PROGRAMAS PARTE 2

UNIVERSIDAD NACIONAL AUTÓNOMA DE MÉXICO FACULTAD DE INGENIERÍA.

LABORATORIO DE COMPUTACIÓN PARA INGENIEROS. DISEÑO DE PRGRAMAS PARTE II.

7

FECHA: 13 DE OCTUBRE DE 2011

IM

2.12 Determinar si un número natural representa un número binario, es decir, está compuesto sólo de

0’s y 1’s. Algoritmo y prueba de escritorio

Algoritmo 1. Inicio 2. Ingresar 3 números 3. A, B, C 4. Si A es diferente a 0 pasar al paso 5, si no escribir “no es binario” 5. Si A es igual a 1 pasar al paso 6, si no escribir “no es binario” 6. Si B es igual a 0 escribir “es binario”, si c= 0 escribir “es binario”, si c=1 escribir “es binario” si no escribir “No es

binario” y pasar al paso 10 7. Si B es igual a 1 pasar al paso 8, si no escribir “no es binario” 8. Si C=0 escribir “es binario” si no pasar al paso 9 9. Si C=1 escribir “es binario” si no escribir “No es binario” 10. Fin

Prueba de escritorio

1. Inicio 2. Ingresar 3 números 3. 1, 0, 1 4. ¿A=0? No, pasar al paso 5 5. ¿A=1? Si, pasar al paso 6 6. ¿B=0? Si, ¿C=0? No, ¿C=1? Si, pasar al paso 10 10. Fin

Page 8: P8 DISEÑO DE PROGRAMAS PARTE 2

UNIVERSIDAD NACIONAL AUTÓNOMA DE MÉXICO FACULTAD DE INGENIERÍA.

LABORATORIO DE COMPUTACIÓN PARA INGENIEROS. DISEÑO DE PRGRAMAS PARTE II.

8

FECHA: 13 DE OCTUBRE DE 2011

IM

Diagrama

Page 9: P8 DISEÑO DE PROGRAMAS PARTE 2

UNIVERSIDAD NACIONAL AUTÓNOMA DE MÉXICO FACULTAD DE INGENIERÍA.

LABORATORIO DE COMPUTACIÓN PARA INGENIEROS. DISEÑO DE PRGRAMAS PARTE II.

9

FECHA: 13 DE OCTUBRE DE 2011

IM

2.14 Calcular el área de un rectángulo a partir de su base y altura.

1. Inicio

2. b y a ∈ R+

3. “da una base b y una altura a, separadas por una

coma”

4. Pide b,a

5. Si b, a ∈ R+ continua, sino pídelas hasta que lo

sean.

6. Multiplica b por a

7. Muestra el producto

8. Fin

Prueba de escritorio

1. Inicio

2. b y a ∈ R+

3. “da una base b y una altura a, separadas por una

coma”

4. 14, -3

5. Pide de nuevo 14, 3 continua

6. 14*3

7. 42

8. Fin

inicio

b y a ∈ R+

“Da una base b y una

altura a”

b, a

b y a ∈ R+

a x b

resultado

fin

Page 10: P8 DISEÑO DE PROGRAMAS PARTE 2

UNIVERSIDAD NACIONAL AUTÓNOMA DE MÉXICO FACULTAD DE INGENIERÍA.

LABORATORIO DE COMPUTACIÓN PARA INGENIEROS. DISEÑO DE PRGRAMAS PARTE II.

10

FECHA: 13 DE OCTUBRE DE 2011

IM

PRUEBA DE ESCRITORIO. Dado r=3 y h=2

1) Inicio

2) r=3

3) ¿r>0? SI. Al paso 4

4) h=2

5) ¿h>0? SI. Al paso 6

6) Efectuar V=3.1416( )(2)

7) El valor del volumen es: 56.54

8) Fin.

2.16 Calcular el volumen de un cilindro a partir del radio de la base y la altura (Hacer uso de la fórmula

)

2V r h

“Dame el valor del

radio”. h>0

1

1

Fin

r

r

“Dame el valor

de la altura”

SI

NO r>0

h

Inicio

h

“El valor del volumen

es”; V

NO

SI

ALGORITMO 1) Inicio

2) Pedir el valor del radio

3) Si el radio es mayor a cero, proseguir al paso 4;

en caso contrario regresar al paso 2.

4) Pedir el valor de la altura.

5) Si la altura es mayor a cero proseguir al paso 6,

en caso contrario regresar al paso 4.

6) Efectuar la operación:

7) Imprimir el valor del volumen.

8) Fin.

Page 11: P8 DISEÑO DE PROGRAMAS PARTE 2

UNIVERSIDAD NACIONAL AUTÓNOMA DE MÉXICO FACULTAD DE INGENIERÍA.

LABORATORIO DE COMPUTACIÓN PARA INGENIEROS. DISEÑO DE PRGRAMAS PARTE II.

11

FECHA: 13 DE OCTUBRE DE 2011

IM

2.18 Calcular la distancia entre dos puntos. (sea 1 1 1( , )P a b y

2 2 2( , )P a b , hacer uso de 2 2

1 2 1 2( ) ( )D a a b b )

1) Inicio

2) Ingresar dos pares de números

3) Los pares deben ser de la forma (x,y), siendo el primer número

la coordenada en X, el segundo la coordenada en Y, si no califica r

egresar al paso 2, si sí lo hace pasar al paso 4.

4) El primer par es el punto 1 y el segundo es el punto 2..

5) Aplicar fórmula

6) Fin

Prueba de escritorio

1) Inicio

2) (0,0) (0,1)

3) Son dos pares coordenados de la forma requerida.

4) (0,0) es P1 y (0,1) es P2

5) 1 unidad

6) Fin

Page 12: P8 DISEÑO DE PROGRAMAS PARTE 2

UNIVERSIDAD NACIONAL AUTÓNOMA DE MÉXICO FACULTAD DE INGENIERÍA.

LABORATORIO DE COMPUTACIÓN PARA INGENIEROS. DISEÑO DE PRGRAMAS PARTE II.

12

FECHA: 13 DE OCTUBRE DE 2011

IM

1. Inicio

2. Definir las variables donde x ∈ R, caracteres permitidos: “-” y

“.”

3. Escribir variable x

4. Leer el variable x

5. Si el número esta expresado solo en caracteres numéricos

(siendo solo validos los símbolo “-” para expresar números

negativos y “.” para cantidades decimales) pasar al número

6, en caso contrario regresar al paso 3 y mostrar “ERROR”.

6. Identificar el número de dígitos que componen al número

mediante la sustitución y separación con comas, de cada

carácter numérico con valores que pertenezcan a los

números naturales iniciando desde el 1 y continuando con la

sucesión natural de estos, de izquierda a derecha, desde el

primer hasta el último, siendo el ultimo número natural el

equivalente al número total de dígitos.

7. Tomar el digito original al que le fue asignado el número 1 en

la sustitución.

8. Imprimir el digito obtenido en el paso 7.

9. Fin

inicio

x ∈ R

Escribir X

Leer x

X, valores

permitidos

Identificar número de dígitos, y asignarle un número a cada

uno, de manera sucesiva de izquierda a derecha

Tomar el digito original al que le fue asignado

el número 1 en la sustitución.

Imprimir el número obtenido en el

paso 7

fin

si

no

ERROR

Prueba de escritorio

1. Inicio

2. x ∈ R

3. Escribir -35.678

4. x= -35.678

5. -35.678, solo caracteres permitidos.

6. -35.678 => 1,2,3,4,5

7. 1 corresponde a -3

8. Imprimir -3

9. Fin

2.20 Imprimir el primer dígito de un número: p.e. 645, imprime 6.

Page 13: P8 DISEÑO DE PROGRAMAS PARTE 2

UNIVERSIDAD NACIONAL AUTÓNOMA DE MÉXICO FACULTAD DE INGENIERÍA.

LABORATORIO DE COMPUTACIÓN PARA INGENIEROS. DISEÑO DE PRGRAMAS PARTE II.

13

FECHA: 13 DE OCTUBRE DE 2011

IM

1. Inicio

2. Definir las variables donde x ∈ R, caracteres permitidos: “-” y “.”

3. Escribir variable x

4. Leer el variable x

5. Si el número esta expresado solo en caracteres numéricos (siendo

solo validos los símbolo “-” para expresar números negativos y

“.” para cantidades decimales) pasar al número 6, en caso

contrario regresar al paso 3 y mostrar “ERROR”.

6. Identificar el número de dígitos que componen al número

mediante la sustitución y separación con comas, de cada carácter

numérico con valores que pertenezcan a los números naturales

iniciando desde el 1 y continuando con la sucesión natural de

estos, de derecha a izquierda, desde el primer hasta el último,

siendo el último número natural el equivalente al número total de

dígitos.

7. Tomar el digito original al que le fue asignado el número 1 en la

sustitución.

8. Imprimir el digito obtenido en el paso 7.

inicio

x ∈ R

Escribir X

Leer x

X, valores

permitidos

Identificar número de dígitos, y asignarle un número a cada

uno, de manera sucesiva de derecha a izquierda

Tomar el digito original al que le fue asignado el

número 1 en la sustitución.

Imprimir el número obtenido en el

paso 7

fin

si

no

ERROR

Prueba de escritorio

1. Inicio

2. x ∈ R

3. -78.9002

4. X=-78.9002

5. -78.9002, solo caracteres permitidos, pasar al paso 4

6. -78.9002 => 6, 5, 4, 3, 2, 1

7. 1 corresponde a 2

8. Imprimir 2

9. Fin

2.22 Imprimir el último dígito de un número: p.e. 456, imprime 6.

Page 14: P8 DISEÑO DE PROGRAMAS PARTE 2

UNIVERSIDAD NACIONAL AUTÓNOMA DE MÉXICO FACULTAD DE INGENIERÍA.

LABORATORIO DE COMPUTACIÓN PARA INGENIEROS. DISEÑO DE PRGRAMAS PARTE II.

14

FECHA: 13 DE OCTUBRE DE 2011

IM

Prueba de Escritorio. 1) Inicio 2) X=3 3) ¿X>0? SI. Ir al paso 4. 4) Y=1 5) ¿Y>0? SI. Ir al paso 6 6) ¿X>Y? SI. Ir al paso 7

7) Efectuar la operación

8) El resultado de C=3. ¿Pertenece C a los números naturales? SI. Imprimir que “3” es múltiplo de “1”.

9) Fin.

2.24 Leer dos números y verificar si el primero es múltiplo del segundo.

ALGORITMO 1) Inicio 2) Dame el valor de un número. 3) Si el número dado e mayor a cero, ir al paso 4, en

caso contrario regresar al paso 2. 4) Dame el valor de otro número. 5) Si el segundo número dado es mayor que cero, ir

al paso 6, en caso contrario regresar al paso 4. 6) Si el primer número es mayor que el segundo ir al

paso 7, en caso contrario pedir un primer número mayor que el segundo.

7) Efectuar la operación 8) Si “c” pertenece a los números naturales; imprimir

que el primer número es múltiplo del segundo, en caso contrario, imprimir que el primero no es múltiplo del segundo.

9) Fin.

Page 15: P8 DISEÑO DE PROGRAMAS PARTE 2

UNIVERSIDAD NACIONAL AUTÓNOMA DE MÉXICO FACULTAD DE INGENIERÍA.

LABORATORIO DE COMPUTACIÓN PARA INGENIEROS. DISEÑO DE PRGRAMAS PARTE II.

15

FECHA: 13 DE OCTUBRE DE 2011

IM

2.26 Dadas 2 fechas, expresadas como tres números naturales, determinar si la primera es cronológicamente menor que la segunda.

1. Inicio

2. x, y, z, a, b, c ∈ N

3. Ingresar las fechas x/y/z y a/b/c, donde las fechas cumplan

el formato día/mes/año

4. Comparar c y z

5. Si c > z mostrar “x/y/z es cronológicamente menor a a/b/c” y

pasar al paso 10, si c < z mostrar “x/y/z NO es

cronológicamente menor a a/b/c” y pasar al paso 10, si c=z

pasar al paso 6.

6. Comparar b y y

7. Si b > y mostrar “x/y/z es cronológicamente menor a a/b/c”

y pasar al paso 10, si b < y mostrar “x/y/z NO es

cronológicamente menor a a/b/c” y pasar al paso 10, si b=y

pasar al paso 8.

8. Comparar a y x

9. Si a > x mostrar “x/y/z es cronológicamente menor a a/b/c”

y pasar al paso 10, si a < x mostrar “x/y/z NO es

cronológicamente menor a a/b/c” y pasar al paso 10, si c=z

mostrar “x/y/z es cronológicamente idéntico a a/b/c”

10. Fin

Prueba de escritorio

1. Inicio 2. x, y, z, a, b, c ∈ N 3. 05/08/2011 y 20/08/2011 4. 2011 y 2012 5. 2012 = 2011, pasar al paso 6 6. 08 y 08 7. 08= 08, pasar al paso 8 8. 20 y 05 9. 20> 05, mostrar “05/08/2011 < 20/08/2011” 10. Fin

Page 16: P8 DISEÑO DE PROGRAMAS PARTE 2

UNIVERSIDAD NACIONAL AUTÓNOMA DE MÉXICO FACULTAD DE INGENIERÍA.

LABORATORIO DE COMPUTACIÓN PARA INGENIEROS. DISEÑO DE PRGRAMAS PARTE II.

16

FECHA: 13 DE OCTUBRE DE 2011

IM

2.28 Leer un número y verificar si es positivo , negativo o neutro. Algoritmo y prueba de escritorio Diagrama

Algoritmo 1. Inicio 2. Insertar un número 3. Leer valor de N 4. Si N=0 escribir “Neutro” y pasar al paso 6, en caso

contrario pasar al paso 5 5. Si N>0 escribir “Positivo”, en caso contrario escribir

“Negativo”. 6. Fin.

Prueba de escritorio: N=-8

1. Inicio 2. Insertar un número 3. N=-8 4. ¿N=0? NO, al paso 5 5. ¿N>0? NO, escribir “Negativo”. 6. Fin

N=63 1. Inicio 2. Insertar un número 3. N=63 4. ¿N=0? NO, al paso 5 5. ¿N>0? SI, escribir “Positivo”. 6. Fin

Page 17: P8 DISEÑO DE PROGRAMAS PARTE 2

UNIVERSIDAD NACIONAL AUTÓNOMA DE MÉXICO FACULTAD DE INGENIERÍA.

LABORATORIO DE COMPUTACIÓN PARA INGENIEROS. DISEÑO DE PRGRAMAS PARTE II.

17

FECHA: 13 DE OCTUBRE DE 2011

IM

2.30 Devolver el dígito más significativo de un número natural.

1. Inicio

2. X ∈ N

3. “escribe un número”

4. Pide X

5. Si X ∈ N, continua, sino, pídelo hasta que lo sea.

6. Dividir x en sus dígitos

7. Mostrar el digito que se encuentre en el extremo

izquierdo

8. Fin

Prueba de escritorio

1. Inicio

2. X ∈ N

3. “escribe un número”

4. 4958309

5. continua

6. 4-9-5-8-3-0-9

7. 9

8. Fin

inicio

X ∈ N

“Da x”

x

X ∈ N

Dividir x en sus dígitos

Muestra el digito del

extremo izquierdo

fin

Page 18: P8 DISEÑO DE PROGRAMAS PARTE 2

UNIVERSIDAD NACIONAL AUTÓNOMA DE MÉXICO FACULTAD DE INGENIERÍA.

LABORATORIO DE COMPUTACIÓN PARA INGENIEROS. DISEÑO DE PRGRAMAS PARTE II.

18

FECHA: 13 DE OCTUBRE DE 2011

IM

ALGORITMO 1) Inicio

2) Dame el valor de un número “X”

3) Si el número dado es igual a 0,

regresar al paso 2. En caso contrario ir

al paso 4.

4) Si x>0 Imprimir que X es un número

positivo. En caso contrario, imprimir

que “x” es un número negativo.

5) Fin.

Prueba de escritorio. Dado X=2

1) Inicio

2) X=2

3) ¿X=0? NO. Ir al paso 4

4) ¿X>0? SI. Imprimir que “X” es número

positivo.

5) Fin.

2.32 Leer un número y verificar si es positivo o negativo.

Page 19: P8 DISEÑO DE PROGRAMAS PARTE 2

UNIVERSIDAD NACIONAL AUTÓNOMA DE MÉXICO FACULTAD DE INGENIERÍA.

LABORATORIO DE COMPUTACIÓN PARA INGENIEROS. DISEÑO DE PRGRAMAS PARTE II.

19

FECHA: 13 DE OCTUBRE DE 2011

IM

2.34 Leer un número y verificar si es par o impar. 1) Inicio

2) Ingresar número

3) Si el carácter introducido no es un número regresar al paso 2, si lo es pasar al paso 4

4) Dividir el número entre dos

5) Si existe residuo pasar es impar, si no lo hay es par.

6) Fin

Prueba de escritorio

1) Inicio

2) 3

3) Es un número

4) 3/2

5) Residuo 1, es impar.

6) Fin

Page 20: P8 DISEÑO DE PROGRAMAS PARTE 2

UNIVERSIDAD NACIONAL AUTÓNOMA DE MÉXICO FACULTAD DE INGENIERÍA.

LABORATORIO DE COMPUTACIÓN PARA INGENIEROS. DISEÑO DE PRGRAMAS PARTE II.

20

FECHA: 13 DE OCTUBRE DE 2011

IM

2.36 Calcular las soluciones de un polinomio de segundo grado.

Algoritmo y prueba de escritorio Diagrama

Algoritmo 1. Inicio 2. Programa para resolver un polinomio de segundo

grado por la formula general. 3. Inserte los coeficientes A, B, C 4. A, B, C 5. Realizar las operaciones: (-B+SQRT(B^2-

4*A*C))/(2*A)=X1 y (-B-SQRT(B^2-4*A*C))/(2*A)=X2 6. Mostrar resultados X1 y X2 7. Fin

Prueba de escritorio

1. Inicio 2. Programa para resolver un polinomio de segundo

grado por la formula general. 3. Inserte los coeficientes A, B, C 4. 1, 2, 1 5. Realizar las operaciones: (-2+SQRT(2^2-

4*1*1))/(2*1)=X1 y (-2-SQRT(2^2-4*1*1))/(2*1)=X2 6. X1= -1 y X2= -1 7. Fin

Page 21: P8 DISEÑO DE PROGRAMAS PARTE 2

UNIVERSIDAD NACIONAL AUTÓNOMA DE MÉXICO FACULTAD DE INGENIERÍA.

LABORATORIO DE COMPUTACIÓN PARA INGENIEROS. DISEÑO DE PRGRAMAS PARTE II.

21

FECHA: 13 DE OCTUBRE DE 2011

IM

2.38 Leer 3 números A,B y C(A<C) y verificar si C se encuentra entre Ay B

2 Inicio

3 A<C

4 “ingresa 3 números A,B, C. A<C”

5 Pide A, B, C

6 Si A<C continua, de lo contrario pídelo de nuevo hasta que lo

sea.

7 Resta C de B, si el resultado es positivo muestra “ C está

entre B y A”, sino muestra “ C no está entre B y A”.

8 Fin

Prueba de escritorio

1. Inicio

2. A<C

3. “ingresa 3 números A,B, C. A<C”

4. 22, 5, 14

5. Pide de nuevo -2, 14, 5continua

6. 5 – 14= -9 muestra “C no se encuentra entre A y

B”

7. Fin

B - C

“ C está

entre B y A”

fin

inicio

A<C

“Da A, B, C”

A, B, C

A<C

“ C no está

entre B y A” B – C =

n+

Page 22: P8 DISEÑO DE PROGRAMAS PARTE 2

UNIVERSIDAD NACIONAL AUTÓNOMA DE MÉXICO FACULTAD DE INGENIERÍA.

LABORATORIO DE COMPUTACIÓN PARA INGENIEROS. DISEÑO DE PRGRAMAS PARTE II.

22

FECHA: 13 DE OCTUBRE DE 2011

IM

2.40 Leer 3 números e imprimir el mayor.

ALGORITMO 1) Inicio

2) Leer el valor de 3 números. (x,y,z)

3) Si x>=y además de que x>=z. Imprimir que el

número mayor es “x” e ir al final. En caso

contrario ir al paso 4.

4) Si y>=x además de que y>=z. Imprimir que el

número mayor es “y” e ir al final. En caso

contrario, imprimir que el mayor de los

números es “z”.

5) Fin

PRUEBA DE ESCRITORIO. Dado x=3 y=2 z=1

1) Inicio

2) X=3 Y=2 Z=1

3) ¿X>=Y además de que X>=Z? SI. Imprimir que

“3” es el número mayor.

4) Fin.

PRUEBA DE ESCRITORIO. Dado X=2 Y=3 Z=1

5) Inicio

6) X=2 Y=3 Z=1

7) ¿X>=Y además de que X>=Z? NO. Ir al paso 4.

8) ¿Y>=X además de que Y>=Z? SI. Imprimir que

“3” es el número mayor.

9) Fin.

Page 23: P8 DISEÑO DE PROGRAMAS PARTE 2

UNIVERSIDAD NACIONAL AUTÓNOMA DE MÉXICO FACULTAD DE INGENIERÍA.

LABORATORIO DE COMPUTACIÓN PARA INGENIEROS. DISEÑO DE PRGRAMAS PARTE II.

23

FECHA: 13 DE OCTUBRE DE 2011

IM

2.42 Leer 3 números y mostrarlo en orden ascendente. 1) Inicio

2) Ingresar tres números

3) Si no se ingresan tres números de la forma (N1, N2, N3) regresar al paso 2, si sí califica pasar al paso 4.

4) Ordenar.

5) Fin

Prueba de escritorio

1) Inicio

2) (1,2,3)

3) Son tres números de la forma requerida

4) (1,2,3)

5) Fin

Page 24: P8 DISEÑO DE PROGRAMAS PARTE 2

UNIVERSIDAD NACIONAL AUTÓNOMA DE MÉXICO FACULTAD DE INGENIERÍA.

LABORATORIO DE COMPUTACIÓN PARA INGENIEROS. DISEÑO DE PRGRAMAS PARTE II.

24

FECHA: 13 DE OCTUBRE DE 2011

IM

2.44 Leer 2 números e imprimir el menor menos el mayor.

Algoritmo y prueba de escritorio Diagrama

Algoritmo 7. Inicio 8. Programa para restar dos números 9. Insertar dos números 10. num1, num2 11. Si num1<num2 realizar la operación:

num1-num2=c en caso contrario realizar la operación: num2-num1=c.

12. Mostrar “c” 13. Fin

Prueba de escritorio

1. Inicio

2. Programa para restar dos números

3. Insertar dos números

4. 1,8

5. ¿num1<num2? SI, 1-8

6. -7

7. Fin

Page 25: P8 DISEÑO DE PROGRAMAS PARTE 2

UNIVERSIDAD NACIONAL AUTÓNOMA DE MÉXICO FACULTAD DE INGENIERÍA.

LABORATORIO DE COMPUTACIÓN PARA INGENIEROS. DISEÑO DE PRGRAMAS PARTE II.

25

FECHA: 13 DE OCTUBRE DE 2011

IM

2.46 Leer 2 números y verificar si son divisibles, o el resultado no existe, o es infinito.

2 Inicio

3 x y y ∈ Z

4 “escribe 2 números x, y”

5 Pide x, y

6 Si x y y ∈ Z continua, sino pide hasta que lo sean

7 Efectuar x/y, si el resultado es un entero,

continuar, de lo contrario verificar si el producto no

existe, si no existe mostrar “no existe” sino verificar

si el resultado tiende a infinito, si lo es mostrar “es

infinito” y terminar, sino mostrar “no es divisible,

existe y no tiende a infinito” y terminar.

8 Efectuar y/x, si el resultado es un entero, terminar,

de lo contrario verificar si el producto no existe, si

no existe mostrar “no existe” sino verificar si el

resultado tiende a infinito, si lo es mostrar “es

infinito” y terminar, sino mostrar “no es divisible,

existe y no tiende a infinito”

9 Fin

Prueba de escritorio

1. Inicio

2. x y y ∈ Z

3. “escribe 2 números x, y”

4. 16, 25

5. Continua

6. 16/25= 0.64 0.64∃ 0.64 ≠ ∞

mostrar “no es divisible, existe y no

tiende a infinito”

7. No se realiza

8. Fin

x/y = ∞?

inicio

x y y ∈ Z

“escribe 2 numeros x,

y”

x y y ∈ Z

x/y

x/y ∈

Z

x/y ∃?

x/y

“no

existe”

x/y= ∞ “es

infinito”

1 2“ninguna de las

anteriores”

Page 26: P8 DISEÑO DE PROGRAMAS PARTE 2

UNIVERSIDAD NACIONAL AUTÓNOMA DE MÉXICO FACULTAD DE INGENIERÍA.

LABORATORIO DE COMPUTACIÓN PARA INGENIEROS. DISEÑO DE PRGRAMAS PARTE II.

26

FECHA: 13 DE OCTUBRE DE 2011

IM

y/x ∈ Z y/x∃?

y/x ∃ “no

existe”

x/y= ∞ “es

infinito”

1

2

y/x y = ∞?

fin

“ninguna de las anteriores”

“son

divisibles”

Page 27: P8 DISEÑO DE PROGRAMAS PARTE 2

UNIVERSIDAD NACIONAL AUTÓNOMA DE MÉXICO FACULTAD DE INGENIERÍA.

LABORATORIO DE COMPUTACIÓN PARA INGENIEROS. DISEÑO DE PRGRAMAS PARTE II.

27

FECHA: 13 DE OCTUBRE DE 2011

IM

3 Conclusión

La habilidad para elaborar algoritmos y diagramas de flujo se vio mejorada al efectuar esta segunda práctica sobre los temas mencionados. Creemos que tenemos la capacidad para abordar el siguiente tema, el cual es la programación en lenguaje C.

4 Cuestiones o Dudas.

Las dudas aparecieron durante el ejercicio número 12, el cual era verificar si un número natural representa un número binario. Por

lo que necesitamos de toda la concentración del equipo en dicho problema. En este problema solo pudimos realizarlo analizando

un numero de tres dígitos, y no pudimos hacerlo con “n” dígitos.

5 Glosario Estructuras de control: Tienen una finalidad bastante simple: Señalar el orden en que tienen que sucederse los pasos de un algoritmo.

6 Bibliografía y mesografía.

Estructuras de Control (5 screen). Disponible en URL: http://prof.usb.ve/mvillasa/compcient/estructuras.pdf Consultado: Octubre

6, 2011

Solorzano P. Fernando. Introducción a la Programación Estructurada y al Lenguaje C(Tomo II)(en español). Facultad de Ingeniería-UNAM, 1995.

Fuentes Vicente. Prácticas de laboratorio de la Asignatura.(Volumen único)(en español). Facultad de Ingeniería UNAM, 2005