1unsigned int 2f1 (int diff) 3{ 4 return ((unsigned int) (diff < 0 ? -diff : diff)); 5} 6 7unsigned int 8f2 (unsigned int diff) 9{ 10 return ((unsigned int) ((signed int) diff < 0 ? -diff : diff)); 11} 12 13unsigned long long 14f3 (long long diff) 15{ 16 return ((unsigned long long) (diff < 0 ? -diff : diff)); 17} 18 19unsigned long long 20f4 (unsigned long long diff) 21{ 22 return ((unsigned long long) ((signed long long) diff < 0 ? -diff : diff)); 23} 24 25main () 26{ 27 int i; 28 for (i = 0; i <= 10; i++) 29 { 30 if (f1 (i) != i) 31 abort (); 32 if (f1 (-i) != i) 33 abort (); 34 if (f2 (i) != i) 35 abort (); 36 if (f2 (-i) != i) 37 abort (); 38 if (f3 ((long long) i) != i) 39 abort (); 40 if (f3 ((long long) -i) != i) 41 abort (); 42 if (f4 ((long long) i) != i) 43 abort (); 44 if (f4 ((long long) -i) != i) 45 abort (); 46 } 47 exit (0); 48} 49