Page 1 of 1
Java spørsmøl
Posted: 30/08-2009 00:24
by gabel
[tex]a/b*c*d[/tex] når en skriver dette i Java språke, tolker den det som [tex]\frac{acd}{b}\;\text{eller}\;\frac{a}{bcd}[/tex]?
Posted: 30/08-2009 01:14
by Markonan
Code: Select all
public class Test {
public static void main(String[] args){
double a = 1;
double b = 2;
double c = 3;
double d = 4;
System.out.println(a/b*c*d);
}
}
Kjørte programmet:
Code: Select all
bash $ javac Test.java
bash $ java Test
6.0
Altså leser den fra venstre mot høyre.
0.5*3*4 = 6
Du må være veldig forsiktig i sånne tilfeller og alltid markere med parenteser. Forskjellige programmeringsspråk har en tendens til å tolke sånt på forskjellige måter.
Posted: 30/08-2009 02:25
by Gommle
/ er en operator, altså en snarvei til en funksjon, f.eks. dele(a, b)
Den tar et element fra hver side av operatoren, og operatorer blir evaluert fra høyre.
a/b*c*d tolkes f.eks. som [tex]\left(\left(\frac ab\right)\cdot c\right)\cdot d[/tex]
Og dette SKAL være standard i nærmest alle programmeringsspråk, og i vanlig matematisk notasjon.