Я пытаюсь написать код в соответствии с проблемой. Но я столкнулся с проблемой округления. Может ли кто-нибудь объяснить мне, где я столкнулся с проблемой?Где я ошибаюсь? Я не ожидаю выхода
М = 12, Т = 20, X = 8 = наконечник (20 × 12) /100=2.4 налог = (8 × 12) /100=0.96 конечная цена = 12 + 2,4 + 0,96 = 15,36 Официально цена еды составляет $ 15,36, , но округляется до ближайшего доллара (целое число), питание составляет 15 долларов США.
Вот мой полный код:
#include <stdio.h>
#include <string.h>
#include <math.h>
#include <stdlib.h>
int main() {
int t, x;
double m;
scanf("%lf", &m);
scanf("%d", &t);
scanf("%d", &x);
double tip, tax;
tip= m*t/100;
tax= t*x/100;
int total= (int)(round(tip + tax +m));
printf("The final price of the meal is $%d.", total);
return 0;
}
Когда я беру вход 15.91,15,10
он показывает вывод 19
вместо 20
Где я сделал ошибки?
Почему налог рассчитывается на t вместо того, чтобы m? – Jack
Нет, это не ваш полный код. –
't' и' x' не объявлены. – haccks