+m2+ ha scritto:
Hai provato a fare qualche valutazione?
floor(0.1)
floor(0.1+0.5)
floor(0.4)
floor(0.4+0.5)
floor(0.5)
floor (0.5+0.5)
floor (0.6)
floor (0.6+0.5)
E poi
floor (132.54321 * 100 + 0.5)
floor (132.55321 * 100 + 0.5)
floor (0.321 * 100 + 0.5)
floor (0.521 * 100 + 0.5)
?
grazie per l'aiuto a comprendere meglio
https://prnt.sc/hstzu
// Codice sorgente:
#include <stdio.h>
#include <math.h>
int main( void ) {
puts( "Questo è un programma che stampa l'arrotondamento all'intero più vicino per ogni numero inserito, prima dell'arrotondamento .\n" );
printf( "%s", "Inserire un numero (0.0 per terminare): " );
double numero;
scanf( "%lf", &numero );
while( numero != 0 ) {
printf( "\n%-13s%-13s", "NUMERO", "NUMERO" );
printf( "\n%-13s%-13s", "ORIGINARIO", "ARROTONDATO" );
printf( "\n%-13lf%-13.0lf", numero, numero );
printf( "\n%-13lf%-13.1lf", numero, numero );
printf( "\n%-13lf%-13.2lf", numero, numero );
printf( "\n%-13lf%-13.3lf", numero, numero );
double a = floor(0.1);
double a1 = ceil(0.1);
double b = floor(0.1+0.5);
double b1 = ceil(0.1+0.5);
double c = floor(0.4);
double c1 = ceil(0.4);
double d = floor(0.4+0.5);
double d1 = ceil(0.4+0.5);
double e = floor(0.5);
double e1 = ceil(0.5);
double f = floor (0.5+0.5);
double f1 = ceil(0.5+0.5);
double g = floor (0.6);
double g1 = ceil(0.6);
double h = floor (0.6+0.5);
double h1 = ceil(0.6+0.5);
printf( "\n\nFloor di 0.1 è: %.3lf", a );
printf( "\nFloor di 0.1+0.5 è: %.3lf", b );
printf( "\nFloor di 0.4 è: %.3lf", c );
printf( "\nFloor di 0.4+0.5 è: %.3lf", d );
printf( "\nFloor di 0.5 è: %.3lf", e );
printf( "\nFloor di 0.5+0.5 è: %.3lf", f );
printf( "\nFloor di 0.6 è: %.3lf", g );
printf( "\nFloor di 0.6+0.5 è: %.3lf", h );
printf( "\n\nCeil di 0.1 è: %.3lf", a1 );
printf( "\nCeil di 0.1+0.5 è: %.3lf", b1 );
printf( "\nCeil di 0.4 è: %.3lf", c1 );
printf( "\nCeilCeil di 0.4+0.5 è: %.3lf", d1 );
printf( "\nCeilCeil di 0.5 è: %.3lf", e1 );
printf( "\nCeil di 0.5+0.5 è: %.3lf", f1 );
printf( "\nCeil di 0.6 è: %.3lf", g1 );
printf( "\nCeil di 0.6+0.5 è: %.3lf", h1 );
double i = floor (132.54321 * 100 + 0.5);
double i1 = ceil(132.54321 * 100 + 0.5);
double l = floor (132.55321 * 100 + 0.5);
double l1 = ceil(132.55321 * 100 + 0.5);
double m = floor (0.321 * 100 + 0.5);
double m1 = ceil(0.321 * 100 + 0.5);
double n = floor (0.521 * 100 + 0.5);
double n1 = ceil(0.521 * 100 + 0.5);
printf( "\n\nFloor di 132.54321 * 100 + 0.5 è: \n%.3lf\nFloor di 132.55321 * 100 + 0.5 è: \n%.3lf\nFloor di 0.321 * 100 + 0.5 è: \n%.3lf\nFloor di 0.521 * 100 + 0.5 è: %.3lf", i, l, m, n );
printf( "\n\nCeil di 132.54321 * 100 + 0.5 è: \n%.3lf\nCeil di 132.55321 * 100 + 0.5 è: \n%.3lf\nCeil di 0.321 * 100 + 0.5 è: \n%.3lf\nCeil di 0.521 * 100 + 0.5 è: %.3lf", i1, l1, m1, n1 );
printf( "%s", "\n\nInserire un numero (0.0 per terminare): " );
scanf( "%lf", &numero );
}
}