Tato tematika je zpracována v Záznamy přednášek: str

Podobné dokumenty
Tato tematika je zpracována v Záznamy přednášek: str. 12, 14 23, 34-43

Tato tematika je zpracována v Záznamy přednášek: str , 44-61

Paměť počítače. alg2 1

Algoritmizace a programování

Algoritmizace a programování. Terminálový vstup a výstup

Slajdy k přednáškám předmětu. KIV/PPA1. Arnoštka Netrvalová

Algoritmizace a programování

Jak v Javě příkazy, operace a výrazy. BD6B36PJV 00 Fakulta elektrotechnická České vysoké učení technické

5 Přehled operátorů, příkazy, přetypování

Program převod z desítkové na dvojkovou soustavu: /* Prevod desitkove na binarni */ #include <stdio.h>

Algoritmizace a programování

Ahoj mami. Uložení dat v počítači. Příklady kódování dat. IAJCE Přednáška č. 4

Úvod do programování. Lekce 1

Algoritmizace a programování

Proměnná. Datový typ. IAJCE Cvičení č. 3. Pojmenované místo v paměti sloužící pro uložení hodnoty.

Úvod do programovacích jazyků (Java)

Jak v Javě primitivní datové typy a jejich reprezentace. BD6B36PJV 002 Fakulta elektrotechnická České vysoké učení technické

Datové typy strana 29

Formátové specifikace formátovací řetězce

1.1 Struktura programu v Pascalu Vstup a výstup Operátory a některé matematické funkce 5

Zápis programu v jazyce C#

Čísla a číselné soustavy.

Operátory, výrazy. Tomáš Pitner, upravil Marek Šabo

Programovací jazyk Pascal

1. Téma 03 - Rozhodování

7. Datové typy v Javě

- jak udělat konstantu long int: L long velka = 78L;

KTE / ZPE Informační technologie

Java reprezentace dat, výrazy. A0B36PR1-Programování 1 Fakulta elektrotechnická České vysoké učení technické

Data v počítači. Informační data. Logické hodnoty. Znakové hodnoty

Sada 1 - Základy programování

Logické operace. Datový typ bool. Relační operátory. Logické operátory. IAJCE Přednáška č. 3. může nabýt hodnot: o true o false

PROMĚNNÉ, KONSTANTY A DATOVÉ TYPY TEORIE DATUM VYTVOŘENÍ: KLÍČOVÁ AKTIVITA: 02 PROGRAMOVÁNÍ 2. ROČNÍK (PRG2) HODINOVÁ DOTACE: 1

3. přednáška. Obsah: Řídící struktury sekvence, if-else, switch, for, while, do-while. Zpracování posloupnosti

Základy jazyka C. Základy programování 1 Martin Kauer (Tomáš Kühr)

Výrazy a operátory. Operátory Unární - unární a unární + Např.: a +b

Jazyk C# a platforma.net

8. lekce Úvod do jazyka C 3. část Základní příkazy jazyka C Miroslav Jílek

7 Formátovaný výstup, třídy, objekty, pole, chyby v programech

Desetinná čísla. pro celá čísla jsme používali typ int. pro desetinná čísla používáme typ double

Algoritmizace a programování

Obsah. Předmluva 13 Zpětná vazba od čtenářů 14 Zdrojové kódy ke knize 15 Errata 15

Úvod do programovacích jazyků (Java)

Obsah přednášky 7. Základy programování (IZAPR) Přednáška 7. Parametry metod. Parametry, argumenty. Parametry metod.

9. přednáška - třídy, objekty

7. přednáška - třídy, objekty třídy objekty atributy tříd metody tříd

3 KTE / ZPE Informační technologie

1. lekce. do souboru main.c uložíme následující kód a pomocí F9 ho zkompilujeme a spustíme:

Úvod do programování - Java

Základní pojmy. Úvod do programování. Základní pojmy. Zápis algoritmu. Výraz. Základní pojmy

1. lekce. do souboru main.c uložíme následující kód a pomocí F9 ho zkompilujeme a spustíme:

Seminář Java II p.1/43

Programování v Javě I. Leden 2008

Informatika Datové formáty

- speciální symboly + - * / =., < > <> <= >= a další. Klíčová slova jsou chráněnými útvary, které nelze použít ve významu identifikátorů.

Aplikovaná informatika. Podklady předmětu Aplikovaná informatika pro akademický rok 2006/2007 Radim Farana. Obsah. Obsah předmětu

Racionální čísla, operátory, výrazy, knihovní funkce

Předmluva k aktuálnímu vydání Úvod k prvnímu vydání z roku Typografické a syntaktické konvence... 20

for (i = 0, j = 5; i < 10; i++) { // tělo cyklu }

Počítačové laboratoře bez tajemství aneb naučme se učit algoritmizaci a programování s využitím robotů CZ.1.07/1.3.12/

PHP - úvod. Kapitola seznamuje se základy jazyka PHP a jeho začleněním do HTML stránky.

Programování v jazyce JavaScript

Úloha 1 Spojte binární obrazy na obrázku s hodnotami, které reprezentují.

Základy jazyka C. Základy programování 1 Tomáš Kühr

Operátory. Základy programování 1 Tomáš Kühr

8 Třídy, objekty, metody, předávání argumentů metod

Michal Krátký. Úvod do programovacích jazyků (Java), 2006/2007

IAJCE Přednáška č. 7. řízení semaforu na křižovatce = přepínání červená/oranžová/zelená

Operátory. Základy programování 1 Martin Kauer (Tomáš Kühr)

VÝRAZY výrazy = operandy prokládané operátory, vyhodnocované podle priority operátorů

Programování v Javě I. Únor 2009

Racionální čísla, operátory, výrazy, knihovní funkce

2. Základy jazyka. Proměnné. Základy jazyka

Regulární výrazy. Vzory

KTE / ZPE Informační technologie

BI-PA1 Programování a algoritmizace 1 Katedra teoretické informatiky

Programování v jazyce C pro chemiky (C2160) 9. Práce s PDB soubory

Výčtový typ strana 67

Seminář z IVT Proměnné a operátory. Slovanské gymnázium Olomouc 11. září 2014 Tomáš Kühr

BI-PA1 Programování a algoritmizace 1, ZS Katedra teoretické informatiky

Úvod do programování - Java. Cvičení č.4

Datové typy a jejich reprezentace v počítači.

Příklad : String txt1 = new String( Ahoj vsichni! ); //vytvoří instanci třídy String a přiřadí ji vnitřní hodnotu Ahoj vsichni!

3 Jednoduché datové typy Interpretace čísel v paměti počítače Problémy s matematickými operacemi 5

KTE / ZPE Informační technologie

v aritmetické jednotce počíta

Inovace a zkvalitnění výuky prostřednictvím ICT Základy programování a algoritmizace úloh. Ing. Hodál Jaroslav, Ph.D. VY_32_INOVACE_25 09

Algoritmizace a programování. Ak. rok 2012/2013 vbp 1. ze 44

Výrazy, operace, příkazy

Objektově orientované programování

Algoritmy a datové struktury

KTE / PPEL Počítačová podpora v elektrotechnice

LEKCE 6. Operátory. V této lekci najdete:

Příklad: Součet náhodných čísel ve vektoru s počtem prvků, které zadá uživatel, pomocí sum() a pomocí cyklu for. Ověříme, že příliš výpisů na

Architektury počítačů

VISUAL BASIC. Práce se soubory

Teoretické minimum z PJV

Číselné soustavy v mikroprocesorové technice Mikroprocesorová technika a embedded systémy

6. Příkazy a řídící struktury v Javě

Reprezentace dat v informačních systémech. Jaroslav Šmarda

Transkript:

Obsah 2. přednášky: Číselné soustavy Kódování Datové typy a Java Deklarace proměnné Výraz, přiřazení, příkaz Operátory Konverze typu Základní matematické funkce Terminálový formátovaný vstup a výstup Tato tematika je zpracována v Záznamy přednášek: str. 14-44 Problém: Je dán počet testovaných případů t (1 t 100) a pro každý takový případ je na samostatném řádku zadáno celé číslo n (-1000 n 1000). Pro všechna zadaná n spočtěte a na samostatném řádku vypište výsledek následujícího úkolu: Vynásobte číslo n 567mi, poté vydělte výsledek 9, přičtěte 7492, pak vynásobte 235, výsledek vydělte 47 a odečtěte 498. Jaká číslice je ve vypočtené hodnotě na řádu desítek? Úvod k řešení bude uveden na konci této přednášky. Přednášky KIV/PPA1, A. Netrvalová, 2011 2. přednáška

Číselné soustavy Př. desítková soustava 3 2 1 5321 5 10 3 10 2 10 1 10 Zápis celého čísla N a m 1 m 2 1 0 m 1 Z am 2Z... a1z a0z Zápis desetinné části N 1 2 a Z a Z... a 1 2 nz kde: Z základ, m počet řádových míst, a i koeficient n počet desetinných míst m K Kapacita soustavy Největší hodnota soustavy N Z m 1 Významné soustavy Z MAX n Základ Soustava Hodnoty 10 2 8 16 desítková (dekadická) 0,1,2,3,4,5,6,7,8,9 dvojková ( binární), 0,1 osmičková (oktalová) 0,1,2,3,4,5,6,7 šestnáctková (hexadecimální) 0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F Šestnáctková soustava: (A) 16 =(10) 10 (D) 16 =(13) 10 (B) 16 =(11) 10 (E) 16 =(14) 10 (C) 16 =(12) 10 (F) 16 =(15) 10 0 Strana 2 (celkem 22)

Převody - převádíme odděleně celou a desetinnou část - převod dekadického čísla 25,625 = x (2) (k=2) x c x c /k x c mod k x d x d *k 25 12 1 0,625 1,250 12 6 0 0,250 0,5 6 3 0 0,5 1,0 3 1 1 1 0 1 25,625 (10) = 11001,101 (2) Převody mezi soustavami o z = 2 N 11001 (2) = 31 (8) 11001 (2) = 19 (16) Kódování - podrobně bude předneseno na konci semestru Kódy pro celá čísla přímý inverzní doplňkový s posunutou nulou Strana 3 (celkem 22)

Kódy pro reálná čísla - jednoduchá a dvojnásobná přesnost Kódy pro znaky ASCII - číslice vs. číslo, znak vs. hodnota ASCII kódu! Kódy pro logické hodnoty Datové typy a Java datový typ = množina hodnot +množina operací primitivní datový typ číslo/znak/logická hodnota Java Číselné typy celá čísla Typ Rozsah byte -128..127 short -32768..32767 int -21474836448..2147483647 long -9223372036854775808..9223372036854775807 Číselné typy reálná čísla Typ Rozsah double 4.9E-324..1.7976931348623157E308 float 1.4E-45.. 3.4028235E38 Strana 4 (celkem 22)

Číselné konstanty Double.POSITIVE_INFINITY (+ ) Double.NEGATIVE_INFINITY(- ) Double.NaN (Not a Number) Integer.MAX_VALUE (největší hodnota) Double.MIN_VALUE (nejmenší hodnota) Znakové typy a konstanty char znaková konstanta je uzavřena v apostrofech 'A', '1', '%' Řetězcové konstanty String je v Javě třída, proto zatím budeme řetězce užívat pouze pro výstup, např. "tento retezec" a "tento" + "retezec" (pozor na typ uvozovek!) Logický typ a konstanty boolean true (logická 1), false (logická 0) && logický součin, logický součet,! negace A B A && B A B!A false false false false true false true false true true true false false true false true true true true false Poznámka datový typ výčet (Záznamy str.66) pro zájemce Strana 5 (celkem 22)

Deklarace proměnné Deklarace stanovení symbolického jména a datového typu deklarace s inicializací (stanovení počáteční hodnoty) pojmenovaná konstanta (hodnota se nemění, final) Proměnná = symbolicky pojmenovaný datový objekt v operační paměti Identifikátor - jméno proměnné, konstanty, metody, třídy... Pravidla pro zápis - neomezená délka - začíná písmenem, podtržítkem ( _ ) nebo dolarem ($) - nesmí obsahovat operátory - nelze použít rezervovaná slova Konvence v Javě nutno dodržovat třídy začínají velkým písmenem (další slovo velkým) metody a proměnné začínají malým písmenem konstanty všechna písmena velká, podtržítka balíky pouze malá písmena Výraz, přiřazení, příkaz Výraz - předepisuje postup při výpočtu hodnoty určitého typu skládá se z operandů (proměnné, konstanty, volání metod...) a operátorů (+,-,*,/,...) Přiřazení a příkaz - nastavení hodnoty = (není to rovnice) proměnná = výraz; - toto celé je příkaz Strana 6 (celkem 22)

Příklady: final char MEZERA = ' '; int pocet = 0; pocet = pocet +3; // vypocet plochy int polomer = 1; double plocha = polomer*polomer*3.14; System.out.println("P("+polomer+")="+plocha); // vypocet dalsi plochy P(1) =3.14 polomer = 2; plocha = polomer*polomer*3.14; System.out.println("P("+polomer+")="+plocha); P(2) =12.56 Operátory Operace s operandy určují operátory unární, binární, ternární (1) aritmetické, relační, přiřazovací, bitové Vyhodnocení výrazu zleva doprava dle priorit Priority možno upravit použitím závorek Strana 7 (celkem 22)

Priorita operátorů ++, -- *, /, % +, - <, <=, >, => ==,!= && =, +=, -=, *=, /=, %= Poznámka: /... celočíselné vs. reálné Příklad: vzdálenost dvou bodů v rovině v 2 x x y 2 1 2 1 y2 int x1 = 0, y1 = 0; int x2 = 1, y2 = 1; double v = Math.sqrt((x1-x2)*(x1-x2)+(y1-y2)*(y1-y2)); System.out.println("v = " + v); v = 1,41... Strana 8 (celkem 22)

Konverze typu proměnné lze přiřadit jen hodnotu stejného typu jinak přetypování - implicitní (automaticky) - explicitní (nutno napsat), jen pro danou operaci, typ proměnné se trvale nezmění! double r,p; r = 3; // implicitni - rozsireni typu int i = 1; p = i; // implicitni p = (double) i; // lepe explicitne, je to umysl i = (int) r; // explicitni ztrata rozsahu i = (int) p + r; // chybne!!! i = (int) (p + r); // spravne Základní matematické funkce Standardní funkce (Třída Math) mocnina druhá odmocnina goniometrické funkce logaritmus exponenciální fce Konstanty - π, e... viz Java Core API. Strana 9 (celkem 22)

Příklady použití standardních funkcí: double pi = Math.PI; //3.141592653 double e = Math.E; // Math.exp(1); int a =3, b = 4; double prepona = Math.sqrt(Math.pow(a,2)+b*b); // 5 double v = Math.pow(Math.sin(1),2)+Math.pow(Math.cos(1),2); // 1 double logaritmusdes = Math.log10(100); // 2 double logaritmuspriroz = Math.log(Math.E); // 1 double nahodnecislox = Math.random(); // 0.0 X 1.0 Příklad: // minimum ze 3 cisel int a = 1, b = 2, c = 3 ; int min = Math.min (Math.min (a, b),c); System.out.println("min = " + min); min = 1 Důležitá poznámka Problémy při provádění aritmetických operací 1. Přetečení a podtečení čísla Je-li hodnota exponentu čísla větší než maximální zobrazitelná dochází k přetečení menší než minimální zobrazitelná dochází k podtečení přetečení podtečení přetečení -max -min 0 +min +max Strana 10 (celkem 22)

2. Porovnání dvou reálných čísel double x, y; x == y!! nikdy takto!!! upravit prostřednictvím <=, >= if (x == y) nahradit if (Math.abs(x - y) < ε) kde: ε absolutní chyba porovnání 3. Problém zaokrouhlení (důvod: zobrazení čísel) Nevhodným řazením operací násobení a dělení může dojít vlivem zaokrouhlení k výrazným chybám. System.out.println(1/Math.sqrt(3) * Math.sqrt(78)); // ne! System.out.println(Math.sqrt(78) / Math.sqrt(3)); // ok // 5.099019513592786 // 5.099019513592785 Generátor náhodných čísel (pseudo)náhodná čísla(celá, reálná) třída Random - nutný import balíčku java.util - inicializace = vytvoření objektu (obdobně jako u DrawingTool) Strana 11 (celkem 22)

Příklad: import java.util.*; public class NahodnaCisla { public static void main (String[]args) { Random r = new Random(); // Random r = new Random(1); // stale stejna nahodna posloupnost } } double realne = r.nextdouble(); //nema parametr int pocetcisel = 10; // 0,1,2,3,4,5,6,7,8,9 int cele = r.nextint(pocetcisel); //muze mit parametr System.out.println("" + realne + " : " + cele); long velkecele = r.nextlong(); //nema parametr System.out.println("" + velkecele); Poznámka: r je proměnná - reference třídy Random nextint() - metoda vrací náhodné celé číslo typu int nextint(celecislo) vrací náhodné celé číslo v rozsahu 0, celecislo-1 nextdouble() je metoda třídy Random vracející náhodné reálné číslo 0.0, 1.0 Strana 12 (celkem 22)

Terminálový formátovaný Vst/Výst terminálový - velmi primitivní V/V (klávesnice, obrazovka - txt režim) formátovaný čísla jsou na výstupu automaticky převedena na řetězec číslic v desítkové soustavě Klasický výstup System.out.print(parametr), System.out.println(), System.out.println(parametr) print(parametr) metoda třídy System, pro výstup parametr primitivní typ nebo řetězec funkce - pro každý primitivní typ existuje implicitní konverze na řetězec int i=1; System.out.print ("i = " +i); System.out.println('A'); // i = 1A System.out.println(Math.E); System.out.println(5); System.out.println(5.25); System.out.println("Hello world\n"); // "\n" odradkovani System.out.println(5 + i + 'A'); // ALE POZOR: 71=5+1+65 (65=kod pismena velke A) System.out.println("" + 5 + i + 'A'); // 51A ok! System.out.println("index = " + i + 2); // ALE jeste jednou POZOR: chci soucet, ale vypis = 12 System.out.println("index = " + (i+2)); // 3 ok! Strana 13 (celkem 22)

Lepší řešení výstupu (od JDK 1.5) Použití metody - System.out.format(parametr) pozor: parametry jsou odděleny, (čárkou) nikoliv + Používat jen, je-li to nutné! Více informací: Záznamy přednášek (str. 36 38) + java.util.formatter Příklad (program + výstup): import java.util.formatter; public class FormatovaniVystupu { public static void main(string [] args) { System.out.format("nova radka%n"); int i = -1234; System.out.format("i = %d%n", i); System.out.format("i = %7d%n", i); System.out.format("i = %-7d%n", i); System.out.format("i = %+7d%n", i); System.out.format("i = % 7d%n", i); System.out.format("i = %07d%n", i); System.out.format("i = %, 7d%n", i); char c = 'a'; System.out.format("c = %c%n", c); System.out.format("c = %3c%n", c); System.out.format("c = %C%n", c); System.out.format("c = %c%n", c); System.out.format("c = %c%n", 65);... pokračování na dalším slidu Strana 14 (celkem 22)

} } double d = 1234.567; System.out.format("d = %f%n", d); System.out.format("d = %g%n", d); System.out.format("d = %e%n", d); System.out.format("d = %10.1f%n", d); System.out.format("d = %-10.1f%n", d); int j = 30; System.out.format("j = %o%n", j); System.out.format("j = %x%n", j); System.out.format("j = %X%n", j); System.out.format("j = %3X%n", j); System.out.format("j = %#x%n", j); String s = "ahoj lidi"; System.out.format("s = %s %n", s); System.out.format("s = %S %n", s); System.out.format("s = %11s %n", s); System.out.format("s = %-11s %n", s); System.out.format("s = %.3s %n", s); System.out.format("s = %11.3s %n", s); System.out.format("Pivo \"lezak\" ma 12%%%n"); System.out.format("Znak 'backslash' je \\%n"); j = 30; System.out.format("%d = %o = %X%n", j, j, j); System.out.format("%1$d = %1$o = %1$X%n", j); System.out.format("%d = %<o = %<X%n", j); String zformatovanyretezec = String.format ("%6d", 123); System.out.println("konec"); Strana 15 (celkem 22)

nova radka i = -1234 i = -1234 i = -1234 i = -1234 i = -1234 i = -001234 i = -1 234 c = a c = a c = A c = a c = A d = 1234,567000 d = 1234.57 d = 1.234567e+03 d = 1234,6 d = 1234,6 j = 36 j = 1e j = 1E j = 1E j = 0x1e s = ahoj lidi s = AHOJ LIDI s = ahoj lidi s = ahoj lidi s = aho s = aho Pivo "lezak" ma 12% Znak 'backslash' je \ 30 = 36 = 1E 30 = 36 = 1E 30 = 36 = 1E konec Strana 16 (celkem 22)

Formátovaný vstup od. JDK 1.5 - jednoduché řešení třída Scanner, použitelné i pro soubory (bude uvedeno později) postupujeme obdobně jako u třídy Random - import balíčku java.util - inicializace, vytvoření objektu (new) - nutno řešit lokalizaci (. vs., v reálném čísle) - používá metody: Příklad: nextint(), nextdouble(), next(), nextline() Načti dvě čísla (reálné, celé) a spočti jejich průměr. import java.util.*; public class VstupScanner { public static void main(string [] args) { Scanner sc = new Scanner(System.in); sc.uselocale(locale.us); // lokalizace! System.out.print("Zadej 1. cislo realne: "); double cislo1 = sc.nextdouble(); System.out.println("Zadano bylo: " + cislo1); System.out.print("Zadej 2. cislo cele: "); int cislo2 = sc.nextint(); System.out.println("Zadano bylo: " + cislo2); } } double prumer = (cislo1 + cislo2)/2; System.out.println("Prumer = " + prumer); Strana 17 (celkem 22)

Příklad (problém vyprázdnění vstupu) import java.util.*; public class VyprazdneniVstupu { } } public static void main(string [] args) { Scanner sc = new Scanner(System.in); sc.uselocale(locale.us); System.out.print("Zadej cele cislo: "); int cislo = sc.nextint(); System.out.println("Zadano bylo: " + cislo); System.out.print("Zadej realne cislo: "); double realne = sc.nextdouble(); System.out.println("Zadano bylo: " + realne); sc.nextline(); // docteni radky <cr> a <lf> - vyprazdneni vstupu System.out.print("Zadej vetu: "); String veta = sc.nextline(); System.out.println("Zadano bylo: " + veta); System.out.print("Zadej znak: "); char znak = sc.next().charat(0); System.out.println("Zadano bylo: " + znak); System.out.print("Zadej slovo: "); String slovo = sc.next(); System.out.println("Zadano bylo: " + slovo); Strana 18 (celkem 22)

Výstup 1. programu: Zadej 1. cislo realne: 12.3 Zadano bylo: 12.3 Zadej 2. cislo cele: 12 Zadano bylo: 12 Prumer = 12.15 Výstup 2. programu: Zadej cele cislo: 12 Zadano bylo: 12 Zadej realne cislo: 12.2 Zadano bylo: 12.2 Zadej vetu: Ahoj, jak se mas? Zadano bylo: Ahoj, jak se mas? Zadej znak: w Zadano bylo: w Zadej slovo: lepidlo Zadano bylo: lepidlo Metody nextint(), nextdouble() a next() jsou tzv. žravé přečtou a zlikvidují všechny bílé znaky (mezera, znaky konce řádky, tabulátor) Řešení před použitím metody nextline() vyprázdnit vstup příkazem sc.nextline() Pozor ale: metoda nextline() není žravá, ale za to zlikviduje znaky konce řádky, proto se za ní nesmí použít příkaz sc.nextline()! Vyprázdnění vstupu bývá častou chybou! Strana 19 (celkem 22)

Správné použití třídy Scanner public class PouzitiScanneru{ static private Scanner sc = new Scanner(System.in); public static void main (String [] args) { } } int a = sc.nextint(); Takto budeme Scanner používat při vícenásobném volání (např. v main() a v nějaké další metodě) více bude vysvětleno později. Vstup s použitím argumentů (příkazová řádka) public class VstupArgumenty { // cisla zadana jako parametry v prikazove radce public static void main(string[] args) { } } int a = Integer.parseInt(args[0]); System.out.print(" a = " + a); int b = Integer.parseInt(args[1]); System.out.print(" b = " + b); int suma = a + b; System.out.println("suma = " + suma); Na příkazové řádce spustíme: java VstupArgumenty 5 7 metoda parseint() provádí převod řetězce na celé číslo (bude vysvětleno později - se třídou String) Strana 20 (celkem 22)

Jak na problém? Použijeme znalosti z dnešní přednášky. Budeme řešit pouze: Pro zadané n spočtěte a na samostatném řádku vypište výsledek následujícího úkolu: Vynásobte číslo n 567-mi, poté vydělte výsledek 9, přičtěte 7492, pak vynásobte 235, výsledek vydělte 47 a odečtěte 498. Jaká číslice je ve vypočtené hodnotě na řádu desítek? Začátek čti n v n * 567 / 9 v (v + 7492) * 235 v v/ 47-498 v v/ 10 mod 10 v v načti n v n * 567 / 9 v (v + 7492) * 235 v v/ 47 498 v v/10 mod 10 v v vypiš v vypiš v Konec Strana 21 (celkem 22)

int n = sc.nextint(); int v = (n * 567 / 9 + 7492) * 235 / 47 498; v = v/10 % 10; v = Math.abs(v); System.out.println(v); Pokračování na konci další přednášky... Strana 22 (celkem 22)