Јава програм за проверу Армстронгова броја

У овом програму ћете научити да проверавате да ли је дати број армстронг број или не. То ћете научити користећи фор петљу и вхиле петљу у Јави.

Да бисте разумели овај пример, требало би да имате знање о следећим темама програмирања Јава:

  • Јава вхиле и уради … вхиле Лооп
  • Изјава за Јава ако … друго
  • Јава за петљу

Позитивни цели број назива се Армстронгов број реда н ако

абцд… = а н + б н + ц н + д н +…

У случају Армстронгова броја од 3 цифре, збир коцки сваке цифре једнак је самом броју. На пример:

 153 = 1 * 1 * 1 + 5 * 5 * 5 + 3 * 3 * 3 // 153 је Армстронгов број. 

Пример 1: Проверите да ли је у Армстронговом броју 3-цифрени број

 public class Armstrong ( public static void main(String() args) ( int number = 371, originalNumber, remainder, result = 0; originalNumber = number; while (originalNumber != 0) ( remainder = originalNumber % 10; result += Math.pow(remainder, 3); originalNumber /= 10; ) if(result == number) System.out.println(number + " is an Armstrong number."); else System.out.println(number + " is not an Armstrong number."); ) )

Оутпут

 371 је Армстронгов број.
  • Прво, дата вредност (број) се чува у другој целобројној променљивој, оригиналНумбер. То је зато што морамо да упоредимо вредности коначног броја и оригиналног броја на крају.
  • Затим се за петљу кроз оригиналНумбер користи петља вхиле док не буде једнака 0.
    • На свакој итерацији, последња цифра броја се чува у остатку.
    • Затим се остатак напаја са 3 (број цифара) помоћу Math.pow()функције и додаје резултату.
    • Затим се последња цифра уклања из оригиналНумбер након дељења са 10.
  • На крају се упоређују резултат и број. Ако је једнак, то је Армстронгов број. Ако није, није.

Пример 2: Проверите Армстронгов број за н цифара

 public class Armstrong ( public static void main(String() args) ( int number = 1634, originalNumber, remainder, result = 0, n = 0; originalNumber = number; for (;originalNumber != 0; originalNumber /= 10, ++n); originalNumber = number; for (;originalNumber != 0; originalNumber /= 10) ( remainder = originalNumber % 10; result += Math.pow(remainder, n); ) if(result == number) System.out.println(number + " is an Armstrong number."); else System.out.println(number + " is not an Armstrong number."); ) )

Оутпут

 1634 је Армстронгов број.

У овом програму, уместо петље вхиле, користили смо две фор петље.

Прва фор петља се користи за бројање броја цифара у броју. То је сажети облик:

 за (; оригиналНумбер! = 0; оригиналНумбер / = 10) (н ++;)

Друга фор петља затим израчунава резултат где се на свакој итерацији остатак напаја бројем цифара н.

Посетите ову страницу да бисте сазнали како можете приказати све армстронг бројеве између два интервала.

Занимљиви Чланци...