Casting අමතක වීම.....

බැලූ බැල්මට 21 වැනි සියවසට නොගැලපෙන කුල වගේ අදහසක් කියලා හිතුනද?බය වෙන්න එපා ඒ වගේ මෝඩ අදහසක් නොවේ....
Coding වලදී සැලකිය යුතුම දෙයක්...ඒ තම එක් එක් අගය අදාල වර්ගයට හැරවීම...
අද ජාවා වල පොඩි සෙල්ලමක් කරද්දී මට අමතක උනා...

class temp
{
public static void main(String[] args)
{
double cel=100;
double fac;
fac=( (9/5d) * cel ) + 32;
System.out.println("Temp in F is : " + fac);
}
}


fac=( (9/5d) * cel ) + 32; වෙනුවට fac=( (9/5) * cel ) + 32; ලිව්වොත් 9/5=1.0000 ලෙස තමා ගන්නේ... 5d මගින් 5,Double බවට හරවනවා....

මම මේකම C වලින් ලිව්වොත්....
int main()
{
double cel=100;
double fac;
fac=((9 / (double)5) * cel ) + 32;
printf("Temp in F is : %lf \n",fac);
}

fac=((9 / (double)5) * cel ) + 32; වෙනුචට fac=((9 / 5) * cel ) + 32; ලිව්වොත් අර ටිකම තමා....

කෝකටත් හැමවෙලේම Casting ගැන සැලකිලිමත් වෙන්න ඕන....
ලොකු ගණනය කිරීමකදී වැර දුනොත් කොහොමද ? :P

Share:

4 comments