Duda sobre ejercicio de la universidad

Iniciado por Enkthos, 17 Febrero 2016, 19:39 PM

0 Miembros y 2 Visitantes están viendo este tema.

Enkthos

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 (cpp) [Seleccionar]


#include<stdlib.h>
struct list {
int id;
struct list *next, *prev;
};
int increasing(int x, int y) {
int id = 0,i = y;
struct list *p = 0;
while (i++ < x) {
struct list *n = malloc(sizeof(*n));
if (!p) {
p = n;
} else {
p->next = n;
n->prev = p;
p = p->next;
}
p->id = id++;
}
return id;

}


Respuesta: 14535.


Mod: Los códigos deben ir en etiquetas GeSHi

MAFUS

 :(
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.

Enkthos

 ;D Ya lo cambié, lo lamento de verdad, estaba de apuro, y aun sigo sin entender el código ....

Zekkk

Citarescribir 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

MAFUS

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.