[c] aiuto esercizio somma segna alternata
Salve , ho provato in tutti i modi a fare questo esercizio e nn riesco proprio...
vi posto il codice che ho fatto ( fatto in questo modo mi da un risultato più logico di quelli che mi dava prima).
vi posto il codice che ho fatto ( fatto in questo modo mi da un risultato più logico di quelli che mi dava prima).
/*Scrivere una fuction C per calcolare una somma di addendi a segno alterno(bisogna visualizzare gli errori di roundoff*/
#include
#include
#include
#include
float somma_Segno(float x);
void main()
{
float x=0,somma=0.0,ea,er;
somma=somma_Segno(x);
printf("la somma =%f\n", somma);
/*calcola il valore assuluto e valore relativo*/
ea=(float)fabs(somma-x);
er=ea/(float)fabs(somma);
printf("Errore Assoluto=%e\nErrore Relativo=%e\n",ea,er);
printf("X double= %e\nX float= %e\n",x,somma);
free(x);
}
float somma_Segno(float x)
{
float x_prec =-1,segno;
x=0;
segno=-1;
while (x > x_prec)
{
x_prec=x;
x=(segno)*(x)+(float)rand();
printf(" la somma sss e' : %e\n",x);
}
return x_prec;
}
Risposte
Innanzitutto non inizializzi la randomizzazione.
Secondariamente non ho ben capito cosa vuoi fare, gli addendi dovrebbero essere quel numero random? Cosa intendi per errore? Potresti postare la traccia intera per chiarire il tutto.
Secondariamente non ho ben capito cosa vuoi fare, gli addendi dovrebbero essere quel numero random? Cosa intendi per errore? Potresti postare la traccia intera per chiarire il tutto.
Il problema della traccia è anche il mio , ti spiego la traccia è :
Scrivere una fuction C per calcolare una somma di addendi a segno alterno
fa parte del capitolo errori di raudoff, io ho provato a fare anche una somma di array a segno alternato ma credo nn è quello che vuole l'esercizio.
Scrivere una fuction C per calcolare una somma di addendi a segno alterno
fa parte del capitolo errori di raudoff, io ho provato a fare anche una somma di array a segno alternato ma credo nn è quello che vuole l'esercizio.
Qual'è esattamente il testo dell'esercizio? La somma alternata deve essere fatta di valori casuali? In che intervallo? Che cosa non riesci a fare esattamente del tuo esercizio?
EDIT: scusa, ho problemi con il PC e non avevo aggiornato la pagina prima di rispondere.
Comunque la richiesta dell'esercizio è in effetti poco chiara. Si tratta di un esercizio dato dal tuo professore o di un esercizio sul libro? Nel primo caso di consiglio di chiedere chiarimenti, nel secondo caso credo che qualsiasi serie vada bene, senza far ricorso ad un generatore casuali di numeri. Avendo infatti una serie conosciuta è possibile comprendere meglio l'errore ottenuto.
EDIT: scusa, ho problemi con il PC e non avevo aggiornato la pagina prima di rispondere.
Comunque la richiesta dell'esercizio è in effetti poco chiara. Si tratta di un esercizio dato dal tuo professore o di un esercizio sul libro? Nel primo caso di consiglio di chiedere chiarimenti, nel secondo caso credo che qualsiasi serie vada bene, senza far ricorso ad un generatore casuali di numeri. Avendo infatti una serie conosciuta è possibile comprendere meglio l'errore ottenuto.
la traccia: Scrivere una fuction C per calcolare una somma di addendi a segno alterno .
Nn riesco a capire come devo fare, ho provato a farlo pero nn mi sembra corretto.
Nn riesco a capire come devo fare, ho provato a farlo pero nn mi sembra corretto.
ma intendi forse errori di round off?
si