desislava_topuzakova

06. Strong Number

Sep 17th, 2021
1,220
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. package BasicSyntaxCondLoops_Exercise;
  2.  
  3. import java.util.Scanner;
  4.  
  5. public class StrongNumber_06 {
  6.     public static void main(String[] args) {
  7.         Scanner scanner = new Scanner(System.in);
  8.         int number = Integer.parseInt(scanner.nextLine());//145 -> 1   4   5
  9.         int startNumber = number; //ървоначалната стойност на числото
  10.         int sumFactDigit = 0; //сумата от факториелите на цифрите
  11.             //stop: number == 0
  12.             //continue: number!=0
  13.             //повтарям:
  14.             // взимам последната цифра -> number % 10
  15.             // намирам факториела
  16.             // добавям към сумата
  17.             //премахвам цифрата -> number / 10
  18.         while(number != 0) {
  19.             int lastDigit = number % 10;
  20.             int fact = 1; //factorial of lastDigit
  21.             for (int i = 1; i <= lastDigit; i++) {
  22.                 fact = fact * i;
  23.             }
  24.             sumFactDigit += fact;
  25.             number = number / 10;
  26.         }
  27.  
  28.         //strong
  29.         if (startNumber == sumFactDigit) {
  30.             System.out.println("yes");
  31.         } else {
  32.             System.out.println("no");
  33.         }
  34.     }
  35. }
RAW Paste Data