Foro de elhacker.net

Programación => Programación C/C++ => Mensaje iniciado por: Enkthos en 17 Febrero 2016, 19:39 pm



Título: Duda sobre ejercicio de la universidad
Publicado por: Enkthos en 17 Febrero 2016, 19:39 pm
Hola a todos, soy nuevo en el foro, para comenzar quiero decir que soy estudiante de informática en Rusia, y bueno me han mandado una tarea y estoy con problemas para comprender (en parte por el idioma) así que quisiera que revisen el tema y me lo expliquen (el ejercicio viene con respuesta, y en ruso, lo he traducido :o)

--------------Ahí va----------------

Si el código  contiene errores de sintaxis y semántica en términos de C99, responder a 0. De lo contrario, escribir la suma de toda la rentabilidad posible los siguientes valores de la función. Las llamadas que conducen a errores de tiempo de ejecución,ignorar.
Tengamos en cuenta que el programa el programa está disponible en la memoria dinámica , N = tamaño de 1024 bytes. Se ejecuta en un equipo con 16 bits
arquitectura. Aritmética - modular (módulo 2^16). ---(No me pregunten por esta parte, traducida queda así)
El compilador traduce el programa exacto en lenguaje de máquina.


Código
  1.  
  2. #include<stdlib.h>
  3. struct list {
  4. int id;
  5. struct list *next, *prev;
  6. };
  7. int increasing(int x, int y) {
  8. int id = 0,i = y;
  9. struct list *p = 0;
  10. while (i++ < x) {
  11. struct list *n = malloc(sizeof(*n));
  12. if (!p) {
  13. p = n;
  14. } else {
  15. p->next = n;
  16. n->prev = p;
  17. p = p->next;
  18. }
  19. p->id = id++;
  20. }
  21. return id;
  22.  
  23. }

Respuesta: 14535.


Mod: Los códigos deben ir en etiquetas GeSHi


Título: Re: Duda sobre ejercicio de la universidad
Publicado por: MAFUS en 17 Febrero 2016, 21:32 pm
 :(
Está bien que nos traduzcas las palabras en ruso, pero no que también traduzcas el lenguaje de programación. Se puede rehacer como debería ser, pero te dejo este trabajo para ti. No está bien que pidas ayuda y no te molestes en dejar un código decente  :-\

Hecho esto, la verdad, sigo sin entender la base del problema.


Título: Re: Duda sobre ejercicio de la universidad
Publicado por: Enkthos en 17 Febrero 2016, 21:50 pm
 ;D Ya lo cambié, lo lamento de verdad, estaba de apuro, y aun sigo sin entender el código ....


Título: Re: Duda sobre ejercicio de la universidad
Publicado por: Zekkk en 18 Febrero 2016, 21:45 pm
Citar
escribir la suma de toda la rentabilidad posible los siguientes valores de la función

No entiendo esa parte, pero en todo caso lo que tienes es una lista doblemente enlazada y una funcion increasing que agrega x - y nodos a la lista


Título: Re: Duda sobre ejercicio de la universidad
Publicado por: MAFUS en 18 Febrero 2016, 23:30 pm
El código está bastante mal. Literalmente pierde memoria cada vez que la función se ejecuta. El fin de semana, si tengo algo de tiempo te daré la explicación extendida.
O si alguien quiere explicarle como hacer para solucionarlo, mucho mejor.