/* Il programma calcola il valore dell'epsilon macchina assoluto in */ /* singola precisione. */ /* */ /* Programma sviluppato da */ /* */ /* Giovanni DI CECCA */ /* */ /* http://www.dicecca.net */ /* Parte preprocessore */ #include /* Funzione EPS_MACCHINA */ float EPS_MACCHINA(int b, float E) { /* dichiarazioni delle variabili locali */ float eps,E2; /* Calcolo del valore di Epsilon */ while(E2!=1) { eps=E; E=E/(float)b; E2=E+1; } /* ritorno del valore calcolato */ return eps; } main() { /* dichiarazione di variabili */ int base; float E,epsilon; /* dichiarazione della base e del valore da calcolare */ E=1.0; base=2; /* richiamo della funzione EPS_MACCHINA con assegnazione del valore alla */ /* variabile epsilon */ epsilon=EPS_MACCHINA(base,E); /* stampa risultato */ printf("\nEpsilon macchina=%.16f\n",epsilon); }