+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 ); 
  }
}