Dsy Network www | forum | my | didattica | howto | wiki | el goog | stats | blog | dona | rappresentanti
Homepage
 Register   Calendar   Members  Faq   Search  Logout 
.dsy:it. : Powered by vBulletin version 2.3.1 .dsy:it. > Didattica > Corsi A - F > Algoritmi e strutture dati > Progetto "Componenti Elettroniche"
Pages (9): « 1 2 [3] 4 5 6 7 » ... Last »   Last Thread   Next Thread
Author
Thread    Expand all | Contract all    Post New Thread    Post A Reply
Collapse
lux87
.Padrino.

User info:
Registered: Dec 2007
Posts: 15 (0.00 al dì)
Location:
Corso: informatica
Anno: 3++
Time Online: 7:12:39 [...]
Status: Offline

Post actions:

Edit | Report | IP: Logged

ragazzi volevo un aiuto: un consiglio su come fare ad inserire nel main i comandi "o" ed "l" (seconda e quarta riga della tabella).
grazie

31-05-2010 21:24
Click Here to See the Profile for lux87 Click here to Send lux87 a Private Message Find more posts by lux87 Add lux87 to your buddy list Printer Friendly version Email this Article to a friend Reply w/Quote
Collapse
carla86
.illuminato.

User info:
Registered: Dec 2006
Posts: 219 (0.03 al dì)
Location: Milano
Corso: Informatica
Anno: Terzo
Time Online: 6 Days, 21:40:54 [...]
Status: Offline

Post actions:

Edit | Report | IP: Logged

Una domanda ke vi può sembrare idiota, ma in qst momento sono alla frutta...

Nella funzione ordina e nella funzione lineare il numero dei parametri non è specificato, potrebbero essere 2, come 3, come 4; giusto?
allora come fate nel leggere l'input?
nel case 'o' e nel case 'l' cosa fate, prima un ciclo ke vi conti quanti parametri avete e poi un ciclo ke ve li memorizza in un array? oppure mi sfugge qualche funzione o modo più immediato x sapere il numero dei parametri?

grazie mille

31-05-2010 21:58
Click Here to See the Profile for carla86 Click here to Send carla86 a Private Message Find more posts by carla86 Add carla86 to your buddy list Printer Friendly version Email this Article to a friend Reply w/Quote
Collapse
carla86
.illuminato.

User info:
Registered: Dec 2006
Posts: 219 (0.03 al dì)
Location: Milano
Corso: Informatica
Anno: Terzo
Time Online: 6 Days, 21:40:54 [...]
Status: Offline

Post actions:

Edit | Report | IP: Logged

Originally posted by Guepe
Per la disposizione lineare dopo un po di prove penso di aver capito il perchè scelga proprio quella anche se ne esistono altre con dimensione massima uguale ma ordine diverso di componenti.
Per l(2 7 17 24 26) sceglie il dispositivo formato dalle componenti che hanno maggior estensione e che soddisfano il criterio di linearità.
Ci sono 8 (se non mi sbaglio) possibili dispositivi lineari formati da:
c1 (L=4 E=12) posizioni possibili: 1°,2°,3°
c2 (L=6 E=12) posizioni possibili: 2°,3°
c3 (L=3 E=24) posizioni possibili: 1°,2°,3°
c5 (L=5 E=25) posizioni possibili: 1°,2°,3°
c6 (L=2 E=8) posizioni possibili: 4°
Dovendo avere estensione massima il dispositivo dovrà contenere per forza c5,c3 e uno tra c1 e c2 che hanno estensione uguale, ed ovviamente c6 che è l'unico a soddisfare il criterio linearità per l'ultima posizione.
Da una prima analisi, visto che nell'esempio diceva che le soluzioni possibili erano soltanto (c5,c1,c3,c6) e (c5,c2,c3,c6) ho pensato che scegliesse l'ordine dei componenti in base anche alla lunghezza di essi, infatti alla prima posizione sceglie c5, alla seconda sia c1 che c2 e alla terza c3 ma poi come soluzione finale nell'output sceglie (c5,c1,c3,c6) e quindi sto criterio va a farsi benedire....
bah pensavo di aver trovato una soluzione ma invece mi ritrovo punto a capo, quindi mi continuo a domandare perché proprio (c5,c1,c3,c6) è quella giusta quando

(c5,c2,c3,c6)
(c1,c3,c5,c6)
(c1,c5,c3,c6)
(c3,c2,c5,c6)
(c3,c5,c2,c6)
(c5,c3,c2,c6)
(c3,c1,c5,c6)

hanno estensione uguale e rispettano il criterio di linearità????


anke qui magari è una risposta stupida xo' ho fatto questo ragionamento:
siamo tutti daccordo ke x avere l'estensione massima deve per forza avere c5 e c3. poi l'unica che ci sta in posizione 4 è c6.
ora poteva scegliere tra c1 e c2 ma siccome sono tutte e due con estensione uguale ha scelto quella che è stata inserita x prima (in ordine lessicografico) e quindi c1?!
come ragionamento potrebbe essere o è una cavolata?

Alla fine voi come struttura x cosa avete optato? Io ho optato per un'albero red-black.

31-05-2010 22:02
Click Here to See the Profile for carla86 Click here to Send carla86 a Private Message Find more posts by carla86 Add carla86 to your buddy list Printer Friendly version Email this Article to a friend Reply w/Quote
Collapse
pirlo21
.arcimaestro.

User info:
Registered: Nov 2007
Posts: 352 (0.06 al dì)
Location:
Corso: informatica
Anno:
Time Online: 2 Days, 21:38:57 [...]
Status: Offline

Post actions:

Edit | Report | IP: Logged

Riguardo alla funzione lineare avevo posto lo stesso dubbio qualche giorno fa...bisogna capire il criterio di scelta tra le varie soluzioni...

Per la struttura dati anch'io ho usato un albero, però ora che sono alle prese con la funzione lineare non ne sono più molto convinto...
Infondo sto albero va bene solo per l'inserimento perchè per la funzione ordina e la funzione lineare è un casino...panico

31-05-2010 23:13
Click Here to See the Profile for pirlo21 Click here to Send pirlo21 a Private Message Find more posts by pirlo21 Add pirlo21 to your buddy list Printer Friendly version Email this Article to a friend Reply w/Quote
Collapse
Guepe
.fedelissimo.

User info:
Registered: Feb 2007
Posts: 54 (0.01 al dì)
Location: Milano
Corso: informatica F49
Anno: 3
Time Online: 1 Day, 10:04:49 [...]
Status: Offline

Post actions:

Edit | Report | IP: Logged

Originally posted by carla86
anke qui magari è una risposta stupida xo' ho fatto questo ragionamento:
siamo tutti daccordo ke x avere l'estensione massima deve per forza avere c5 e c3. poi l'unica che ci sta in posizione 4 è c6.
ora poteva scegliere tra c1 e c2 ma siccome sono tutte e due con estensione uguale ha scelto quella che è stata inserita x prima (in ordine lessicografico) e quindi c1?!
come ragionamento potrebbe essere o è una cavolata?

Alla fine voi come struttura x cosa avete optato? Io ho optato per un'albero red-black.


allora dovrebbe essere (c1,c3,c5,c6) la sequenza corretta se si guardasse l'ordine di inserimento, o anzi (c5,c3,c1,c6) seguendo prima l'ordine per estensione e in caso di ugualianza in base all'inserimento....

31-05-2010 23:28
Click Here to See the Profile for Guepe Click here to Send Guepe a Private Message Find more posts by Guepe Add Guepe to your buddy list Printer Friendly version Email this Article to a friend Reply w/Quote
Collapse
carla86
.illuminato.

User info:
Registered: Dec 2006
Posts: 219 (0.03 al dì)
Location: Milano
Corso: Informatica
Anno: Terzo
Time Online: 6 Days, 21:40:54 [...]
Status: Offline

Post actions:

Edit | Report | IP: Logged

scusa ma x la funzione ordina: conta ke lui ti da un tot d codici identificativi e se quei codici identificativi li trovi allora devi stamparglieli ordinati per costo..
forse x questo caso è meglio crearsi una lista d supporto dove ordinare i nodi ke hanno corrispondente codice identificativo e ke hai estratto dall'albero.

mi sai dire come fare a leggere un numero variabile di interi; ossia mi spiego meglio, nella funzione ordina (e neanche in quella lineare) non ti dice a priori quanti elementi ti darà...
come fai?
ad esempio nel comando
o 5 27 89 65
ti da 4 codici identificativi (ma potrebbe dartene 5 oppure 2 oppure 8) come fai?
se leggo un numero alla volta, faccio partire la funzione d ricerca nell'albero, se lo trova lo voglio mettere in un array di supporto cosi ke una volta trovati tutti li ordino x costo.
ma nn sapendo quanti sono posso ogni volta riallocare l'array di una posizione in più con la calloc?
voi come fate?

31-05-2010 23:33
Click Here to See the Profile for carla86 Click here to Send carla86 a Private Message Find more posts by carla86 Add carla86 to your buddy list Printer Friendly version Email this Article to a friend Reply w/Quote
Collapse
carla86
.illuminato.

User info:
Registered: Dec 2006
Posts: 219 (0.03 al dì)
Location: Milano
Corso: Informatica
Anno: Terzo
Time Online: 6 Days, 21:40:54 [...]
Status: Offline

Post actions:

Edit | Report | IP: Logged

Originally posted by Guepe
allora dovrebbe essere (c1,c3,c5,c6) la sequenza corretta se si guardasse l'ordine di inserimento, o anzi (c5,c3,c1,c6) seguendo prima l'ordine per estensione e in caso di ugualianza in base all'inserimento....


no no io continuavo il tuo ragionamento.
secondo me è giusto come hai ragionato tu e l'ultima scelta che ha fatto il prof ossia se scegliere tra c1 e c2 ha scelto il primo in ordine lessicografico perchè l'estensione era uguale.

31-05-2010 23:36
Click Here to See the Profile for carla86 Click here to Send carla86 a Private Message Find more posts by carla86 Add carla86 to your buddy list Printer Friendly version Email this Article to a friend Reply w/Quote
Collapse
carla86
.illuminato.

User info:
Registered: Dec 2006
Posts: 219 (0.03 al dì)
Location: Milano
Corso: Informatica
Anno: Terzo
Time Online: 6 Days, 21:40:54 [...]
Status: Offline

Post actions:

Edit | Report | IP: Logged

no hai ragione rileggendo e ripensandoci non si riesce proprio a capire questo criterio...
mi sa che domani farò un salto in comelico e se il prof è li chiedo se posso salire un attimo a farmi spiegare sta cosa, perchè proprio non si capisce.. mah

31-05-2010 23:40
Click Here to See the Profile for carla86 Click here to Send carla86 a Private Message Find more posts by carla86 Add carla86 to your buddy list Printer Friendly version Email this Article to a friend Reply w/Quote
Collapse
Guepe
.fedelissimo.

User info:
Registered: Feb 2007
Posts: 54 (0.01 al dì)
Location: Milano
Corso: informatica F49
Anno: 3
Time Online: 1 Day, 10:04:49 [...]
Status: Offline

Post actions:

Edit | Report | IP: Logged

Originally posted by carla86
no no io continuavo il tuo ragionamento.
secondo me è giusto come hai ragionato tu e l'ultima scelta che ha fatto il prof ossia se scegliere tra c1 e c2 ha scelto il primo in ordine lessicografico perchè l'estensione era uguale.


ahhhh capito, fino alla scelta dei due dispositivi ci siamo, cioe son quei due perché con 4 componenti di cui due della stessa estensione per forza ci son due soluzioni se si segue il criterio della lunghezza, e poi la scelta finale la si effettua in base all'ordine di inserimento.
Tra l'altro tutto questo ragionamento è puro frutto di idee, sul testo non c'è scritto nulla, quindi rimane sempre un idea che oltretutto bisogna far implementare al codice.
Almeno un idea di partenza però c'è; adesso dovrei scegliere la struttura dati giusta e poi posso incominciare a scrivere codice...non lo finirò mai in tempo....cmq il progetto assomiglia molto a "ingranaggi 2" nel quale venivano usate liste e alberi red-black

31-05-2010 23:54
Click Here to See the Profile for Guepe Click here to Send Guepe a Private Message Find more posts by Guepe Add Guepe to your buddy list Printer Friendly version Email this Article to a friend Reply w/Quote
Collapse
carla86
.illuminato.

User info:
Registered: Dec 2006
Posts: 219 (0.03 al dì)
Location: Milano
Corso: Informatica
Anno: Terzo
Time Online: 6 Days, 21:40:54 [...]
Status: Offline

Post actions:

Edit | Report | IP: Logged

dobbiamo mettercela tutta x finirlo entro l'8 giugno!!!
cmq io x le strutture dati ho scelto un albero red-black per inserire tutte le componenti.
per quanto riguarda ordina e lineare ho qualche problema d input e poi effettivamente invece che copiarle in array potrei metterli in una lista per ordinarli e stamparli..
in che ordine d tempo si ordina su una lista d pochi elementi?
xke x la ricerca sono sicura ke la cosa migliore sia l'albero red-black (letto anke sulle slide di aguzzoli) ma x ordinare pochi elementi ke tiriamo fuori dall'albero possono essere valide?
effettivamente anke x lavorare sui dispositivi mi sa ke abbiamo bisogno di memorizzare i nodi che tiriamo fuori, anche se non so con che criterio tirarli fuori...

01-06-2010 00:08
Click Here to See the Profile for carla86 Click here to Send carla86 a Private Message Find more posts by carla86 Add carla86 to your buddy list Printer Friendly version Email this Article to a friend Reply w/Quote
Collapse
kalbiz
.primate.

User info:
Registered: Oct 2002
Posts: 72 (0.01 al dì)
Location: Milano
Corso: Informatica
Anno:
Time Online: 2 Days, 16:48:32 [...]
Status: Offline

Post actions:

Edit | Report | IP: Logged

Originally posted by lux87
ragazzi volevo un aiuto: un consiglio su come fare ad inserire nel main i comandi "o" ed "l" (seconda e quarta riga della tabella).
grazie


se può esseti di aiuto ...
ma non sono riuscito a capire perchè inserisce doppio l'ultimo numero ...
comunque
ho un array di componenti che viene aumentato con realloc a secoda del bisogno, inizialmente la struttura può contenere 6 int.
fa la scansione del valore inserito fino a che non viene premuto \n


array = (int *)malloc(sizeof(int) * 6 ); /* minimo componente */
prevSize = 6;
num = 0;
do { /* Continua finché vengono inseriti numeri */
scanf("%d",&x);
if(num >= prevSize) { /* ri-allochiamo */
prevSize += 2;
array = (int *)realloc(t, sizeof(int) * prevSize );
}
t[num++] = x;
}while((ch=getchar())!='\n');



se riesco a sistemarla oggi/domani posto la corretta ...

01-06-2010 08:42
Click Here to See the Profile for kalbiz Click here to Send kalbiz a Private Message Find more posts by kalbiz Add kalbiz to your buddy list Printer Friendly version Email this Article to a friend Reply w/Quote
Collapse
kalbiz
.primate.

User info:
Registered: Oct 2002
Posts: 72 (0.01 al dì)
Location: Milano
Corso: Informatica
Anno:
Time Online: 2 Days, 16:48:32 [...]
Status: Offline

Post actions:

Edit | Report | IP: Logged

io sto usando un albero RB per le componenti,
per la funzione ordina ho pensato di ricercare nell'albero se esiste un componente con il codice che mi viene passato,
se viene individuato, viene inserito in una lista di appoggio tenuta ordinata per costo ...

per l'inserimento di più codici utile per
ordina e lineare ,
ho usato la funzione postata sopra, legge un tot di int e rialloca lo spazio se ne serve ....

01-06-2010 08:50
Click Here to See the Profile for kalbiz Click here to Send kalbiz a Private Message Find more posts by kalbiz Add kalbiz to your buddy list Printer Friendly version Email this Article to a friend Reply w/Quote
Collapse
misterx
.illuminato.

User info:
Registered: Sep 2003
Posts: 154 (0.02 al dì)
Location:
Corso:
Anno:
Time Online: 23:24:56 [...]
Status: Offline

Post actions:

Edit | Report | IP: Logged

edit

Last edited by misterx on 01-06-2010 at 18:49

01-06-2010 17:27
Click Here to See the Profile for misterx Click here to Send misterx a Private Message Find more posts by misterx Add misterx to your buddy list Printer Friendly version Email this Article to a friend Reply w/Quote
Collapse
misterx
.illuminato.

User info:
Registered: Sep 2003
Posts: 154 (0.02 al dì)
Location:
Corso:
Anno:
Time Online: 23:24:56 [...]
Status: Offline

Post actions:

Edit | Report | IP: Logged

sto guardandi gli alberi RB e non ho esperienza di questi quindi chiedo consigli.

avendo implementato l'albero ed avendolo popolato, non mi è chiaro ora cosa passare come parametri alle seguenti funzioni per la visita dei nodi in ordine

grazie

void inord(rbnode *p, rbnode *nil, void (*op)(rbnode *))
{
if(p != nil) {
inord(p->left,nil,op);
(*op)(p);
inord(p->right,nil,op);
}
}

/ **************************************************
**************************/
/*procedura che serve alla visita ordinata del grafo rb, chiama specificando il nodo di partenza*/
void inorder(rbtree *p, void (*op)(rbnode *))
{
inord(p->root, p->nil, op);
}

02-06-2010 13:17
Click Here to See the Profile for misterx Click here to Send misterx a Private Message Find more posts by misterx Add misterx to your buddy list Printer Friendly version Email this Article to a friend Reply w/Quote
Collapse
carla86
.illuminato.

User info:
Registered: Dec 2006
Posts: 219 (0.03 al dì)
Location: Milano
Corso: Informatica
Anno: Terzo
Time Online: 6 Days, 21:40:54 [...]
Status: Offline

Post actions:

Edit | Report | IP: Logged

Originally posted by misterx
sto guardandi gli alberi RB e non ho esperienza di questi quindi chiedo consigli.

avendo implementato l'albero ed avendolo popolato, non mi è chiaro ora cosa passare come parametri alle seguenti funzioni per la visita dei nodi in ordine

grazie

void inord(rbnode *p, rbnode *nil, void (*op)(rbnode *))
{
if(p != nil) {
inord(p->left,nil,op);
(*op)(p);
inord(p->right,nil,op);
}
}

/ **************************************************
**************************/
/*procedura che serve alla visita ordinata del grafo rb, chiama specificando il nodo di partenza*/
void inorder(rbtree *p, void (*op)(rbnode *))
{
inord(p->root, p->nil, op);
}


come l'hai popolato? o meglio, con la funzione di inserimento hai fatto in modo che fossero ordinati dalla radice o dalla foglia?

02-06-2010 13:47
Click Here to See the Profile for carla86 Click here to Send carla86 a Private Message Find more posts by carla86 Add carla86 to your buddy list Printer Friendly version Email this Article to a friend Reply w/Quote
All times are GMT. The time now is 07:35.    Post New Thread    Post A Reply
Pages (9): « 1 2 [3] 4 5 6 7 » ... Last »   Last Thread   Next Thread
Show Printable Version | Email this Page | Subscribe to this Thread | Add to Bookmarks

Forum Jump:
Rate This Thread:

Forum Rules:
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
HTML code is OFF
vB code is ON
Smilies are ON
[IMG] code is ON
 

Powered by: vBulletin v2.3.1 - Copyright ©2000 - 2002, Jelsoft Enterprises Limited
Mantained by dsy crew (email) | Collabora con noi | Segnalaci un bug | Archive | Regolamento | Licenze | Thanks | Syndacate
Pagina generata in 0.064 seconds (83.08% PHP - 16.92% MySQL) con 27 query.