Помогите с округлением без библиотеки math в си

Рейтинг: -4Ответов: 1Опубликовано: 26.01.2023

float_int_run Бегуны Два бегуна бегают по круговой гаревой дорожке. Тренировку они начали одновременно.

Первый бегун пробежал всего

0<n<1000 кругов.

Первый бегун бежит со скоростью

v, второй со скоростью kv, где 0<k≤1.

Сколько раз бегуны встретились за время тренировки на дорожке?

Дано: целое число n и, через пробел, дробное число k.

Найти: целое число - количество встреч.

Пример: при вводе 0.5 программа должна вывести 1, т.е. округлить в большую сторону

Мой код:

#include <stdio.h>
int main(){
    int n;
    float k;
    scanf("%d", &n, &k);
    int krug_2 = n * k;
    int meet = n - krug_2;
    printf("%d", meet);
    return 0;
}

Ответы

▲ 1

Ну ведь вам же сказано, что k между 0 и 1, что это дробное число. И читать его нужно не как целое (впрочем, вы даже этого не делали, вообще его не читая...), а как float:

float k;
scanf("%d %f", &n, &k);

А дальше все просто, как вы и написали, считаем и выводим целую часть n*(1.-k):

int meet = n*(1.-k);
printf("%d", meet);