Obsah
Při použití Jáva Abychom vytvořili programy, které nesou aritmetické výrazy, musíme mnohokrát přenést vzorce ze skutečného světa, abychom získali naše výpočty, což však nemusí být tak přímé, jak by se mohlo zdát, i když máme všechny operátory.Existují operace, které jsou prováděny s vyšší prioritou než ostatní, když jsou ve výrazu, takže je důležité je znát, abychom z tohoto důvodu nedostali chybné výpočty.
Vyhodnocování výrazů
Jak jsme řekli, máme pořadí priorit, abychom mohli provádět operace, to znamená, že operace navržená tak či onak nám možná může poskytnout výsledek, který od nás neočekáváme, a přiměje nás dopustit se chyby v našem program.
Abychom se tomuto typu problému vyhnuli, podívejme se na následujícím obrázku na následující příklad, kde budeme překládat operaci ze skutečného světa do Jáva a tak můžeme znát priority operace ve výrazu:
Jak vidíme, používáme různé Operátory Java abychom vytvořili ekvivalent prvního výrazu, který vezmeme ze skutečného světa.
Jakmile jste v Javě, jazyk má svá vlastní pravidla pro vyhodnocování a aplikaci přednosti operací, pořadí by bylo následující:
- Vnitřní závorky, potom vnější.
- Násobení
- Divize
- Částky nebo dodatky
- Odečty nebo odčítání
Jak vidíme, dodržujeme pořadí, které jsme uvedli ohledně operací, ale můžeme si všimnout dalšího chování, operace jsou vyhodnoceny zleva doprava, to znamená, že pokud mají dvě operace stejnou prioritu, ta, která je nejblíže vlevo se provede jako první., můžeme to vidět na příkladu v souboru body 2 a 3 což jsou dvě násobení a v body 4 a 5 kde jsou dva přídavky.
Díky tomu již víme, jak provádíme překlad aritmetických operací do Javy.
Provedeme praktický příklad, který nám umožní použít to, co jsme se naučili, provedeme a program, který převádí ze stupňů Fahrenheita na stupně Celsia.
Nejprve se podívejme na původní vzorec pro tento výpočet:
Nyní zde máme kód, který nám umožňuje provést převod:
import Java.util.Scanner; public class FahrenheitToCelsius {public static void main (String [] args) {Scanner input = new Scanner (System.in); System.out.print ("Zadejte stupně Fahrenheita:"); double fahrenheit = input.nextDouble (); // Provádíme konverzi double celsius = (5,0 / 9) * (fahrenheit - 32); System.out.println ("*******************************"); System.out.println ("Fahrenheit" + fahrenheit + "je" + celsius + "ve stupních Celsia"); System.out.println ("*******************************"); }}
Nyní vidíme výsledek našeho programu:
Pokud vidíme vzorec, můžeme nyní provést převod dvojnásobek Celsia = (5,0 / 9) * (stupně Fahrenheita - 32); zde nejprve provedeme operace v závorkách, poté provedeme vynásobení obou výsledků.
Tímto dokončujeme tento tutoriál, pomocí kterého můžeme zajistit, že jsme již schopni přenášet složitější vzorce do našich programů Java bez jakýchkoli nepříjemností.Líbil se vám tento návod a pomohl mu?Autora můžete odměnit stisknutím tohoto tlačítka, čímž mu dáte kladný bod