logo

Spy-nummer in Java

In dit gedeelte zullen we leren wat is een spionagenummer en ook creƫren Java-programma's om te controleren of het opgegeven nummer aanwezig is Spion of niet. De spion nummer programma wordt vaak binnen gevraagd Java coderingstest.

Spionage nummer

Een positief geheel getal wordt een spionagenummer genoemd als de som En Product van de cijfers zijn gelijk. Met andere woorden, een getal waarvan de som en het product van alle cijfers gelijk zijn, wordt a genoemd spion nummer .

Voorbeeld van spionagenummer

Laten we het nummer 1124 nemen en controleren of het nummer een spion is of niet. Eerst splitsen we het in cijfers (1, 1, 2, 4). Zoek daarna de som en het product van alle cijfers.

Som =1+1+2+4= 8

supw

Product =1*1*2*4= 8

We zien dat de som en het product van de cijfers beide gelijk zijn. Vandaar, 1124 is een spionagenummer.

hoeveel weken heeft een maand

Op dezelfde manier kunnen we ook andere nummers controleren. Enkele andere spionagenummers zijn 22, 123, 132, enz.

Spy-nummer in Java

Stappen om het spionagenummer te vinden

  1. Een getal lezen of initialiseren ( N ) die u wilt controleren.
  2. Declareer twee variabelen som En Product om de som en het product van cijfers op te slaan. Initialiseer som met 0 en product mee 1 .
  3. Vind de laatst cijfer (n%10) van het opgegeven getal met behulp van de modulo-operator.
  4. Toevoegenhet laatste cijfer van de variabele som.Vermenigvuldigenhet laatste cijfer met de productvariabele.Verdelinghet gegeven getal (n) met 10. Het verwijdert het laatste cijfer.
  5. Herhaal stappen 3 tot 6 totdat het gegeven getal (n) 0 wordt.
  6. Als de variabele som en het product dezelfde waarde hebben, dan is het gegeven getal (n) a spion nummer , anders geen spionagenummer.

Laten we de bovenstaande stappen implementeren in een Java-programma.

Spy Number Java-programma

SpyNumberVoorbeeld1.java

byte-array naar string
 import java.util.Scanner; public class SpyNumberExample1 { public static void main(String args[]) { int num, product=1, sum=0, lastdigit; // create object of scanner Scanner sc = new Scanner(System.in); System.out.print('Enter the number to check: ' ); //reads an integer from the user and stores it in the variable num num=sc.nextInt(); //executes untill the condition becomes false while(num>0) { //finds the last digit of the number lastdigit=num%10; //adds last digit to the variable sum sum=sum+lastdigit; //calculates the product product=product*lastdigit; //removes the last digit from the given number num=num/10; } //compares the sum and product if(sum==product) //prints if the above condition returns true System.out.println('The given number is a spy number.'); else //prints if the above condition returns false System.out.println('The given number is not a spy number.'); } } 

Uitgang 1:

 Enter the number to check: 123 The given number is a spy number. 

Uitgang 2:

 Enter the number to check: 456 The given number is a not spy number. 

SpyNumberExample2.java

 import java.util.Scanner; public class SpyNumberExample2 { //method to check the Spy number private static boolean isSpyNumber(int number) { int lastDigit = 0; int sum = 0; int product = 1; //executes until the condition returns true while(number != 0) { //determines the last digit of the given number lastDigit = number % 10; //adds the last digit to the variable sum sum = sum + lastDigit; //multiply last digit with product product = product * lastDigit; //removes the last digit of the given number number = number / 10; } //compares the variable sum with product and returns the result accordingly if(sum == product) return true; return false; } //driver code public static void main(String args[]) { int lowerRange = 0, upperRange = 0; Scanner sc = new Scanner(System.in); System.out.print(&apos;Enter the lower range: &apos;); //reads lower range lowerRange = sc.nextInt(); System.out.print(&apos;Enter upper range: &apos;); //reads the upper range upperRange = sc.nextInt(); System.out.println(&apos;The Spy numbers between &apos;+ lowerRange + &apos; to &apos;+ upperRange+&apos; are: &apos;); for(int i=lowerRange; i<=upperrange; i++) { calling user-defined function that checks if the given number is spy or not if(isspynumber(i)) prints all numbers system.out.print(i +' '); } < pre> <p> <strong>Output:</strong> </p> <pre> Enter the lower range: 1 Enter upper range: 10000 The Spy numbers between 1 to 10000 are: 1 2 3 4 5 6 7 8 9 22 123 132 213 231 312 321 1124 1142 1214 1241 1412 1421 2114 2141 2411 4112 4121 4211 </pre> <hr></=upperrange;>