Advertisement
desislava_topuzakova

06. Strong Number

Sep 17th, 2022
1,020
0
Never
1
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.68 KB | None | 0 0
  1. package basicSyntax.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.         //1. цяло число
  9.         //2. проверка дали е strong
  10.         //ако е strong -> "yes"
  11.         //ако не е strong -> "no"
  12.  
  13.         int number = Integer.parseInt(scanner.nextLine()); // стойността на числото, която ще модифицирам
  14.         int startNumber = number; //първоначално въведената стойност на числото
  15.  
  16.         //за всяка цифра
  17.         //1. цифра -> 1. последната цифра (%10) 2. ------  3. премахваме (/10) -> поватаряме: число > 0
  18.         //2. намирам факториел
  19.         //3. сумирам факториела
  20.  
  21.         int sumFact = 0; //сума от факториелите
  22.         while (number > 0) {
  23.             int lastDigit = number % 10; //последната цифра
  24.             // намирам факториела на числото lastDigit
  25.             int fact = 1;
  26.             for (int i = 1; i <= lastDigit; i++) {
  27.                 fact = fact * i;
  28.             }
  29.             //сумирам факториел
  30.             sumFact += fact;
  31.             number = number / 10; // премахваме последната цифра
  32.         }
  33.  
  34.         //проверка дали сумата от факт == първ. число
  35.         if (sumFact == startNumber) {
  36.             System.out.println("yes");
  37.         } else {
  38.             System.out.println("no");
  39.         }
  40.  
  41.     }
  42. }
  43.  
Advertisement
Comments
  • 1mD87
    1 year
    # text 1.68 KB | 0 0
    1. package basicSyntax.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. //1. цяло число
    9. //2. проверка дали е strong
    10. //ако е strong -> "yes"
    11. //ако не е strong -> "no"
    12.  
    13. int number = Integer.parseInt(scanner.nextLine()); // стойността на числото, която ще модифицирам
    14. int startNumber = number; //първоначално въведената стойност на числото
    15.  
    16. //за всяка цифра
    17. //1. цифра -> 1. последната цифра (%10) 2. ------ 3. премахваме (/10) -> поватаряме: число > 0
    18. //2. намирам факториел
    19. //3. сумирам факториела
    20.  
    21. int sumFact = 0; //сума от факториелите
    22. while (number > 0) {
    23. int lastDigit = number % 10; //последната цифра
    24. // намирам факториела на числото lastDigit
    25. int fact = 1;
    26. for (int i = 1; i <= lastDigit; i++) {
    27. fact = fact * i;
    28. }
    29. //сумирам факториел
    30. sumFact += fact;
    31. number = number / 10; // премахваме последната цифра
    32. }
    33.  
    34. //проверка дали сумата от факт == първ. число
    35. if (sumFact == startNumber) {
    36. System.out.println("yes");
    37. } else {
    38. System.out.println("no");
    39. }
    40.  
    41. }
    42. }
    43.  
Add Comment
Please, Sign In to add comment
Advertisement