logo

Java'da Casus Numarası

Bu bölümde öğreneceğiz casus numarası nedir ve ayrıca yarat Java programları Verilen numaranın olup olmadığını kontrol etmek için Casus ya da değil. casus numara programı sıklıkla sorulur Java kodlama testi

Casus Numarası

Pozitif bir tamsayıya casus numarası denir, eğer toplam Ve ürün rakamlarının toplamı eşittir. Başka bir deyişle tüm rakamlarının toplamı ve çarpımı eşit olan sayıya denir. casus numarası .

Casus Numarası Örneği

1124 numarasını alalım ve numaranın casus olup olmadığını kontrol edelim. İlk önce bunu rakamlara (1, 1, 2, 4) böleceğiz. Daha sonra tüm rakamların toplamını ve çarpımını bulun.

Toplam =1+1+2+4= 8

Java'da nesne dizisi

Ürün =1*1*2*4= 8

Rakamların toplamının ve çarpımının eşit olduğunu görüyoruz. Buradan, 1124 bir casus numarasıdır.

bir ayda kaç hafta var

Benzer şekilde diğer sayıları da kontrol edebiliriz. Diğer bazı casus numaraları 22, 123, 132 vb.'dir.

Java'da Casus Numarası

Casus Numarasını Bulmak İçin Adımlar

  1. Bir sayıyı okuyun veya başlatın ( N ) kontrol etmek istediğinizi seçin.
  2. İki değişken bildirin toplam Ve ürün rakamların toplamını ve çarpımını saklamak için. Toplamı şununla başlat: 0 ve ürün ile 1 .
  3. Bul son Modulo operatörünü kullanarak verilen sayının rakamını (n%10) bulun.
  4. Eklemekdeğişken toplamının son rakamı.Çarpmakürün değişkeninin bulunduğu son rakam.BölmekVerilen sayıyı (n) 10'a katlayarak son rakamı siler.
  5. Adımları tekrarlayın 3 ila 6 verilen sayı (n) 0 olana kadar.
  6. Toplam ve çarpım değişkeni aynı değere sahipse, verilen sayı (n) bir casus sayı , aksi takdirde bir casus numarası değil.

Yukarıdaki adımları bir Java programında uygulayalım.

Casus Numara Java Programı

SpyNumberExample1.java

java soyut sınıfı
 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.'); } } 

Çıkış 1:

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

Çıkış 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;>