.dsy:it. Pages (8): « 1 2 3 4 [5] 6 7 8 »
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)
-- [algoritmi] Progetto di Febbraio "Itinerari" (http://www.dsy.it/forum/showthread.php?threadid=2641)


Posted by M3lkor on 08-02-2003 17:59:

Beh il codice che ha postato era direttamente riferito al progetto in questione se non erro...

Il corso di Algoritmi e Strutture DAti è invece di applicazione teorica con un esame di Laboratorio che richiede un applicazione pratica, con un linguaggio, di ciò che si è imparato nelle lezioni di Algoritmi.

In altre parole. Io credo che un corso di Algoritmi in C (ad esempio) sarebbe forse più dannoso in quanto non darebbe la capacità di astrare (corretto?) dallo pseudo codice un programma in un linguaggio diverso dal C... In altre parole il rischio sarebbe quello di avere dei Tecnici Informatici non dei Laureati in Informatica. La cosa è ben diversa anche se magari l'applicazione i risultati possono (notare: possono) essere uguali.

Nel senso. Se io specializzo una persona a livelli estremi questa difficilmente riuscirà ad uscire dagli schemi della specializzazione con risultati accettabili. Es. Se io ti insegno solo C, con tutte le librerie, tutti gli exploit utilizzabili per rendere i programmi C migliori etc etc se tu non hai la capacità di adattare la tua conoscenza in altri campi sei fregato. Ma se io ti dò una conoscenza di Algoritmi in maniera più generale e poi ti dò le basi di un pò di linguaggi, magari con più tempo, tu riesci a sfruttare tutti gli algoritmi con tutti i linguaggi e non tutti gli algoritmi con un solo linguaggio.

Penso che alla fine sia il problema del dare il pesce o la canna da pesca. Tu preferisci il pesce da quanto ho capito mentre secondo me è meglio la canna da pesca (magari con un corso su come usarla bene ;) ).

Ciauz
Melkor

__________________
---Any sufficiently advanced technology is indistinguishable from magic.---

Per favore non mandatemi allegati in Word o PowerPoint.
Si veda http://www.fsf.org/philosophy/no-word-attachments.html


Posted by Lunik on 08-02-2003 18:04:

non ho capito una cippa dei vostri discorsi,ma volevo solo essere sicura di una cosa: sapete che il progetto E' da fare in C? e non con altri linguaggi?

solo x curiosità.... ;)

__________________
Il DSY su Facebook!!!


Posted by nous on 08-02-2003 18:07:

Originally posted by AlphaGamma
Anche Nous che contesta questa mia idea alla fin fine quando ha postato il codice per inserire strighe di dimensione a piacere mica ha usato un pseudolinguaggio. Li ha postati in maniera direttamente utilizzabile ed adattabile. Cioe' in C.


Accidenti,mi sono fregato...quasi quasi cancello il post :D:D
Peccato che questo modo di postare renda l'algoritmo meno leggibile che se lo avessi fatto in pseudocodice.

In più,la mia era una risposta a una domanda schietta (come faccio in C a fare questa cosa?) , non a una del tipo "Quale algoritmo useresti per farlo?"

__________________
Cristian,il Nous che invoglia ^_^

"La capa è troppo in la,e la sbarba è troppo giovane..mi sa che qua si va in bianco"
Ryo Saeba (City Hunter)


Posted by nous on 08-02-2003 18:21:

Originally posted by AlphaGamma
Credo che esistano almeno due modi per approcciarsi a questa materia, uno piu' marcatamente teorico, ed uno piu' orientato ad applicazioni pratiche.


E le due cose sono disgiunte totalmente,secondo te?



Personalmente ho scelto per la seconda, perche' l'informatica mi appassiona per le sue applicazioni e perche' un domani dovrebbe darmi da mangiare.


Ma scusa,dopodomani esce il linguaggio di programmazione C### e tu che fai,visto che gli algoritmi li sai fare solo in C??
Secondo me bisogna capire la logica dell'algoritmo,e per questo lo psudo codice è ottimo.Secondo me la materia per essere capita deve essere disgiunta da ogni implementazione.
Poi il progetto serve a vedere se si sa applicare quello che si studia.

__________________
Cristian,il Nous che invoglia ^_^

"La capa è troppo in la,e la sbarba è troppo giovane..mi sa che qua si va in bianco"
Ryo Saeba (City Hunter)


Posted by lord2y on 08-02-2003 19:03:

Io credo che una volta che hai imparato a programmare lo puoi fare in qualunqe linguaggio...basta solo capire la sintassi e imparare i trucchi con un po' di esercizio.
Per quanto riguarda algoritmi credo che vedere un algoritmo in un contesto pratic aiuta..Teorizzare troppo fa male. Il pseudo codice è spesso troppo astratto...mentre nn ci impiego niente a fare il porting da C a java a C#### a php etc...

Come giustamente diceva qualcuno è la logica quella da seguire.
Per quanto rigarda il discorso dell'"essere tecnico"...bhe credo che noi dovremmo essere dei tecnici proffessionisti...non credete?

:ciao:

__________________
Linux User#271051
Only God can judge me, is that right?
Only God can judge me now
Only God baby, nobody else. All you other motherfuckers get out my business (2Pac)


Posted by M3lkor on 08-02-2003 19:19:

Originally posted by lord2y
Io credo che una volta che hai imparato a programmare lo puoi fare in qualunqe linguaggio...basta solo capire la sintassi e imparare i trucchi con un po' di esercizio.
Per quanto riguarda algoritmi credo che vedere un algoritmo in un contesto pratic aiuta..Teorizzare troppo fa male. Il pseudo codice è spesso troppo astratto...mentre nn ci impiego niente a fare il porting da C a java a C#### a php etc...

Come giustamente diceva qualcuno è la logica quella da seguire.
Per quanto rigarda il discorso dell'"essere tecnico"...bhe credo che noi dovremmo essere dei tecnici proffessionisti...non credete?

:ciao:


Azz allora ho sbaglio corso di Laurea... sinceramente il porting lo fai seguendo una logica che ti è data dall'esperienza... Ma se vai a controllare la tua logica può essere ridotta ad algoritmi... che sono esplicitati in pseudo codice... Cioè il tuo programma lo riduci astrattamente in pseudocodice quando fai un porting... non te ne rendi conto ma lo fai...

E comunque non credo che tu faccia un porting ma una rielaborazione del programma in altro linguaggio...

Melkor

__________________
---Any sufficiently advanced technology is indistinguishable from magic.---

Per favore non mandatemi allegati in Word o PowerPoint.
Si veda http://www.fsf.org/philosophy/no-word-attachments.html


Posted by AlphaGamma on 08-02-2003 19:37:

Originally posted by M3lkor
[B]In altre parole. Io credo che un corso di Algoritmi in C (ad esempio) sarebbe forse più dannoso in quanto non darebbe la capacità di astrare (corretto?) dallo pseudo codice un programma in un linguaggio diverso dal C... In altre parole il rischio sarebbe quello di avere dei Tecnici Informatici non dei Laureati in Informatica. La cosa è ben diversa anche se magari l'applicazione i risultati possono (notare: possono) essere uguali.


Sarebbe da capire qual'e' la differenza secondo te tra un tecnico informatico ed un laureato informatico.
Sulla dannosita' proprio non capisco. Se vai a lavorare in una azienda ti chiedono se sai programmare in C++ o Java (discendenti del C), non se sai fare il quicksort in pseudocodice.
Se invece vuoi approfondire lo studio, allora lo pseudocodice e' un utile strumento ed in quel caso il C e' del tutto inutile.
Ma in entrambi i casi non c'e' nulla di dannoso.

Se poi parli di portare un sorgente in un altro linguaggio, vedo meno difficolta' a portare codice dal C al Visual Basic che dal pseudolinguaggio al Visual Basic.


Nel senso. Se io specializzo una persona a livelli estremi questa difficilmente riuscirà ad uscire dagli schemi della specializzazione con risultati accettabili. Es. Se io ti insegno solo C, con tutte le librerie, tutti gli exploit utilizzabili per rendere i programmi C migliori etc etc se tu non hai la capacità di adattare la tua conoscenza in altri campi sei fregato. M


Il C e' un linguaggio di alto livello, non e' assembler.
E' molto potente, e puo' essere utilizzato sia per fare programmi ultra ottimizzati, sia per scrivere programmi strutturati classici come si studiano all'uni.
Ripeto, vedo meno difficolta' a portare codice da C ad altri linguaggi che dallo pseudocodice a qualsiasi linguaggio.

Penso che alla fine sia il problema del dare il pesce o la canna da pesca. Tu preferisci il pesce da quanto ho capito mentre secondo me è meglio la canna da pesca (magari con un corso su come usarla bene ;) ).


Penso che la distinzione sia piu' che io preferisco andare a pescare trote anche se devo mettere i vermetti sull'amo, mentre a te non piacciono i vermetti e lanci solo la lenza. Tu sostieni che cosi' pero' peschero' solo trote, io ritengo che i pesci sono tutti uguali e tutti vogliono i vermetti. :D

__________________
Attenzio', concentrazio', ritmo e VITALITÀ


Posted by AlphaGamma on 08-02-2003 19:40:

Originally posted by nous
(1)Peccato che questo modo di postare renda l'algoritmo meno leggibile che se lo avessi fatto in pseudocodice.

(2)In più,la mia era una risposta a una domanda schietta (come faccio in C a fare questa cosa?) , non a una del tipo "Quale algoritmo useresti per farlo?"


(1) La leggibilita' e' molto opinabile. Finora ho capito di piu' leggendo codice C che pseudolinguaggio. ;)
(2) Come in tutti i problemi pratici, occorre dare una soluzione pratica. ;) Appunto quel che sostengo.

__________________
Attenzio', concentrazio', ritmo e VITALITÀ


Posted by AlphaGamma on 08-02-2003 19:50:

Originally posted by nous
E le due cose sono disgiunte totalmente,secondo te?


Leggi con attenzione quel che ho scritto.


Ma scusa,dopodomani esce il linguaggio di programmazione C### e tu che fai,visto che gli algoritmi li sai fare solo in C??
Secondo me bisogna capire la logica dell'algoritmo,e per questo lo psudo codice è ottimo.Secondo me la materia per essere capita deve essere disgiunta da ogni implementazione.
Poi il progetto serve a vedere se si sa applicare quello che si studia. [/B]


Scrivere ad esempio quicksort in C e passarlo in Pascal o Basic e' meno difficile IMHO che farlo da pseudocodice. Prima di tutto perche' i costrutti utilizzati esistenti sono simili (while, if, for), in secondo luogo perche' ci sono le condizioni di contorno (se uso la variabile X allora devo dichiararla), terzo perche' le strutture dati dinamiche fanno uso di puntatori, che nello pseudolinguaggio sono molto semplificati, quarto perche' una riga in pseudocodice spesso puo' significare diverse righe di codice reale.

Se un domani esce Java# ed e' cosi' diverso dai predecessori, allora nemmeno il nostro pseudocodice sara' utile. Ma non credo che sara' cosi'. Infatti sia lo pseudocodice che i linguaggi attuali non differiscono in maniera sostanziale, perche' derivano dalla comune necessita' di fare eseguire o assegnazioni o cicli o confronti o salti. Non si scappa da qui. :D

Lord2y :approved:

__________________
Attenzio', concentrazio', ritmo e VITALITÀ


Posted by Nonsaprei on 09-02-2003 08:59:

Originally posted by Lestat de lioncourt
Alphagamma, mi spieghi un po' meglio la tua idea per utilizzare gli alberi in questo prog.?
Sul pdf dell'ultima lezione di Fiorentini a pag.5 c'è un esempio in cui usa un albero di ricerca per rappresentare i punti del piano.
Se ogni nodo rappresenta i punti, dove memorizzi l'informazione relativa al reale percorso esistente fra questi punti?
Se tale info è rappresentata dai legami di parentela fra i nodi, l'albero rappresentato non degenera quasi in una lista nel caso del nostro progetto?
A parte che una volta che le strade iniziano ad incrociarsi non ci si trova più davanti ad un albero, ma ad un grafo, perchè si creano dei cicli.

:help:

Io sto usando un grafo non orientato rapp. con liste d'adiacenza

Penso che la scelta del grafo non orientato sia giusta, mi lascia un po' perplessa quella delle liste d'adiacenza, non sarebbe meglio utilizzare degli alberi liberi....:cool:

__________________
Spaghetti!!!


Posted by rafnet on 10-02-2003 12:12:

Ragazzi sono il primo ad aver rinunciato???


Ci vediamo all'appello di aprile

__________________
La vita è una jungla!


Posted by Lestat de lioncourt on 10-02-2003 18:30:

Originally posted by Nonsaprei
Penso che la scelta del grafo non orientato sia giusta, mi lascia un po' perplessa quella delle liste d'adiacenza, non sarebbe meglio utilizzare degli alberi liberi....:cool:


con le liste d'adiacenza abbiamo già qualke algoritmo semi-pronto
e visto ke già così sono sull'orlo dell'esaurimento preferisco semplificarmi la vita. :(

__________________
Non è detto che non ci sia nulla da capire soltanto perchè non si capisce nulla.

(by me)


Posted by Nonsaprei on 10-02-2003 20:01:

Sì, in effetti, è meglio semplificarsi la vita!! :approved: :approved:

__________________
Spaghetti!!!


Posted by lord2y on 10-02-2003 21:52:

Originally posted by Lestat de lioncourt
con le liste d'adiacenza abbiamo già qualke algoritmo semi-pronto
e visto ke già così sono sull'orlo dell'esaurimento preferisco semplificarmi la vita. :(


non sei l'unico :cry:

__________________
Linux User#271051
Only God can judge me, is that right?
Only God can judge me now
Only God baby, nobody else. All you other motherfuckers get out my business (2Pac)


Posted by rafnet on 10-02-2003 23:54:

Originally posted by Lestat de lioncourt
con le liste d'adiacenza abbiamo già qualke algoritmo semi-pronto
e visto ke già così sono sull'orlo dell'esaurimento preferisco semplificarmi la vita. :(



Potreste indicarmi dove si trovano questi esempi?? che non li trovo

__________________
La vita è una jungla!


All times are GMT. The time now is 12:58. Pages (8): « 1 2 3 4 [5] 6 7 8 »
Show all 116 posts from this thread on one page

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