Округление до определенных разрядов си

В данном задании вам необходимо написать тело функции is_in, которая определит попадание точки в закрашенную область.

На вход функция получает два числа х и у. Эти числа имеют точность 10−5" data-math-display-mode="false" role="region" tabindex="-1">10−5 , т.е. числа, у которых не больше четырех знаков после запятой.

Функция должна вывести строку "true", если точка попадает в заштрихованную область или попадает на границу, строку "false" - в противном случае. введите сюда описание изображения

Вот мой код, не могу понять почему округление не работает и компилятор просто заканчивает программу с 1

#include <stdio.h>
#include <math.h>

void is_in(float x, float y) 
{
    if (x*x+y*y>=1 && x>1 && y>1)
    printf("true");
    else
    printf("false");
}

int main ()
{
    float x,y;
    scanf("%f%f", &x, &y);
    x= roundf(x*10000)/10000;
    y= roundf(y*10000)/10000;
    is_in(x, y);
    return 0;
}

Ответы (2 шт):

Автор решения: Danis
if (x * x + y * y >= 1 && abs(x) <= 1 && abs(y) <= 1)

Если надо чтобы true выводила только для правого - верхнего угла то:

if (x * x + y * y >= 1 && x <= 1 && y <= 1 && x > 0 && y > 0) 
→ Ссылка
Автор решения: gr_new

То есть так?

 #include <stdio.h>
#include <math.h>

void is_in(float x, float y) 
{
    if (x * x + y * y >= 1 && x <= 1 && y <= 1 && x > 0 && y > 0) 
    printf("true");
    else
    printf("false");
}

int main ()
{
    float x,y;
    scanf("%f%f", &x, &y);
    x=roundf(x*10000)/10000;
    y=roundf(y*10000)/10000;
    is_in(x, y);
    return 0;
}
→ Ссылка