Jump to content

Programmazione in C


Erz

Recommended Posts

filippogherardi

per fortuna che il mio esame di C l'ho già passato

la cosa più incomprensibile da noi era la grafica, che il prof ci aveva riempito di librerie...

i puntatori li ho sempre usati a caso finche non girava il programma...

per fortuna essendo matematici ciò che ci chiedeva il prof era perlopiù di fare algoritmi

per elaborare immagini

per risolvere sudoku

o per moltiplicare matrici, per trovare numeri primi e tante altre cose molto matematiche

in quello posso dare una mano!

Link to comment
Share on other sites

dato che non riesco a capire l'utilità delle funzioni passate come parametro.. e non riesco a trovare sul mio manuale di c una pagina che lo illustri, volevo sapere (per quanto possiate capire dal codice) se questa funzione è scritta giusta

 

albin searchsnode(albin r, char *k, albin search(albin, char*)) {

  albin abc;

  if(r != NULL && r->nome == k)    /*se il nome è la stanza d'ingresso del deposito */

  return r;

  else{

    if (r != NULL && r->abs != NULL) { /* se la radice non è vuota e il sottoalbero delle stanze non è vuoto*/

    abc = search(r->abs, k);

    if (abc == NULL){

      searchsnode(r->sx, k, search);

      searchsnode(r->dx, k, search);

    }

    }

}

  return abc;

}

 

e in secondo luogo, potrei scriverla anche senza passare la funzione come parametro, vero? xkè a me sembra una cosa tanto inutile >.<''

lfn ;)

Link to comment
Share on other sites

altra domanda..

 

questa funzione mi dà errore alla riga del while

 

void ddelete(albin radix) {

  while(radix = snodedelete(radix, radix));

}

 

questo errore cosa dovrebbe indicare?

 

suggest parentheses around assignment used as a truth value

 

il significato è chiaro, dice di parentesizzarlo.. ma come? >.<

lfn :rotfl:

Link to comment
Share on other sites

altra domanda..

 

questa funzione mi dà errore alla riga del while

 

void ddelete(albin radix) {

  while(radix = snodedelete(radix, radix));

}

 

questo errore cosa dovrebbe indicare?

 

suggest parentheses around assignment used as a truth value

 

il significato è chiaro, dice di parentesizzarlo.. ma come? >.<

lfn

 

guarda, per questo prova a mettere un == invece di un solo = (non si sa mai, si va sempre per tentativi :look:)

in realtà non so com'è fatta di preciso la funzione che richiami, quindi non so...però controlla che la funzione restituisca un boolean, true o false...

Per la domanda di sopra...non so.... :rotfl:

Io ci ho fatto una tesina per sistemi operativi in c, ma non ho mai usato funzioni passandole come parametri a altre funzioni...  :roll:

Link to comment
Share on other sites

e no, radix è un puntatore ad un nodo, e snodedelete restituisce la radice dell'albero a cui ha cancellato il nodo..

 

void destroysearchtree(searchtree *p)

{

while(p = delete(p,p));

}

e in teoria questa dovrebbe essere scritta giusta visto che l'ha fatta il prof :roll:

 

in pratica la funzione che ho riadattato è scritta così..

lo so che è difficile spiegare, pero' finora ho scritto 350 righe di codice, e spiegare il tutto non è semplice.. >.<

ok grazie lo stesso ^^

lfn :rotfl:

Link to comment
Share on other sites

Lfn il primo suggerimento che ti posso dare e` questo

 

void ddelete(albin radix) {

  while((radix = snodedelete(radix, radix)));

}

 

Sul resto della funzione non saprei che dirti ... dovrei rileggere il tutto e ho poco tempo, lo faro` piu` la` o magari e` meglio sentirsi via chat.

 

 

void destroysearchtree(searchtree *p)

{

  while(p = delete(p,p));

}

 

questa qui dovrebbe dare errore allo stesso modo  :D

Link to comment
Share on other sites

  • 2 months later...

Ragazzi ho un serio problema da affrontare in Dev C++!!!!

 

Devo mostrare a video poliedri in uno spazio 3D ed effettuare su di essi alcune orperazioni:

1) ingrandimenti e zoom out

2) rotazioni rispetto ai 3 assi

3) modifica del punto di vista

4) proiezione prospettica (facoltativo)

 

Se qualcuno ha idea di cosa debba scrivere mi dica...il mio prof è un bastardo cronico e non so da dove cominciare!!!AIUTOOOOOOOOOO

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...