This is the code I wrote for calculating the compound interest but I am only getting passes in two tests. help me kindly
int years_until_desired_balance(double balance, double target_balance)
{
if ( balance > 0 && balance >= target_balance) return 0;
else
{
double ab = balance;
int i =1;
if (balance<0)
{ if (balance < target_balance) return -1;
if ( balance == target_balance) return 0;
else
{for ( i=1 ; ab >= target_balance ; i++)
{
double rate = (3.213/100);
ab = ab * ( 1+rate );
}
return I;
}}
if (balance>=0 && balance < 1000)
{ for ( int i=1 ; ab <= target_balance ; i++)
{
double rate = (0.5/100);
ab = ab * (1+rate);
}return I;
}
if (balance>=1000&&balance <5000)
{for ( int i=1 ; ab <= target_balance ; i++)
{
double rate = (1.621/100);
ab = ab *(1+rate);
}return I;
}
else
{ for ( int i=1 ; ab <= target_balance ; i++)
{
double rate = (3.213/100);
ab = ab * (1+rate);
} return I;
}}
}