Sunday, 25 June 2017

Palindrome Number पालिन्ड्रोम नंबर का पता लगाना ~ foundjava

Palindrome

Palindrome वो नंबर होता है जो आगे और पीछे से समान रूप से लिखा जा सकता है। जैसे 14441, इस नंबर को आप आगे से लिखे या पीछे से, इसकी वैल्यू वही रहेगी। जावा में इस प्रोग्राम को बनाने से हमे कहीं concepts सिखने को मिलते है, जैसे while loop, if else , % (डिवीज़न का remainder स्टोर करना ), डाटा टाइप के फायदे, और डिवीज़न।

यह प्रोग्राम समझने में बहुत ही आसान है. हमने सिर्फ यह यह पता लगाना है की हमने किसी नंबर के palindrome होने के बारे में पता लगाने के लिए किस वेरिएबल की आवश्यकता है और उसे हम किस प्रकार प्राप्त कर सकते है। हमे यह तो पता है की पालिन्ड्रोम नंबर आगे और पीछे से सामान लिखा जाता है, तो हमे यहाँ उल्टा लिखा नंबर चाहिए, जिसे हम ओरिजिनल नंबर से compare कर सके।  और इसको उल्टा लिखने के लिए हमे कोई algorithm बनानी होगी। और वो आप while loop  में देख सकते है।

एक बार आप इसकी अल्गोरिथम लिख लेंगे तो प्रोग्राम सरलता से बनाया जा सकता है।

Algorithm:

Step 1) ओरिजिनल नंबर को वेरिएबल में स्टोर करो, यहाँ पर नंबर 121 है और हम उसको number वेरिएबल में स्टोर कर रहे है।
Step 2) एक temporary वेरिएबल डिक्लेअर करो और उसमे ओरिजिनल नंबर स्टोर करो, हमारे प्रोग्राम में temp
Step 3) अब दो नए वेरिएबल को 0 वैल्यू के साथ initialize  करो, हमने remainder
और reverse_number को initialize किया है।
Step 4) while  लूप लिखो जो temp  के zero नहीं होने तक चले
Step 5) Remainder पता लगाओ (dividend%divisor) और उसे रिवर्स नंबर में ऐड करो
Step 6) हर लूप में टेम्प नंबर को एक डिजिट काम करो, क्यों की हम टेम्प में सिर्फ इन्टिजर वैल्यू स्टोर
करते है, तो हम केवल 10 से divide करके इसको कम कर सकते है
Step 7) रिवर्स नंबर को ओरिजिनल नंबर से compare  करो और output में result दिखा दो।


/* Palindrome
Number = 121
$ javac Palindrome.java
$ java Palindrome

Output: Number is Palindrome
*/

public class Palindrome {

   public static void main(String args[]) {
    int number = 121;
    int temp = number;
    int remainder = 0;
    int reverse_number = 0;
    while(temp != 0) {

     remainder = temp%10;
     reverse_number = reverse_number*10 + remainder;
               temp = temp/10;

    }

    if (reverse_number == number){
     System.out.println("Number is Palindrome");
    }
    else {
     System.out.println("Number is not Palindrome");

    }

   }

}

No comments:

Post a Comment