Práctica 2.

Para cualquier tema relacionado con la asignatura de EDI en cualquier titulación.

Práctica 2.

Notapor scm » Vie, 15 May 2009 10:14

¿Cómo hacéis el frente de la cola de operaciones: como función o como procedimiento? En clase lo hicimos como función, pero me parece que tiene que ser como procedimiento, porque si no, no hay manera(o por lo menos no sé) de acceder al campo instante de la cola.Gracias!

EDITO: Y cuando se leen las operaciones del fichero, ¿hay que ir imprimiéndolas y guardándolas en la cola o simplemente guardarlas en la cola e imprimirlas cuando se saquen de la cola?
Litle Pwagmattasquarmsettport
scm
Radament
 
Mensajes: 233
Registrado: Jue, 11 Sep 2008 23:36

Re: Práctica 2.

Notapor erKURITA » Vie, 15 May 2009 15:35

Una Cola es un tipo de dato que sigue una regla FIFO, que quiere decir First In, First Out (o First Input, First Output para el que prefiera). Esto quiere decir que las inserciones se hacen al final de la cola y el borrado se hace por el tope. O al revés, segun prefieras.

Frente hacerlo como funcion o como procedimiento, es indiferente. La unica diferencia que existe es que en uno tendras que devolver un dato y en otro tendras que pasar una variable como parametro, pero de alguna manera tienes que leer el elemento correspondiente no? ;)

scm escribió:EDITO: Y cuando se leen las operaciones del fichero, ¿hay que ir imprimiéndolas y guardándolas en la cola o simplemente guardarlas en la cola e imprimirlas cuando se saquen de la cola?


Leete la especificacion. Lo dice bien claro.
Avatar de Usuario
erKURITA
Colenzo el Aniquilador
erKARAJO
 
Mensajes: 2446
Registrado: Sab, 13 Sep 2008 10:43

Re: Práctica 2.

Notapor scm » Vie, 15 May 2009 22:47

erKURITA escribió:Una Cola es un tipo de dato que sigue una regla FIFO, que quiere decir First In, First Out (o First Input, First Output para el que prefiera). Esto quiere decir que las inserciones se hacen al final de la cola y el borrado se hace por el tope. O al revés, segun prefieras.

Frente hacerlo como funcion o como procedimiento, es indiferente. La unica diferencia que existe es que en uno tendras que devolver un dato y en otro tendras que pasar una variable como parametro, pero de alguna manera tienes que leer el elemento correspondiente no? ;)

scm escribió:EDITO: Y cuando se leen las operaciones del fichero, ¿hay que ir imprimiéndolas y guardándolas en la cola o simplemente guardarlas en la cola e imprimirlas cuando se saquen de la cola?


Leete la especificacion. Lo dice bien claro.


Creo que, o no me expliqué bien, o no me entendiste. En cualquier caso no importa, ya lo solucioné :), de todas maneras, gracias. Y lo de la última pregunta entiendo que hay que imprimir las operaciones según se vayan sacando de la cola y procesando.
Litle Pwagmattasquarmsettport
scm
Radament
 
Mensajes: 233
Registrado: Jue, 11 Sep 2008 23:36

Re: Práctica 2.

Notapor elmadno » Dom, 17 May 2009 19:26

Como función y los datos por referencia. Devuelve Boolean
elmadno
Cuervo Frío
 
Mensajes: 125
Registrado: Mar, 30 Sep 2008 21:12

Re: Práctica 2.

Notapor alvarito » Lun, 18 May 2009 22:52

wenas, en el principal tengo una duda, segun nos lee operaciones.txt "instante" lo lee como un string en cambio en las estructuras de datos lo define como un integer(no se para que ya que creo que no hay que realizar ninguna operacion con el).

bueno en el caso que haya que pasar el instante=string a un integer creo que existia una funcion, alguien sabe como es??

alguien sabe si se puede poner directamente en los TADs en que venga como integer, cambiar y poner string?

graciñas xD
EDITO: acabo de volver a leer y si que hace falta irle sumando al instante que llevamos nosotros en el programa uno por tanto me interesa lo de la funcion
y nada maaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaa a a a a a aaaaaaaaaaaaaaaaaaaaaaaaaaaaassssss
Avatar de Usuario
alvarito
Cuervo Frío
 
Mensajes: 110
Registrado: Lun, 01 Oct 2007 21:59
Ubicación: A Coruña

Re: Práctica 2.

Notapor erKURITA » Mar, 19 May 2009 20:58

alvarito escribió:wenas, en el principal tengo una duda, segun nos lee operaciones.txt "instante" lo lee como un string en cambio en las estructuras de datos lo define como un integer(no se para que ya que creo que no hay que realizar ninguna operacion con el).

bueno en el caso que haya que pasar el instante=string a un integer creo que existia una funcion, alguien sabe como es??

alguien sabe si se puede poner directamente en los TADs en que venga como integer, cambiar y poner string?

graciñas xD
EDITO: acabo de volver a leer y si que hace falta irle sumando al instante que llevamos nosotros en el programa uno por tanto me interesa lo de la funcion


No hombre, declaralo como Integer y te ahorras un par de dolores de cabeza. Ademas te lo pone expreso

TAD ListaMensajes, Tipos escribió:● tInstante Instante de tiempo (integer).


Pero como te va a hacer falta una funcion para convertir de Integer a String para poder imprimirlo, pues ya te las doy: IntToStr y StrToInt
Avatar de Usuario
erKURITA
Colenzo el Aniquilador
erKARAJO
 
Mensajes: 2446
Registrado: Sab, 13 Sep 2008 10:43

Re: Práctica 2.

Notapor scm » Mar, 19 May 2009 22:25

alvarito escribió:wenas, en el principal tengo una duda, segun nos lee operaciones.txt "instante" lo lee como un string en cambio en las estructuras de datos lo define como un integer(no se para que ya que creo que no hay que realizar ninguna operacion con el).

bueno en el caso que haya que pasar el instante=string a un integer creo que existia una funcion, alguien sabe como es??

alguien sabe si se puede poner directamente en los TADs en que venga como integer, cambiar y poner string?

graciñas xD
EDITO: acabo de volver a leer y si que hace falta irle sumando al instante que llevamos nosotros en el programa uno por tanto me interesa lo de la funcion


Ahora mismo hablo de memoria, pero creo que utilicé una función que se llama val.
Litle Pwagmattasquarmsettport
scm
Radament
 
Mensajes: 233
Registrado: Jue, 11 Sep 2008 23:36

Re: Práctica 2.

Notapor alvarito » Sab, 23 May 2009 14:30

hola, gracias por las respuestas al final hice un Instante:=StrtoInt(Inst); y listo



ahora queria que alguien que ya tubiera hecha la practica pusiera aki sus resultados para comparar, bueno yo pongo como me queda a mi la multilista y la lista de mensajes al finalizar:

Código: Seleccionar todo
LA MULTILISTA DE ANTENAS QUEDA DE EL SIGUIENTE MODO
----------------------------------------------------------------------------------------------

Antena Antena1 Numero 622439876 Operador Yoigo
Antena Antena1 Numero 625897412 Operador Movistar
Antena Antena2 Numero 643213416 Operador Yoigo
(intro)

----------------------------------------------------------------------------------------------
LISTA DE MENSAJES SIN ENVIAR

SMS de numero 625897412 a numero 645223312 contenido hola, esto es una prueba

----------------------------------------------------------------------------------------------
FIN DEL PROGRAMA
y nada maaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaa a a a a a aaaaaaaaaaaaaaaaaaaaaaaaaaaaassssss
Avatar de Usuario
alvarito
Cuervo Frío
 
Mensajes: 110
Registrado: Lun, 01 Oct 2007 21:59
Ubicación: A Coruña

Re: Práctica 2.

Notapor erKURITA » Sab, 23 May 2009 14:57

alvarito escribió:hola, gracias por las respuestas al final hice un Instante:=StrtoInt(Inst); y listo



ahora queria que alguien que ya tubiera hecha la practica pusiera aki sus resultados para comparar, bueno yo pongo como me queda a mi la multilista y la lista de mensajes al finalizar:

Código: Seleccionar todo
LA MULTILISTA DE ANTENAS QUEDA DE EL SIGUIENTE MODO
----------------------------------------------------------------------------------------------

Antena Antena1 Numero 622439876 Operador Yoigo
Antena Antena1 Numero 625897412 Operador Movistar
Antena Antena2 Numero 643213416 Operador Yoigo
(intro)

----------------------------------------------------------------------------------------------
LISTA DE MENSAJES SIN ENVIAR

SMS de numero 625897412 a numero 645223312 contenido hola, esto es una prueba

----------------------------------------------------------------------------------------------
FIN DEL PROGRAMA


Yo tengo ya la practica hecha, cuando tenga el portatil en Linux te pasteo la salida final aqui.

EDIT:

Ya estoy, a ver:

Código: Seleccionar todo
Antena Antena1 Numero 622439876 Operador Yoigo
Antena Antena1 Numero 625897412 Operador Movistar
Antena Antena2 Numero 643213416 Operador Yoigo

SMS de numero 625897412 a numero 645223312 Contenido hola, esto es una prueba
Última edición por erKURITA el Dom, 24 May 2009 23:00, editado 1 vez en total
Avatar de Usuario
erKURITA
Colenzo el Aniquilador
erKARAJO
 
Mensajes: 2446
Registrado: Sab, 13 Sep 2008 10:43

Re: Práctica 2.

Notapor alvarito » Sab, 23 May 2009 17:04

erKURITA escribió:
alvarito escribió:hola, gracias por las respuestas al final hice un Instante:=StrtoInt(Inst); y listo



ahora queria que alguien que ya tubiera hecha la practica pusiera aki sus resultados para comparar, bueno yo pongo como me queda a mi la multilista y la lista de mensajes al finalizar:

Código: Seleccionar todo
LA MULTILISTA DE ANTENAS QUEDA DE EL SIGUIENTE MODO
----------------------------------------------------------------------------------------------

Antena Antena1 Numero 622439876 Operador Yoigo
Antena Antena1 Numero 625897412 Operador Movistar
Antena Antena2 Numero 643213416 Operador Yoigo
(intro)

----------------------------------------------------------------------------------------------
LISTA DE MENSAJES SIN ENVIAR

SMS de numero 625897412 a numero 645223312 contenido hola, esto es una prueba

----------------------------------------------------------------------------------------------
FIN DEL PROGRAMA


Yo tengo ya la practica hecha, cuando tenga el portatil en Linux te pasteo la salida final aqui.




ok, es ke no me apetece ir mirando komo tendria ke kedar ke es un koñazo.. y si eso podemos subir otros operaciones.txt cn los resultados para que la gente compruebe
y nada maaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaa a a a a a aaaaaaaaaaaaaaaaaaaaaaaaaaaaassssss
Avatar de Usuario
alvarito
Cuervo Frío
 
Mensajes: 110
Registrado: Lun, 01 Oct 2007 21:59
Ubicación: A Coruña

Re: Práctica 2.

Notapor scm » Dom, 24 May 2009 22:51

A mi me queda esto:

Código: Seleccionar todo
Antena Antena1 Número 622439876 Operador Yoigo
Antena Antena1 Número 625897412 Operador Movistar
Antena Antena2 Número 643213416 Operador Yoigo

SMS de número 625897412 a número 643213416 Contenido hola, esto es una prueba2
SMS de número 625897412 a número 645223312 Contenido hola, esto es una prueba


Pero no sé si está bien. ¿Alguien más para comparar?
Litle Pwagmattasquarmsettport
scm
Radament
 
Mensajes: 233
Registrado: Jue, 11 Sep 2008 23:36

Re: Práctica 2.

Notapor erKURITA » Dom, 24 May 2009 23:07

scm escribió:A mi me queda esto:

Código: Seleccionar todo
Antena Antena1 Número 622439876 Operador Yoigo
Antena Antena1 Número 625897412 Operador Movistar
Antena Antena2 Número 643213416 Operador Yoigo

SMS de número 625897412 a número 643213416 Contenido hola, esto es una prueba2
SMS de número 625897412 a número 645223312 Contenido hola, esto es una prueba


Pero no sé si está bien. ¿Alguien más para comparar?


Yo actualize el mio ya.

Lo siento, pero el tuyo no esta bien. Te digo porque:

Código: Seleccionar todo
**************************************************************************************************
  Instante 11 – Operación B: Número 687005266 – Operador  – Antena  – Receptor
**************************************************************************************************

**************************************************************************************************
  Baja de Abonado: Numero 687005266 Operador Movistar Antena Antena3
**************************************************************************************************

**************************************************************************************************
  Baja de Antena: Antena3
**************************************************************************************************

**************************************************************************************************
  Envío de Numero 625897412 a Numero 643213416 cancelado: tiempo de espera superado
**************************************************************************************************

**************************************************************************************************
  Instante 12 – Operación B: Número  – Operador  – Antena Antena3 – Receptor
**************************************************************************************************


El envio ese se hace en el instante 7. El instante maximo en el que se envia es en el instante 7+4 = 11. El receptor se crea en el instante 14, asi que antes de pasar al instante 12 ese mensaje se cancela.
Avatar de Usuario
erKURITA
Colenzo el Aniquilador
erKARAJO
 
Mensajes: 2446
Registrado: Sab, 13 Sep 2008 10:43

Re: Práctica 2.

Notapor scm » Dom, 24 May 2009 23:18

erKURITA escribió:
scm escribió:A mi me queda esto:

Código: Seleccionar todo
Antena Antena1 Número 622439876 Operador Yoigo
Antena Antena1 Número 625897412 Operador Movistar
Antena Antena2 Número 643213416 Operador Yoigo

SMS de número 625897412 a número 643213416 Contenido hola, esto es una prueba2
SMS de número 625897412 a número 645223312 Contenido hola, esto es una prueba


Pero no sé si está bien. ¿Alguien más para comparar?


Yo actualize el mio ya.

Lo siento, pero el tuyo no esta bien. Te digo porque:

Código: Seleccionar todo
**************************************************************************************************
  Instante 11 – Operación B: Número 687005266 – Operador  – Antena  – Receptor
**************************************************************************************************

**************************************************************************************************
  Baja de Abonado: Numero 687005266 Operador Movistar Antena Antena3
**************************************************************************************************

**************************************************************************************************
  Baja de Antena: Antena3
**************************************************************************************************

**************************************************************************************************
  Envío de Numero 625897412 a Numero 643213416 cancelado: tiempo de espera superado
**************************************************************************************************

**************************************************************************************************
  Instante 12 – Operación B: Número  – Operador  – Antena Antena3 – Receptor
**************************************************************************************************


El envio ese se hace en el instante 7. El instante maximo en el que se envia es en el instante 7+4 = 11. El receptor se crea en el instante 14, asi que antes de pasar al instante 12 ese mensaje se cancela.


Es cierto, tengo que revisarlo, gracias.

Una cosa de tu práctica: ¿no puede quedar una antena sin teléfonos? Es que en tu práctica al eliminar el único número que queda en la antena 3, das de baja la antena. Yo creo que eso no puede ser así, porque si no, no tendría ningún sentido la operación baja de antena.
Litle Pwagmattasquarmsettport
scm
Radament
 
Mensajes: 233
Registrado: Jue, 11 Sep 2008 23:36

Re: Práctica 2.

Notapor Shadark » Dom, 24 May 2009 23:29

Creo recordar que en las especificaciones pone que si se da de baja al último teléfono de una antena, se da de baja la antena, pero no estoy seguro (vagancia de comprobarlo). Y opino que cuando haces la baja de un teléfono deberías comprobar si es el último teléfono, en ese caso luego deberías hacer BajaAntena. Es decir, si tras borrar un teléfono esListaVacia la antena correspondiente, y luego llamar a BajaAntena.
Avatar de Usuario
Shadark
Nihlathak
Cosas.
 
Mensajes: 1813
Registrado: Jue, 23 Oct 2008 14:53
Ubicación: Shibuya/Shinjuku

Re: Práctica 2.

Notapor scm » Dom, 24 May 2009 23:40

Shadark escribió:Creo recordar que en las especificaciones pone que si se da de baja al último teléfono de una antena, se da de baja la antena, pero no estoy seguro (vagancia de comprobarlo). Y opino que cuando haces la baja de un teléfono deberías comprobar si es el último teléfono, en ese caso luego deberías hacer BajaAntena. Es decir, si tras borrar un teléfono esListaVacia la antena correspondiente, y luego llamar a BajaAntena.


Pero entonces, ¿por qué es posible esta operación: 12 B Antena3 en el ejemplo que nos dan? Si hubiera que dar de baja a una antena cuando se eliminan todos los teléfonos, entonces esta operación no tendría sentido, ¿no? No sé :?
Litle Pwagmattasquarmsettport
scm
Radament
 
Mensajes: 233
Registrado: Jue, 11 Sep 2008 23:36

Siguiente

Volver a 1º [EI/ETIS/ETIX] Estructura de Datos e da Información (EDI)

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 0 invitados

cron