Download - Algoritmos y Estructura de Datos

Transcript
Page 1: Algoritmos y Estructura de Datos

ALGORITMOS FASE II ALGORITMOS Y ESTRUCTURAS DE DATOS

ACTIVIDAD INDIVIDUAL

VIANNEY FAVIAN MARIÑO JULIO

PRESENTADO A:

ERNESTO ORLANDO PARRA CAÑON

TUTOR DEL CURSO

GRUPO: 301303_151

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA

BARRANQUILLA, 04 DE OCTUBRE DEL 2015

Page 2: Algoritmos y Estructura de Datos

2. Es necesario realizar un algoritmo que funcione como una calculadora con las 4 funciones básicas (opcional puede incluir otra función). El algoritmo termia y entrega el resultado al presionar la tecla “=” Diagrama pseint

Pantalla de ejecución del programa

Page 3: Algoritmos y Estructura de Datos

Comentario o análisis de la ejecución del programa

Proceso CALCULADORA

Escribir 'calculadora con las 4 funciones básicas' ; mensaje para ambientar al usuario

Escribir 'Ingrese el primer número ; ingresa primera variable

Leer num1 ; guarda variable

Escribir 'Ingrese el segundo número' ; ingresa segunda variable

Leer num2 ; guarda variable

Repetir ; repite el mensaje hasta que se presione =

Escribir 'Presione = para conocer el resultado'

Leer igual

Hasta Que igual='='

Si num2=0 Entonces ; división por cero

Escribir 'La division es indeterminada !!no es posible dividir por cero'

Sino ; muestra el resultado de la división

Escribir 'La division es igual a ',num1/num2

FinSi

Escribir 'La Suma es igual a ',num1+num2 ; muestra los resultados

Escribir 'La resta es igual a ',num1-num2

Escribir 'La Multiplicación es igual a ',num1*num2

FinProceso ; fin

3. Se requiere que solo con la utilización de ciclos y condicionales, usted pueda convertir un número decimal < a 5000 a número Romano Diagrama pseint

Page 4: Algoritmos y Estructura de Datos
Page 5: Algoritmos y Estructura de Datos

Pantalla de ejecución del programa

Comentario o análisis de la ejecución del programa

Proceso conversor_Decimal_a_Romano Escribir 'Este programa convierte números decimales a romanos menores a 5000' ; mensaje para ambientar al usuario

Escribir 'ingrese el numero decimal que desea convertir' Leer numero ; guarda variable

sepuedeconvertir<-Verdadero Si numero=0 Entonces Escribir 'No existe ningún símbolo para representar el CERO en sistema numérico Romano' sepuedeconvertir<-Falso FinSi Si numero<>trunc(numero) Entonces Escribir 'Se convierte números enteros' sepuedeconvertir<-Falso FinSi Si numero>5000 Entonces Escribir 'El número es mayor a 5000' sepuedeconvertir<-Falso FinSi Si numero<0 Entonces Escribir 'El número entero debe ser positivo' sepuedeconvertir<-Falso FinS ; se garantiza que el número cumpla las condiciones para ser convertido Si sepuedeconvertir Entonces Si numero=5000 Entonces Escribir '_' Escribir 'V' Sino Dimension nu(10),nd(10),nc(10),num(10) nu(1)<-('') nu(2)<-('I') nu(3)<-('II')

Page 6: Algoritmos y Estructura de Datos

nu(4)<-('III') nu(5)<-('IV') nu(6)<-('V') nu(7)<-('VI') nu(8)<-('VII') nu(9)<-('VIII') nu(10)<-('IX') nd(1)<-('') nd(2)<-('X') nd(3)<-('XX') nd(4)<-('XXX') nd(5)<-('XL') nd(6)<-('L') nd(7)<-('LX') nd(8)<-('LXX') nd(9)<-('LXXX') nd(10)<-('XC') nc(1)<-('') nc(2)<-('C') nc(3)<-('CC') nc(4)<-('CCC') nc(5)<-('CD') nc(6)<-('D') nc(7)<-('DC') nc(8)<-('DCC') nc(9)<-('DCCC') nc(10)<-('CM') num(1)<-('') num(2)<-('M') num(3)<-('MM') num(4)<-('MMM') num(5)<-('IV') ; se realiza la equivalencia para cada número

unidadesdemil<-trunc(numero/1000) MOD 10 centenas<-trunc(numero/100) MOD 10 decenas<-trunc(numero/10) MOD 10 unidades<-numero MOD 10 ; se verifica si esté en decenas centenas o unidades Si numero>=4000 Entonces Escribir '__' num(1)<-('') num(2)<-('M') num(3)<-('MM') num(4)<-('MMM') num(5)<-('IV') ;para números mayores o iguales a 4000 FinSi Escribir num(unidadesdemil+1),nc(centenas+1),nd(decenas+1),nu(unidades+1) FinSi FinSi FinProceso

Page 7: Algoritmos y Estructura de Datos

4. Debe desarrollar un algoritmo que contenga el siguiente menú

(1) Convertir de Decimal a Binario

(2) Convertir de Decimal a Octal

(3) Convertir de Binario a Decimal

(4) Salir

Diagrama pseint

Pantalla de ejecución del programa

Page 8: Algoritmos y Estructura de Datos

Comentario o análisis de la ejecución del programa

Proceso Conversor_Sistema_numérico

Repetir

Escribir (1),' Convertir de Decimal a Binario'

Escribir (2),' Convertir de Decimal a Octal'

Escribir (3),' Convertir de Binario a Decimal'

Escribir (4),' Salir'

Leer Menu

Si Menu=1 Entonces

Escribir 'Ingrese número decimal para convertirlo a

binario'

Leer x

Si x>0 Entonces

c<-x

i<-1

bin<-0

Mientras c<>1 Hacer

bin<-bin+(c MOD 2)*i

c<-trunc(c/2)

i<-i*10

FinMientras

bin<-bin+(c MOD 2)*i

Escribir 'El número en binario es ',bin

Escribir

'*******************************************************'

Escribir 'ingrese la conversión que desea realizar'

FinSi

Sino

Si Menu=2 Entonces

Escribir 'Digite número decimal'

Leer dec

oct<-0

i<-0

Page 9: Algoritmos y Estructura de Datos

Repetir

r<-dec MOD 8

oct<-oct+10^i*r

i<-i+1

dec<-trunc(dec/8)

Hasta Que dec<8

res<-oct+10^i*dec

Escribir 'El número en Octal es ',res

Escribir

'*******************************************************'

Escribir 'ingrese la conversión que desea realizar'

Sino

Si Menu=3 Entonces

Escribir 'Ingrese Número Binario para

convertirlo en decimal'

Leer num

Mientras num>0 Hacer

Si num>0 Entonces

coci<-num

re<-1

decimal<-0

Mientras coci<>1 Hacer

decimal<-

decimal+(coci MOD 10)*re

coci<-trunc(coci/10)

re<-(re*2)

FinMientras

decimal<-decimal+((coci

MOD 10)*re)

Escribir 'el número en

decimal es ',decimal

Escribir

'*******************************************************'

Escribir 'ingrese la

conversión que desea realizar'

Page 10: Algoritmos y Estructura de Datos

FinSi

num<--1

FinMientras

FinSi

FinSi

FinSi

Hasta Que Menu=4

FinProceso