.dsy:it. Pages (13): « First ... « 4 5 6 7 [8] 9 10 11 12 » ... Last »
Show 150 posts per page

.dsy:it. (http://www.dsy.it/forum/)
- Algoritmi e strutture dati (http://www.dsy.it/forum/forumdisplay.php?forumid=207)
-- Progetto "DIE HARD" (http://www.dsy.it/forum/showthread.php?threadid=39661)


Posted by nevRotico on 15-01-2010 23:11:

Esatto e quindi ho:
contenitori[cont][0] che contiene lo stato del contenitore e contenitori[cont][1] che contiene il livello massimo del contenitore :)

Ovviamente non potendo sapere a priori quanti contenitori verranno creati con il comando N contenitori viene allocato dinamicamente.


Posted by francescoo on 17-01-2010 01:18:

ciao a tutti,
vorrei chiedervi delle delucidazioni in merito alla funzione configurazioni (d):

mettiamo che io sono in 0[3] 5[5]
e d è 3

io devo stampare tutte le pox combinazioni che si possono trovare in 3 passi:
quindi come questo: svuota[2]-riempi[1]-travasa[1][2]
oppure stesse operazioni per d volte(ovviamente se possibile)e quindi non come l'esempio fatto sopra:
quindi riempi riempi riempi
svuota svuota scuota
travasa travasa travasa
??
spero di essermi spiegato..


Posted by palaz on 17-01-2010 12:34:

io ho fatto cosi:
se mi chiede con zero passi restituisco la configurazione base
con un passo faccio tutti i possibili casi quindi con i ltuo imput sarebbe 00 . 35 . 32
con due passi rifaro tutti i pasaggi un'altra volta ottenendo :
da 00: 30 . 05
da 35: nulla perche se no ripeterei configurazioni appena trovate dal passo 00
da 32: 02 . 35
e cosi via per ogni passo
con questo metodo l'imput del prof corrisponde....
spero di averti chiarito i dubbi :D


Posted by sko02 on 18-01-2010 08:40:

Raga vi spiego perché un array bidimensionale non è la struttura dati migliori (secondo la prof. Lonati):

code:
Per un numero abbastanza grande di contenitori non è detto che nella memoria ci sia abbastanza spazio (consecutivo) per l'allocazione della memoria necessaria per contenere l'intero array...

Io stò cercando di mettere a punto quello che secondo me è il miglior compromesso
e cioé un albero 2- e 3-nodi o il red-black ....
certo così i tempi di per la ricerca della posizione si allunga non è più immediato
come per un array ma almeno nel caso peggiore è log N per qualsiasi posizione

__________________
http://utenti.lycos.it/awo23/sko02.jpg


Posted by asterix07 on 18-01-2010 18:25:

ma il prototipo della funzione deve seguire quello del progetto o è a nostra discrezione? Mi spiego meglio:
Nel testo del progetto la funzione visualizza viene definita come
visualizza();
io ad esempio poso crearla come
visualizza( struct...);
(cioè passandogli un parmetro)


Posted by ste182 on 18-01-2010 19:27:

è a nostra discrezione..

__________________
Live Fast, Die Fun


Posted by ste182 on 18-01-2010 20:40:

ok ho risolto

__________________
Live Fast, Die Fun


Posted by arfish on 21-01-2010 11:43:

Ragazzi ma se i risultati del sono identici a quelli del prof. ma non nello stesso ordine??? Va bene lo stesso???


Posted by ste182 on 21-01-2010 15:27:

Originally posted by arfish
Ragazzi ma se i risultati del sono identici a quelli del prof. ma non nello stesso ordine??? Va bene lo stesso???

basta che siano giusti... l'ordine credo dipenda da come hai implementato le funzioni(ad esempio inserisci un nodo in testa anzichè in coda, quindi stampi in ordine inverso a quello del prof..):D

__________________
Live Fast, Die Fun


Posted by francescoo on 21-01-2010 16:03:

ciao,
dpo tutto mi sono accorto ora di avere un problema all'inizio..
nell'inserimento delle capacità io ho utilizzato un
while(getchar()!='\n')
{
se diverso da ' ' inserisco il valore nel vett
}

il problema è che usando il getchar il valore è un carattere che vado a inserire in un vett di caratteri che poi trasformo in intero..
il problema è che cosi facendo prende numero <10
perche se inserisco 10 il getchar me li prende come 2 numeri diversi..
quindi mi fa un cont da 1 e un cont da 0..
ho provato a fare sempre il while con il getchar e poi all'interno lo scanf ma si blocca..
help me..


Posted by ste182 on 21-01-2010 19:07:

Originally posted by francescoo
ciao,
dpo tutto mi sono accorto ora di avere un problema all'inizio..
nell'inserimento delle capacità io ho utilizzato un
while(getchar()!='\n')
{
se diverso da ' ' inserisco il valore nel vett
}

il problema è che usando il getchar il valore è un carattere che vado a inserire in un vett di caratteri che poi trasformo in intero..
il problema è che cosi facendo prende numero <10
perche se inserisco 10 il getchar me li prende come 2 numeri diversi..
quindi mi fa un cont da 1 e un cont da 0..
ho provato a fare sempre il while con il getchar e poi all'interno lo scanf ma si blocca..
help me..

io ho costruito una funzione così:
code:
leggi_input(vett *v){ int n,c; v->i=(int *)malloc(sizeof(int)); v->dim=0; while((c=getchar()) != '\n') { scanf ("%d", &n); v->i=(int *)realloc(v->i,(v->dim+1)*sizeof(int)); v->i[v->dim]=n; v->dim++; } } struct vett{ int dim; int i*; }

__________________
Live Fast, Die Fun


Posted by francescoo on 21-01-2010 19:45:

praticamente è quello che ho fatto anche io..
pero alcune volte va altre si blocca del tutto..viene fuori il messaggio di windows che si è bloccato..
dici che puo essere xke sbaglio nel deallocare?
qlcn sa il motivo di questo errore?


Posted by francescoo on 21-01-2010 21:31:

forse ho risolto..quando eseguivo la malloc non mettevo sizeof(int) e quindi probabilmente andava fuori..
puo essere questo il motivo per cui il programma si bloccava?


Posted by ste182 on 21-01-2010 23:55:

e cosa mettevi?? comunque nella malloc devi specificare la grandezza dell'area da allocare, quindi direi che sizeof è necessario :D

__________________
Live Fast, Die Fun


Posted by BeppeGoal on 22-01-2010 10:55:

Scusate, ho qualche dubbio...
- L'operazione "e", esiste, stampa sì o no a seconda che dalla configurazione attuale sia possibile o meno raggiungere una configurazione in cui almeno un contenitore ha livello k.

Almeno intende che sia minino k o "esattamente" k?

Per l'operazione "raggiungibile", invece, voi come l'avete interpretata? Sono fermo perché ho diverse ipotesi, ma non riesco a implementare in modo efficiente.


All times are GMT. The time now is 18:41. Pages (13): « First ... « 4 5 6 7 [8] 9 10 11 12 » ... Last »
Show all 185 posts from this thread on one page

Powered by: vBulletin Version 2.3.1
Copyright © Jelsoft Enterprises Limited 2000 - 2002.