elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Estamos en la red social de Mastodon


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  colas
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: colas  (Leído 2,399 veces)
ponchado

Desconectado Desconectado

Mensajes: 5


Ver Perfil
colas
« en: 13 Marzo 2017, 00:17 am »

AYUDA: como le hago para que me pida los valores de la cola, me vaya mostrando los datos agregados y la cola



Código
  1. #include <stdio.h>
  2.  
  3. #define MAX_SIZE 50
  4.  
  5.  
  6. struct tcola
  7. {
  8.  int elems;
  9.  int entrada, salida;
  10.  int elementos[MAX_SIZE];
  11. };
  12.  
  13.  
  14. //Creación:
  15.  
  16. void crear(struct tcola *cola)
  17. {
  18.  cola->elems = cola->salida = cola->entrada = 0;
  19. }
  20.  
  21. //Función que devuelve verdadero si la cola está vacía:
  22.  
  23. int vacia(struct tcola *cola)
  24. {
  25.  return (cola->elems == 0);
  26. }
  27.  
  28. //Función que devuelve verdadero si la cola está llena:
  29.  
  30. int llena(struct tcola *cola)
  31. {
  32.  return (cola->elems == MAX_SIZE);
  33. }
  34.  
  35. //Encolado:
  36.  
  37. void encolar(struct tcola *cola, int elem)
  38. {
  39.  cola->elems++;
  40.  cola->elementos[cola->entrada++] = elem;
  41.  if (cola->entrada == MAX_SIZE)
  42.    cola->entrada = 0;
  43. }
  44.  
  45. //Desencolado:
  46.  
  47. void desencolar(struct tcola *cola, int *elem)
  48. {
  49.  cola->elems--;
  50.  *elem = cola->elementos[cola->salida++];
  51.  if (cola->salida == MAX_SIZE)
  52.    cola->salida = 0;
  53. }
  54.  
  55.  
  56.  
  57. int main(void)
  58. {
  59.  struct tcola cola;
  60.  int elem;
  61.  
  62.  crear(&cola);
  63.  if (vacia(&cola)) printf("\nCola vacia.");
  64.  if (llena(&cola)) printf("\nCola llena.");
  65.  encolar(&cola, 1);
  66.  desencolar(&cola, &elem);
  67.  return 0;
  68. }


· Los códigos deben ir en etiquetas GeSHi
>aquí las reglas del foro
-Engel Lex


« Última modificación: 13 Marzo 2017, 00:33 am por engel lex » En línea

Kenji-chan

Desconectado Desconectado

Mensajes: 104


Ver Perfil
Re: colas
« Respuesta #1 en: 13 Marzo 2017, 01:10 am »

supongo que el elemento a encolar es el int elem; que se encuera en la función main()
lo que tienes que hacer es pedir el dato del elemento antes de llamar a la funcion encolar(struct tcola *cola, int elem) pero recuerda que para encolar un elemento simpre tiene que ir al fina de la cola pero si la cola esta vacía lo colocas en la cabeza y ya pero en la linea 40 cola->elementos[cola->entrada++] = elem; te estas saltando la caveza de tu cola, y para desencolar simpre lo haremos con la caveza operamos y luego la eliminamos pero tu lo único que haces es reducir el valor de la variable que contiene el tamaño de la cola


« Última modificación: 13 Marzo 2017, 01:30 am por Kenji-chan » En línea

ponchado

Desconectado Desconectado

Mensajes: 5


Ver Perfil
Re: colas
« Respuesta #2 en: 13 Marzo 2017, 01:41 am »

me ayudas a corregirlo, lo he intendo por horas y no puedo
En línea

Kenji-chan

Desconectado Desconectado

Mensajes: 104


Ver Perfil
Re: colas
« Respuesta #3 en: 13 Marzo 2017, 01:51 am »

sabes lo que es la memoria dinámica??
En línea

ponchado

Desconectado Desconectado

Mensajes: 5


Ver Perfil
Re: colas
« Respuesta #4 en: 13 Marzo 2017, 02:20 am »

si, si se que es, tengo que definir, no se por ejemplo el tamaño que me reserva en la memoria para la cola?
« Última modificación: 13 Marzo 2017, 02:21 am por ponchado » En línea

Kenji-chan

Desconectado Desconectado

Mensajes: 104


Ver Perfil
Re: colas
« Respuesta #5 en: 13 Marzo 2017, 03:10 am »

entonces te paso unos vídeos que enseñan a hacer colas

colas teoria
https://www.youtube.com/watch?v=6i2f6k5PPjs&index=5&list=PLTd5ehIj0goMTSK7RRAPBF4wP-Nj5DRvT

colas implementacion
https://www.youtube.com/watch?v=nicbZo7sI_w&index=6&list=PLTd5ehIj0goMTSK7RRAPBF4wP-Nj5DRvT
En línea

ponchado

Desconectado Desconectado

Mensajes: 5


Ver Perfil
Re: colas
« Respuesta #6 en: 13 Marzo 2017, 03:38 am »

es que el programa ya es para mañana :(
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
cOLAS EN JAVa
Java
arbeluc 1 6,153 Último mensaje 14 Mayo 2004, 23:51 pm
por Ragnarok
colas simples
Programación C/C++
nevfuck 2 6,016 Último mensaje 2 Octubre 2010, 13:28 pm
por Gerik
Ayuda con colas en C++
Programación C/C++
edgar_areyes 0 5,287 Último mensaje 28 Noviembre 2010, 05:42 am
por edgar_areyes
Colas en C++
Programación C/C++
JesusIII 4 3,441 Último mensaje 21 Abril 2016, 14:29 pm
por HardForo
colas
Programación C/C++
Beginner Web 0 1,434 Último mensaje 14 Octubre 2018, 00:19 am
por Beginner Web
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines