|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Dec 2004
Messaggi: 783
|
[C] Funzione, puntatori e ciclo for.
Volevo chiedere un aiuto sulla scrittura di una equazione da passare ad una altra funzione che mi trovi i valori dei parametri. La funzione per scrive l'equazione ha questa forma(esempio fornito con la routine):
Codice:
void funzione(double *p, double *x, int m, int n, void *data)
{
register int i;
for(i=0; i<n; ++i)
x[i]=p[1]-p[0]*p[0];
}
Codice:
for(i=0; i<n; ++i)
x[i]=p[0]+p[1]+p[2]+.....+p[10];
Codice:
for(i=0; i<n; ++i)
for(j=0; j<10; ++j)
x[i]=p[j];
Grazie mille a tutti. Ciao
__________________
"May the wind always be at your back and the sun upon your face. And may the wings of destiny carry you aloft to dance with the stars...." |
|
|
|
|
|
#2 | |
|
Senior Member
Iscritto dal: Nov 2005
Messaggi: 2780
|
Quote:
Codice:
for(i=0; i<n; ++i)
x[i]=0;
for(int j=0; j<10; ++j)
x[i]+=p[j];
|
|
|
|
|
|
|
#3 | |
|
Senior Member
Iscritto dal: Dec 2004
Messaggi: 783
|
Quote:
Poiché dovrei fare piu cicli for annidati potresti piegarmi meglio quel +=? So che uguale scrive x = x +1 e x+=1 ma il mio dubbio è: se devo scrivere una funzione del tipo x(ij)=SOMMA(i)SOMMA(j)(p(i)/p(k)) come la scrivo?Codice:
for(i=0; i<n; ++i)
for(j=0; j<10; ++j)
for(k=0; k<5; ++k)
x[i]+=p[j]/p[k];
Grazie anche per le correzioni dovute alla mancanza della dichiarazione delle variabili ma il mio problema al momento è piu logico che sintattico. Infatti mi sembra di stare a sommare puntatori su puntatori e che poi quando li passo alla funzione che mi calcola i parametri questa mi vede un solo parametro corrispondente invece alla somma degli indirizzi. Sto a dire un sacco di “corbellerie”?
__________________
"May the wind always be at your back and the sun upon your face. And may the wings of destiny carry you aloft to dance with the stars...." |
|
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 14:07.












Poiché dovrei fare piu cicli for annidati potresti piegarmi meglio quel +=? So che uguale scrive x = x +1 e x+=1 ma il mio dubbio è: se devo scrivere una funzione del tipo x(ij)=SOMMA(i)SOMMA(j)(p(i)/p(k)) come la scrivo?








