RicardasSim

copysign

Jun 8th, 2020
1,477
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.12 KB | None | 0 0
  1. //-std=c99 -Wall -Wextra -Wpedantic -Wshadow
  2.  
  3. #include <stdio.h>
  4. #include <stdlib.h>
  5. #include <math.h>
  6.  
  7. int main()
  8. {
  9.  
  10.     double val_d;
  11.  
  12.     val_d = copysign( 0.0, -1.0 );
  13.  
  14.     printf("(1) %lf\n", val_d);
  15.  
  16.     val_d = copysign( 0.0, 1.0 );
  17.  
  18.     printf("(2) %lf\n", val_d);
  19.  
  20.     val_d = copysign( 1.0, -1.0 );
  21.  
  22.     printf("(3) %lf\n", val_d);
  23.  
  24.     val_d = copysign( 1.0, 1.0 );
  25.  
  26.     printf("(4) %lf\n", val_d);
  27.  
  28.     val_d = copysign( -1.2, 0.1 );
  29.  
  30.     printf("(5) %lf\n", val_d);
  31.  
  32.     val_d = copysign( -1.2, -0.1 );
  33.  
  34.     printf("(6) %lf\n", val_d);
  35.  
  36.  
  37.  
  38.     float val_f;
  39.  
  40.     val_f = copysignf( 2.0f, -5.0f );
  41.  
  42.     printf("(7) %f\n", val_f);
  43.  
  44.     val_f = copysignf( 20.0f, 123.0f );
  45.  
  46.     printf("(8) %f\n", val_f);
  47.  
  48.     val_f = copysignf( -0.123f, -123.0f );
  49.  
  50.     printf("(9) %f\n", val_f);
  51.  
  52.  
  53.  
  54.     long double val_ld;
  55.  
  56.     val_ld = copysignl( 123.12 , -0.123 );
  57.  
  58.     printf("(10) %Lf\n", val_ld);
  59.  
  60.     return 0;
  61. }
  62.  
  63. /*
  64. output:
  65.  
  66. (1) -0.000000
  67. (2) 0.000000
  68. (3) -1.000000
  69. (4) 1.000000
  70. (5) 1.200000
  71. (6) -1.200000
  72. (7) -2.000000
  73. (8) 20.000000
  74. (9) -0.123000
  75. (10) -123.120000
  76.  
  77. */
Advertisement
Add Comment
Please, Sign In to add comment