Está en la página 1de 10

UNIVERSIDAD ABIERTA Y A DISTANCIA DE

MÉ XICO
TSU EN DESARROLLO DE SOFTWARE

Diseñ o descendiente de
la programació n
Actividad 1
Avendaño Rodríguez Naud
ES1822029330

En el siguiente trabajo se desarrolló el seudocódigo y diagrama de flujo necesario para obtener


el rfc partiendo de datos ingresados por el usuario de nombre, apellidos y fecha de nacimiento.
Contenido
1. Introducción ____1
2. Desarrollo______1
3. Conclusión _____10
4. Bibliografía _____10

1. Introducción

El sistema de diseño descendente top-down, esta basado en la ideología, divide y vencerás o


simplemente partir el problema en pedazos para poder resolver cada pedazo y luego unirlos.

Cada pedazo de este problema en programación se llama modulo, y en conjunto este sistema se
conoce como programación modular, que simplifica la solución del problema cuando este se parte
en trozos o secciones. Según el programa que se este utilizando para programar estos módulos
pueden ser subrutinas o funciones, en algunos casos solo uno.

Partiendo de la idea de que se programara la solución del problema entonces surge la limitante
propia del lenguaje de programación para codificar el programa. Realmente no existe un método
único para dividir el problema, pero si se establece que mientras que las variables se necesiten
unas a otras esta deben de permanecer en el mismo modulo. También tomando en cuenta que
estas deben ser los más sencillas posibles.

La ventaja principal está en la programación de la solución del problema y es percibido por el


programador, puesto que el programa debe de obtener una solución, y esta será la misma que si
se hubiera hecho todo junto. De tal manera que la principal ventaja que percibe el programador
esta en la mayor legibilidad.

Por otra parte el RFC es una clave del registro federal de contribuyentes que se compone de letras
y números, las dos primeras letras del apellido paterno, la primera del apellido materno, la
primera del nombre, el día de nacimiento (si es menos a diez se antecede un cero), el mes de
nacimiento (al igual que en el día si es menor a 10 se antecede un cero), los dos últimos dígitos del
año de nacimiento y tres letras o números que son asignados aleatoriamente.

1. Desarrollo

Para el desarrollo de esta actividad y realización de seudocódigo y diagrama de flujo se empleo el


programa pseint. Se utilizaron cuatro funciones, una para determinar las cuatro primeras letras, la
segunda para determinar los siguientes 6 dígitos, otra para determinar la homoclave y una mas
para reunir todos los datos en una homoclave. En el programa principal solo se pide al usuario que
ingrese los datos de nombre, apellido paterno, apellido materno y fecha de nacimiento, el
programa principal también muestra el resultado.

La siguiente imagen muestra el diagrama de flujo del programa principal.


La siguiente imagen muestra el diagrama de flujo de la función para obtener los primeros cuatro
elementos del RFC.

La siguiente imagen muestra el diagrama de flujo de la función para obtener los elementos del 5°
al 10° del RFC.
La siguiente imagen muestra el diagrama de flujo de la función para obtener los últimos tres
elementos del RFC.
La siguiente imagen muestra el diagrama de flujo de la función juntar todos los elementos del RFC.
Finalmente el seudocogico es el siguiente

Funcion letras <- obtieneprimerasletras(nombre,app,apm)

Dimension letras[4]

nombre <- mayusculas(nombre)

app <- mayusculas(app)


apm <- mayusculas(apm)

Para i<-1 Hasta 2 Hacer

letras[i] <- app[i]

FinPara

letras[3] <- apm[1]

letras[4] <- nombre[1]

FinFuncion

Funcion fecha <- obtienelafechadenacimiento(di,mes,anno)

Dimension fecha[6],dia[2]

Para i<-1 Hasta 2 Hacer

fecha[i] <- dia[i]

FinPara

Para i<-1 Hasta 2 Hacer

fecha[i+2]<-mes[i]

FinPara

Para i<-1 Hasta 2 Hacer

fecha[i+4]<-anno[i+2]

FinPara

FinFuncion

Funcion homoclave <- obtienelahomoclave()

Dimension homoclave[4],abe[27]

abe[1] <- a

abe[2] <- b

abe[3] <- c
abe[4] <- d

abe[5] <- e

abe[6] <- f

abe[7] <- g

abe[8] <- h

abe[9] <- i

abe[10] <- j

abe[11] <- k

abe[12] <- l

abe[13] <- m

abe[14] <- n

abe[15] <- 'o'

abe[16] <- p

abe[17] <- q

abe[18] <- r

abe[19] <- s

abe[20] <- t

abe[21] <- u

abe[22] <- v

abe[23] <- w

abe[24] <- x

abe[25] <- 'y'

abe[26] <- z

Para i<-1 Hasta 4 Hacer

homoclave[i] <- abe[i*azar(6)]

FinPara
FinFuncion

Funcion rfc <- obtienelaclaverfc(homoclave,fecha,letras)

Dimension rfc[13]

rfc[1] <- letras[1]

rfc[2] <- letras[2]

rfc[3] <- letras[3]

rfc[4] <- letras[4]

rfc[5] <- fecha[1]

rfc[6] <- fecha[2]

rfc[7] <- fecha[3]

rfc[8] <- fecha[4]

rfc[9] <- fecha[5]

rfc[10] <- fecha[6]

rfc[11] <- homoclave[1]

rfc[12] <- homoclave[2]

rfc[13] <- homoclave[3]

FinFuncion

Algoritmo crearRFC

Dimension rfc[13]

Escribir 'ingrese nombre'

Leer nombre

Escribir 'ingrese apellido paterno'

Leer app

Escribir 'ingrese apellido materno'


Leer apm

Escribir 'ingrese fecha de nacimiento siga el siguiente ejemplo 01,01,1997: primero de


enero de 1997. en lugar de comas separe por enter'

Leer di,mes,anno

letras <- obtieneprimerasletras(nombre,app,apm)

fecha <- obtienelafechadenacimiento(di,mes,anno)

homoclave <- obtienelahomoclave()

rfc <- obtienelaclaverfc(homoclave,fecha,letras)

Escribir 'el RFC es el siguiente'

Para i<-1 Hasta 13 Hacer

Escribir rfc[i]

FinPara

FinAlgoritmo

Finalmente, el programa escribirá elemento a elemento el RFC.

2. Conclusión

La importancia de la programación modular radica en que será más fácil para el programador
realizarlo, pero será difícil puesto que tienen que ver la forma en que unirá los módulos.

3. Bibliografía

Metodología Top-down. (s.f.). Recuperado 25 marzo, 2020, de


http://163.10.22.82/OAS/modularizacion/metodologa_topdown.html

También podría gustarte