ATM: output is coming in terminal but in codechef showing wrong answer

#include
#include
using namespace std;
int main(){

    int x;
    float y,b;
    cin>>x>>y;

    if(x>y){
    std::cout<< std::fixed<< std::setprecision(2)<< y;

    }

    else if(x%5==0){
    b = y-x-0.50 ;
    std::cout<< std::fixed << std::setprecision(2)<< b;

    }

    else if(x%5!=0){
    std::cout<< std::fixed<< std::setprecision(2)<< y ;
    }



    return 0;

}

You need to check for sufficient funds including fee.