Newsgroup: it.comp.lang.c
Titolo: ricorsive

Ciao a tutti,
devo fare il seguente esercizio. Dovrei fare un  programma che data la
matrice
di char 10x10:
 | 0123456789
-+-----------
 |
0| 000000*000
1| *****0***0
3| *00000*000
4| 00******0*
5| 0****0000*
6| 000000***0
7| ***0***000
8| 00*00*000*
9| ****000*00
partendo dalla posizione 0,0 trovi il modo di raggiungere 10,10 passando
solo sugli '0' e considerando gli '*' come ostacoli insormontabili.
Ovviamente devo utilizzare le ricorsive. Mi basta un piccolo
aiuto.....anche solo un algoritmo.
Grazie in anticipo
Rooster

 di char 10x10:
Data la matrice e il numero riga in elaborazione, la funzione deve solo 
determinare quale elemento è zero e corrisponde ad uno zero della riga 
successiva. Poi chiama se stessa per la riga successiva...
Direi che può bastare. Adesso tocca a te scrivere il codice.
Però ricorda che se fossimo in uno scenario lavorativo, l'attività che ho 
fatto io (analisi) pagherebbe più del doppio di quello che fai tu (mero 
sviluppo). A te le conclusioni.
-- 
---
In silenzio anche un idiota sembra intelligente. Ma non c'è problema,
l'idiota vuol sempre dire la sua.

rooster ha scritto:

E' la ricerca di un cammino tra due nodi di un grafo. Cerca con google e 
dovresti trovare quello che ti serve. Altrimenti comprati e studia qualche 
libro di strutture dati e/o algoritmi. Ciao.
-- 
Andrea Bergia - studente          Linux Registred User #281550
Per favore non mandatemi allegati in Word o PowerPoint.
Si veda 
http://www.fsf.org/philosophy/no-word-attachments.html

 successiva. Poi chiama se stessa per la riga successiva...
Il tuo algoritmo non funziona per l'esempio dato dall'OP. Guarda:
 | 0123456789
-+-----------
 |
0| 000000*000
1| *****0***0
3| *00000*000
4| 00******0*
5| 0****0000*
6| 000000***0
7| ***0***000
8| 00*00*000*
9| ****000*00
Partiamo da (0; 0). A questo punto troviamo il primo 0 corrispondente nella 
riga 1:
 | 0123456789
1| *****0***0
E quindi siamo in (5; 1). Proseguiamo:
 | 0123456789
-+-----------
0| 000000*000   0
1| *****0***0   5
3| *00000*000   5
4| 00******0*   1 (supponendo di tornare indietro)
5| 0****0000*   0
6| 000000***0   3
7| ***0***000   3
8| 00*00*000*   3
9| ****000*00   4 
quindi arriviamo in (4; 10). Che non è (10; 10). [ Ovviamente tutto questo è 
vero solo se ho capito bene il tuo algoritmo ;-) ] Ciao.


sviluppo). A te le conclusioni.
Io traggo la conclusione che purtroppo in italia la
situazione e' disperata.
Tu hai detto cretinate (cosa abbastanza comune fra
quelli che si dilettano solo a disegnare bollicine)
e se si fosse trattato di un progetto reale avresti
solo fatto un danno.
Purtroppo e' vero che ci sono ditte in cui anche un
incompetente come te potrebbe trovare una collocazione
e purtroppo e' vero che in italia essere analista
programmatore e' "meno" che essere analista (e basta).
La parte buona e' che quando si sara' diradato il fumo
e le aziende di imbecilli saranno finalmente fallite
le persone serie resteranno in circolazione facendo il
loro lavoro degnamente e gli altri si arrangeranno come
meglio possono. Sono ottimista e la vedo cosi' :)
my 0.02
Andrea

 solo fatto un danno.
Tu hai non hai ovviamente capito (o hai ovviamente non capito) il senso del 
messaggio. Capisco che avevi qualche rospo in gola e ti andava di sputarlo. 
Ti terrò presente per quando riterrò di avere bisogno di una lezione di 
vita, per ora bollicine o particelle di sodio me la cavo. 
f/up


 solo fatto un danno.
Ti hanno appena dato il benservito per assumere un neodiplomato in 
Co.Co.Co
.?
-- 
Alla prossima,
Marco

 cutted > 
Non ti sembra di aver esagerato ?
E' un newsgroup in cui si tenta di aiutare le persone che hanno problemi
con il C, perchè non aiuti l'OP a risolvere il problema e *poi* insulti
Sarti ? ;) (prima il dovere... ok, Sarti posa l'accetta... no, dai...)
Ciao,
-- 
         (__)	      | Nicholas Wieland	    |    -     ------------
	 (oo)	      | 
nicholas...@yahoo.it
   |    -    | There's no |
   /------\/ 	      | Debian GNU/Linux / Mac OS X |    -    | place like |
  / |    ||  	       -----------------------------     -    | *GNOME(2)* |
 *  /\---/\           ...."Have you mooed today?"....    -     ------------

 Sarti ? ;) (prima il dovere... ok, Sarti posa l'accetta... no, dai...)
L'accetta è già ben riposta. Ha solo voluto fare una sparata che 
evidentemente gli stava sul gozzo per motivi suoi. 


Sarti ? ;) (prima il dovere... ok, Sarti posa l'accetta... no, dai...)
Una risposta sensata per l'OP c'era gia'.
Purtroppo c'era anche la tipica fregnaccia totale
di chi non sa nulla di nulla, talmente poco che
nemmeno si rende conto di quanto e' poco ma che
al contempo e' gia' cosi' stufo di imparare da
decidere che sia giunto il momento di insegnare.
Inizialmente ero in vero tentato di scrivere un
messaggio sul perche' la ricorsione a "scendere"
era una imbecillita' e sul perche' anche la 
ricorsione stessa se intesa nella forma canonica
e' molto poco adatta a quel tipo di problema...
l'ignoranza in fondo non e' sempre colpa.
In questo caso ho pero' avuto la netta impressione
che l'ignoranza fosse anche sufficientemente
"caramellata" dalla superbia da rendere comunque
inutile un tentativo. Sono pigro e quindi ho
lasciato stare.
Riguardo al discorso sui disegnatori di bollicine
la mia uscita e' dovuta al fatto che il problema e'
secondo me oggi abbastanza serio. C'e' chi pensa che
un software possa vivere di solo progetto e che
l'implementazione sia un dettaglio. L'esperienza
per ora ci dice forse esattamente il contrario...
Io in questo momento ho pochissimo tempo libero
e leggo una risibile minoranza dei messaggi del
newsgroup. Sono capitato su quella stupidata e ho
approfittato della cosa...
Andrea

evidentemente gli stava sul gozzo per motivi suoi. 
Hmmm ?
Forse non mi ero spiegato...
1) Tu hai detto una stupidata sul merito. Spero che su
   questo almeno non ci piova. 
   Fra l'altro si tratta di una stupidata su piu' livelli
   che sarebbe comunque secondo me istruttivo sezionare...
   partendo dalla ovvia assurdita' della tua affermazione
   per arrivare un passettino alla volta a Dijkstra e oltre.
2) Ci sono persone hanno capacita' di analisi simili
   a quelle che hai mostrato e che realmente fanno questo
   lavoro per campare. E' una cosa triste ma e' vera.
3) Non e' raro che le ditte per cui svolgono questa
   attivita' finiscano male. Finche' i soldi ci sono
   per tutti e tanti che non si sanno dove mettere fila
   via tutto liscio... quando si fa sul serio gli imbecilli
   rimangono fuori dal gioco (se il gioco e' pulito, ovviamente). 
   La mia impressione e' anche che in genere si tratti
   purtroppo dell'intera organizzazione o sezione che
   affonda, non dei singoli imbecilli del gruppo.
Dove sono le sparate in questo ?
Andrea


Co.Co.Co
.?
Hehehe... riderei anche piu' di gusto se capissi la
battuta :) . Comunque in effetti da noi recentemente
stanno assumendo; tu sei poi riuscito a diplomarti ?
Non che creda che a te possa interessare una posizione
da noi (o viceversa) ... ma sarebbe interessante
iniziare una bella discussione sui problemi della
scuola italiana in generale e sulla cattiva selettivita'
in particolare (cattiva e' peggio di scarsa... non solo
passano un sacco di incompetenti... vengono pure fermati
tipi in gamba).
Andrea

 battuta :) .
   Non era una battuta, era una domanda. Non che pretendessi che tu 
potessi capirla, in fondo sei un programmatore... anzi, un implementatore.
-- 
Alla prossima,
Marco

 tipi in gamba).
   Ho capito: ti hanno bocciato per l'ennesima volta all'esame per la 
patente... :)
-- 
Alla prossima,
Marco

 Dove sono le sparate in questo ?
Dove sono? Tono, modalità e topic. Tu puoi tranquillamente dire che ho 
scritto una cazzata (non ti preoccupare, so *benissimo* che lo è) ma tu hai 
cucito intorno una serie di considerazioni dirette per lo più verso la mia 
persona in un contesto immaginario. Considerazioni che mi guardo bene dal 
commentare/replicare proprio perchè le ritengo una sparata; per quello che 
ne sai potrei essere un cameriere di trattoria con l'hobby dell'informatica 
a tempo perso, in tal caso che c'entra tutto questo disquisire sulla 
situazione disperata dell'italia e sulle presunte responsabilità degli 
"incompetenti" e "imbecilli" come me?
E' una sparata, è una cosa che ti sta sul gozzo e hai pensato di aver 
trovato l'occasione giusta per dirla, tutto quà. 


 decidere che sia giunto il momento di insegnare.
Ancora? 
Hai già vinto il mio personale "gran premio simpatia", non importa che 
insisti.
Compreso il fatto che si insegna a scuola, nei ng si discute.
[f/up it.cultura.cybersocieta]


patente... :)
No... a me e' andata bene (a scuola a parte qualche
rarissima eccezione ho sempre avuto docenti preparati
e bravi ad insegnare) ma conosco gente a cui tu come
competenza informatica non saresti degno di lavare
la macchina che come titolo di studio ha la terza
media; colpa un poco di un carattere originale, e
molto di una scuola ignobile che a volte piazza dei
deficienti a cercare di rovinar ragazzi.
Qualcuno, come questo mio amico, comunque ce la
fa e trova un suo posto di tutto rispetto ... ma
sono triste a pensare a quanti invece la cosa
possa portare a lasciare.
Un po' mi intristisce anche vedere l'altro lato
oscuro... ovvero chi la scuola dovrebbe fermare
se non in grado di formare; e che invece finisce
ad aumentare la quantita' di fumo in circolazione.
Andrea
PS:
  Comunque anni fa sono stato effettivamente
  bocciato all'esame per la patente per ben
  due volte... una qui in italia e una negli
  states :)

   states :)
   Ok, adesso che hai completato la tua catarsi puoi tranquillamente 
rientrare nei ranghi. In fondo, avevi solo bisogno di qualcuno con cui 
parlare (magari cercarlo su Usenet puo` lasciar interdetto chi immagina 
la vita secondo i canoni di una piu` noiosa normalita`, ma tant'e`...): 
bastava dirlo invece di iniziare ad offendere, sarebbe stato piu` 
semplice. Questo non te lo hanno insegnato, i tuoi docenti?
-- 
Alla prossima,
Marco

in fondo sei un programmatore... anzi, un implementatore.
Se speri di offendermi chiamandomi programmatore
non poteva andarti peggio :) ... io mi sono
licenziato dall'ENEL qualche anno fa quando ormai
mi stavo avviando ad un lavoro di coordinamento
(leggi passare il tempo in riunioni a cercare di
non pestare questi o quei calli) per andare a
lavorare in una ditta di dimensioni modeste in
cui le giornate le spendo a cercare di dare la vita
a macchinari complessi litigando con i miei bug,
con quelli del S.O. (quando c'e'), con le richieste,
con i budget e con i millisecondi.
Questo anche se le dimensioni ridotte della ditta
comportano purtroppo che sia io ad occuparmi di
cose come i backup o la connettivita' internet.
Sono ormai una ventina d'anni che scrivo codice
e onestamente ancora oggi non trovo nulla che sia
altrettanto appassionante. Oscillo spesso dal
litigare con le performance assolute ai linguaggi
piu' strani, dai problemi la compressione video ai
giocatori di scacchi, dalla sintesi musicale ai
server transazionali, dal calcolo di operazioni
booleane fra solidi 3D alle problematiche di
gestione della produzione.
Ancora non mi sono stufato.
Se credi che mi manchi il gironzolare mollemente
fra i corridoi trascinandosi da una pausa caffe'
alla prossima presentazione di prodotto di planning
cercando di accaparrarsi lo yo-yo o il berrettino
gadget proprio hai capito male (ps... con questo
non voglio offendere i coordinatori puri :) ...
e' uno sporco lavoro ma qualcuno deve pur farlo).
Io sono venti anni che mi diverto come un matto...
e che mi pagano per farlo.
Andrea

 
"Non discutere mai con un idiota. La gente potrebbe non notare la differenza.".
..e vale per entrambi.
[Followup-To: it.discussioni.litigi]
Adieu,
-- 
Lestat de Lioncourt  -- a.k.a --  Ciro Mattia Gonano
 Undergraduate student in Computer Science at University of Bologna
 IHGGer #1049   <=>  ICQ#: 52631406   <=>   URL: 
http://www.CS.UniBO.It/~gonano
 Debian admin at 
Students.CS.UniBO.It
 <=> look at headers for my JabberID & GPG

 ..e vale per entrambi.
   Visto che siamo in tema: "Meglio tacere e parere deficiente che 
aprire bocca e cancellare ogni dubbio". ;)
-- 
Alla prossima,
Marco

aprire bocca e cancellare ogni dubbio". ;)
Ah... ancora perle di saggezza.
Io credo che non sia giusto non contestare chi dice
fregnacce. Ci sono cose su cui e' assurdo e inutile
discutere, ma anche cose in cui il vero e il falso
non possono essere messi in discussione da chi ha
l'onesta' intellettuale di ragionare.
A tacere quando qualcuno dice fesserie (e si tratta
di fesserie assolute) penso si faccia solo male.
Male per chi le ascolta e ne viene danneggiato, e
male cento volte piu' per chi le pronuncia che
vedra' cementificarsi idiozie nel suo cervello.
Rileggendo i miei post mi sono accorto di essere
stato effettivamente sgarbato con Marco Sarti che
vedo impiegare molto tempo a cercare di aiutare chi
inizia. Quel suo post totalmente errato e quella
spavalderia che il grossolano errore amplificava
a dismisura mi hanno fatto reagire in eccesso
(anche per via della coincidenza che la spavalderia
verteva sulla superiorita' dell'analista sul
programmatore... argomento a cui tengo).
Chiedo sinceramente scusa. Secondo me Marco Sarti
non e' certo un guru... ma nemmeno un fesso.
Ha detto una megacavolata... ma capita a tutti.
Ora mi piacerebbe scusarmi e dire lo stesso anche
con te ma onestamente non riesco a trovare motivi ...
Andrea

 con te ma onestamente non riesco a trovare motivi ...
   Basta il pensiero...
-- 
Alla prossima,
Marco

 gestione della produzione.
'Sti cazzi...Ma esattamente...la ditta per cui lavori...di
cosa si occupa ? :)
-- 
Il segreto di una vita sana e' lo sport.
Mai farne.

 cosa si occupa ? :)
"Problematiche" :)
--------------------------------
Inviato via 
http://usenet.libero.it

 cosa si occupa ? :)
   Di qualcosa per la quale valga la pena di perdere almeno otto ore al 
giorno per vent'anni, continuativamente. Io conosco almeno tre attivita` 
che appartengono a questa categaria, ma nessuna di loro e` in topic con 
questo NG... :)
-- 
Alla prossima,
Marco

cosa si occupa ? :)
Da qualche anno lavoro per una ditta che produce macchinari
a controllo numerico per l'industria della calzatura e
relativo software di supporto (incluso un pacchetto CAD/CAM
specifico per calzatura/pelletteria/confezioni).
In passato ho lavorato come libero professionista, nella
divisione informatica di ENEL e come sviluppatore per il
mondo videogames negli stati uniti.
Il primo programma con cui ho iniziato a guadagnarmi da
vivere e' stato PaintStar (Apple ][, 1984).
Io passo anche molto del mio tempo libero su computer...
e spesso ho trovato in seguito ai miei esperimenti "per
puro divertimento" tecniche che poi mi sono risultate
molto utili per affrontare problemi sul lavoro.
Ad esempio io ho investito un po' nello scrivere programmi
che giocano a scacchi... Nonostante il gioco degli scacchi
(o in generale le tecniche di ricerca di strategia ottimale
con avversario) non abbiano per ora trovato un impiego
diretto sul mio lavoro, molti dei sistemi che nel tempo ho
sperimentato per quell'ambito mi sono tornati in seguito
utili magari in forma rimaneggiata o solo come spunto per
un'idea di soluzione.
Invece il tempo che ho passato ad esempio sulla grafica raster,
sulla compressione dati oppure sui protocolli di comunicazione
mi e' tornato direttamente ed esplicitamente utile in moltissimi
casi e in ambiti molto diversi (da applicazioni che girano
su "bestioni" IBM a codice che gira su schede DSP).
Andrea

 vivere e' stato PaintStar (Apple ][, 1984).
Sono sicuro che rooster vorrebbe anche sapere quanti figli hai e come si
chiama il tuo cane ;)
Cenni anche sul colore della tua biancheria intima sarebbero graditi.


 non e' certo un guru... ma nemmeno un fesso.
Bah, che dire: dovrei ringraziarti per il 6- che ottengo dal tuo giudizio e 
per la sufficienza rosicata grazie al fatto che mi vedi "impiegare molto 
tempo a cercare di aiutare chi inizia"? Andrea, Andrea... non ti sembra di 
esagerare un tantinello? 
Devo ringraziarti perchè non mi ritieni fesso?
Trovo altrettanto antipatica e seccante una persona che mi da del fesso di 
una che si permette di dire che tutto sommato non lo sono. In ogni modo, se 
a chi ti chiede "di cosa si occupa l'azienda per cui lavori?" tu rispondi 
con un autobiografia completa e corredata di storie tipo "Un giorno mi 
imbarcai clandestinamente in un cargo battente bandiera liberiana...", è 
chiaro qual'è il senso. 
 

 ...
Ti andrebbe di adottarmi ? :-)
P.S. scusate l'inutile traffico, giuro ho finito :-)
     x Andrea: ho scherzato, non te la prendere, non volevo fare
     polemica, si vede che sei preparato.Complimenti, hai fatto
     la carriera che io vorrei fare, ma difficilmente faro' :(
