Sei sulla pagina 1di 7

Instituto Tcnico Jess Obrero

Programacin 4to ao Profesor: Luis Vallenilla

Registros
Definicin: Un registro es una estructura de datos hetergenea y esttica, que se almacena en memoria R !" Representacin Grfica:

Elementos de un registro: #am$os: son cada una de las caracter%sticas o atri&utos del registro" Pueden ser de diferente ti$os de datos

Sintaxis declarativa de un registro en pseudocdigo y C: Pseudocdigo '" (eclarar el modelo de cmo )a hacer el registro en la seccin *structuras de datos del $seudocdigo Registro +nom&re del registro, -i$odato nom&recam$o ' -i$odato nom&recam$o ' """ -i$odato nom&recam$o n

Instituto Tcnico Jess Obrero

Programacin 4to ao Profesor: Luis Vallenilla

.in registro /" (eclarar la )aria&le que mani$ular el registro, &ien sea en la seccin general o local $ara los su&$rogramas, de la siguiente manera Registro nom&redelregistro nom&re)aria&le engua!e C '"(eclarar el modelo del registro" 0e recomienda declararlo luego de los include struct nom&reregistro 1 ti$odato cam$o'2 ti$odato cam$o/2 """ ti$odato cam$on2 32 /"(eclarar las )aria&les que mani$ularn el registro" 4ay dos formas de hacerlo: .orma ': Luego de la lla)e de la declaracin del registro se colocan las )aria&les que lo mani$ularn antes del 2 .orma /: hacerlo en cualquier $arte del $rograma de la siguiente manera: struct nom&reregistro )aria&le2

Instituto Tcnico Jess Obrero

Programacin 4to ao Profesor: Luis Vallenilla

E!emplo declaracin de un registro en pseudocdigo y C:

Pseudocdigo C Declaracin del modelo del Registro Registro nomina struct nomina cadena nom&re entero largo cedula entero lista .in registro 32 Declaracin de las varia"les #ue manipularan al Registro Registro nomina 4to $orma %: Registro nomina 4to9 &'to()'to*+ $orma ,: struct nomina 'to()'to*+ (cceso a los campos de un registro: Para mani$ular los registros de&e reali:arse cam$o $or cam$o" La sinta;is $ara mani$ular un cam$o de un registro es la siguiente: Pseudocdigo: Varia&leregistro"cam$o #: Varia&leregistro"cam$o2 s% $artiendo de los e<em$los descritos anteriormente, si deseo almacenar el )alor '=644/// en la cedula del registro 4to , se har%a de la siguiente manera: Pseudocdigo: 4to "cedula >'=644/// #: 4to "cedula >'=644///2 1 char nom&re56782 long cedula2 int lista2

Registros en Su"programas:

Instituto Tcnico Jess Obrero

Programacin 4to ao Profesor: Luis Vallenilla

Los registros $ueden ser $asados $or )alor o $or referencia en un su&$rograma" 0i se desean $asar $or referencia de&e ante$onerse el ? antes del nom&re de la )aria&le ti$o registro" *<" )oid llenar @struct nomina ?$A

Programa Completo -include.stdio/01 -include.conio/01 -include.iostream/01 struct persona 2 c0ar nom"re3456+ c0ar apellido3456+ &+ void llenar7 struct persona 8p9 2 cout .. :;ntrodu<ca su nom"re: :+ cin 11 p/nom"re+ cout .. :;ntrodu<ca su apellido: :+ cin 11 p/apellido+ & & & main79 2 struct persona p+ llenar7p9+ escri"ir7p9+ getc079+ void escri"ir7 struct persona p9 2 cout .. :=om"re: : .. p/nom"re+ cout .. :(pellido: : .. p/apellido+

Registros (nidados: Los registros anidados son estructuras de datos en las cuales uno de los

Instituto Tcnico Jess Obrero

Programacin 4to ao Profesor: Luis Vallenilla

cam$os del registro, tam&iBn es un registro" #onsidere el siguiente caso: *n un registro $ersona se desea almacenar la siguiente informacin: nom&re, a$ellido y fecha nacimiento, siendo la fecha de nacimiento un cam$o com$uesto $or: d%a, mes y ao" La declaracin del modelo del registro tanto en $seudocdigo como en # ser%a la siguiente: Pseudocdigo C Declaracin del modelo del Registro Registro fecha struct fecha entero dia entero mes entero ayo .in registro Registro $ersona cadena nom&re cadena a$ellido registro fecha fechanac .in registro 32 struct persona 2 c0ar nom"re3456+ c0ar apellido3456+ struct fecha fec0anac &+ 1 int dia2 int mes2 int ayo2

C&sBr)ese como el cam$o fechanac del registro $ersona hace referencia a otro registro llamado fecha, com$uesto $or los cam$os d%a, mes y ayo" *s im$ortante resaltar que el orden de declaracin de un registro anidado es el siguiente: $rimero se declaran los registros mas internos y $or ultimo los mas e;ternos o $rinci$ales @siendo $or ello que $rimero se declara el registro fecha que es el registro mas interno y luego el registro $rinci$al o mas e;terno que $ara este caso es $ersonaA" Los cam$os del registro $ersona, siendo $ la )aria&le que mani$ula el registro, se mani$ula de la siguiente manera:

Instituto Tcnico Jess Obrero

Programacin 4to ao Profesor: Luis Vallenilla

Pseudocdigo $"nom&re $"a$ellido $"fechanac"dia $"fechanac"mes $"fechanac"ayo $"nom&re2 $"a$ellido2 $"fechanac"dia2 $"fechanac"mes2 $"fechanac"ayo2

Dtese que, en el caso del cam$o que este ti$o registro, $rimero se coloca el nom&re del cam$o $rinci$al y luego el nom&re del su&cam$o o cam$o del registro mas interno"

Programa Completo

-include.stdio/01 -include.conio/01 -include.iostream/01 struct fec0a 2 int dia+ int mes+ int ano+ &+ struct persona 2 c0ar nom"re3456+ c0ar apellido3456+ struct fecha fechan; &+ void llenar7 struct persona 8p9

void escri"ir7 struct persona p9 2 cout .. :=om"re: : .. p/nom"re ..endl+ cout .. :(pellido: : .. p/apellido ..endl+ cout .. :Dia de nacimiento: :

..p/fec0an/dia ..endl+ cout .. :>es de nacimiento: : .. p/fec0an/mes ..endl+ cout .. :(yo de nacimiento: : .. p/fec0an/ano ..endl+

& main79 2 struct persona p+ llenar7p9+

Instituto Tcnico Jess Obrero

Programacin 4to ao Profesor: Luis Vallenilla

2 cout .. :;ntrodu<ca su nom"re: :+ cin 11 p/nom"re+ cout .. :;ntrodu<ca su apellido: :+ cin 11 p/apellido+ cout .. :;ntrodu<ca su dia de nacimiento: :+ cin 11 p/fec0an/dia+ cout .. :;ntrodu<ca su mes de nacimiento: :+ cin 11 p/fec0an/mes+ cout .. :;ntrodu<ca su ayo de nacimiento: :+ cin 11 p/fec0an/ano+ & &

escri"ir7p9+ getc079+

Potrebbero piacerti anche