Эта программа печатает перекрытие двух интервалов. Но проблема в том, что, если я введу, например, числа: 1.1 -1.1 1.1 1.1, он напечатает целое число. Я пытался написать% 1.1f в последней команде printf, но оказалось, что это еще хуже, потому что тогда, если я введу 1 2 1 1, он напечатает 1.0 и 4.0. Как получить правильный отпечаток, если я введу десятичную или целую?
#include <math.h>
int main() {
float a,b,c,x,derivative;
printf("Input coefficients a, b i c: ");
scanf("%f %f %f",&a,&b,&c);
if((a<(-10)) || (a>10) || (b<(-10)) || (b>10) || (c<(-10)) || (c>10)){
printf("Coefficients a, b i c do not belong in range of (-10,10).");
return 1;
}
printf("Input point x: ");
scanf("%f",&x);
derivative=(2*a*x)+b+(c*0);
printf("First derivation in point x=%.f je %.f.",x,derivative);
return 0;
}