Šioje programoje išmoksite pakeisti skaičių naudodami „Java“ „while loop“ ir „for loop“.
Norėdami suprasti šį pavyzdį, turite žinoti šias Java programavimo temas:
- „Java“ ir daryk … o „Loop“
- „Java for Loop“
1 pavyzdys: Apverskite skaičių naudodami „Java“ kilpą
public class ReverseNumber ( public static void main(String() args) ( int num = 1234, reversed = 0; while(num != 0) ( int digit = num % 10; reversed = reversed * 10 + digit; num /= 10; ) System.out.println("Reversed Number: " + reversed); ) )
Rezultatas
Atvirkštinis skaičius: 4321
Šioje programoje, nors ciklas naudojamas skaičiui pakeisti, kaip nurodyta toliau:
- Pirma, likusi skaičiaus dalis, padalyta iš 10, saugoma kintamajame skaitmenyje. Dabar skaitmenyje yra paskutinis skaitmens skaitmuo, ty 4
skaitmuo pridedamas prie pakeisto kintamojo, padauginus jį iš 10. Padauginus iš 10, pakeistame skaičiuje pridėta nauja vieta. Viena vieta, padauginta iš 10, suteikia dešimtąją vietą, dešimtoji - šimtąją ir t. Tokiu atveju atvirkštiniame yra 0 * 10 + 4 = 4.
Tada skaičius padalijamas iš 10, kad dabar jame būtų tik pirmieji trys skaitmenys: 123. - Po antrosios iteracijos skaitmuo lygus 3, atvirkštinis lygus 4 * 10 + 3 = 43 ir skaičius = 12
- Po trečios iteracijos skaitmuo lygus 2, atvirkštinis lygus 43 * 10 + 2 = 432 ir skaičius = 1
- Po ketvirtosios iteracijos skaitmuo lygus 1, atvirkštinis lygus 432 * 10 + 1 = 4321 ir num = 0
- Dabar num = 0, todėl bandomoji išraiška
num != 0
nepavyksta ir kol kilpa išeina. atvirkštiniame jau yra atvirkštinis skaičius 4321.
2 pavyzdys: Apverskite skaičių naudodami „Java“ kilpą
public class ReverseNumber ( public static void main(String() args) ( int num = 1234567, reversed = 0; for(;num != 0; num /= 10) ( int digit = num % 10; reversed = reversed * 10 + digit; ) System.out.println("Reversed Number: " + reversed); ) )
Rezultatas
Atvirkštinis numeris: 7654321
Pirmiau pateiktoje programoje „while“ kilpa pakeičiama „for loop“, kur:
- jokia inicializavimo išraiška nenaudojama
- testo išraiška išlieka ta pati (
num != 0
) - atnaujinimo / prieaugio išraiškoje yra
num /= 10
.
Taigi, po kiekvienos iteracijos paleidžiama atnaujinimo išraiška, kuri pašalina paskutinį skaitmens skaičių.
Kai „for loop“ išeis, atvirkštiniame bus nurodytas pakeistas skaičius.