grazie mille per la "sottile" ma importante correzione....
volevo"approfittare" della tua competenza e gentilezza per chiederti un parere a riguardo del seguente programma:
mi si chiede di codificare una funzione che prenda in ingresso una lista e dica quanti picchi sono presenti. Picchi: il valore del dato precedente e seguente a quello corrente è minore della metà del dato corrente.il primo e l'ultimo nodo non sono picchi.
codice:
int picchi ( lista L) {
int x=0; /*contatore dei picchi*/
Lista prec; /*dichiaro tre variabili di tipo lista che mi serviranno ad indicare i 3 nodi da considerare: quello prima e quello dopo a quello che valuto*/
Lista curr;
Lista succ;
if (L==NULL || L->next==NULL || L->next->next==NULL) /*controllo che ci siano almeno 3 nodi */
return 0;
prec=L;
curr=prec->next; /*vado avanti con la scansione*/
succ=curr->next;
while( succ!=NULL) /*finchè arrivo in fondo alla lista*/
{
if(prec->dato < curr->dato/2 && curr->dato /2 > succ->dato) /*controllo la condizione*/
x++ ;/*incremento il contatore*/
succ=succ->next;
curr=curr->next;
prec=prec->next;
}
return x;
}