3 svar
38 visningar
solaris är nöjd med hjälpen!
solaris Online 106
Postad: 25 nov 2018

multiplikation med variabelnamn

Hej jag försöker förstå hur java multiplicerar o dividerar. Jagförstår inte hur det funkar då man väljer variabelnamn eller väljer o skriva det rakt ut. För vol2 och vol22 tycker jag är identiska men de får olika värden

AlvinB 1893
Postad: 25 nov 2018 Redigerad: 25 nov 2018

När du skriver "4/3" i vol22 blir både 4 och 3 heltal. Därför antas 4/3 vara en heltalsdivision och således klipps decimaldelen av så att svaret blir ett heltal (1.33... blir 1).

Om du däremot specificerar att du vill ha svaret på divisionen som double genom att casta blir svaret som förväntat:

double vol22 = pi*((double) 4/3);

solaris Online 106
Postad: 26 nov 2018

okej men på vol12. där så multipliceras 4 och pi först och delas sen på tre. eftersom pi är en double så blir väll inte det en heltalsdivision då det divideras med 3?

Laguna 1734
Postad: 26 nov 2018
solaris skrev:

okej men på vol12. där så multipliceras 4 och pi först och delas sen på tre. eftersom pi är en double så blir väll inte det en heltalsdivision då det divideras med 3?

Det stämmer, det blir flyttalsdivision.

Svara Avbryt
Close