Eliud के अंडे

Eliud के अंडे

आसान

परिचय

आपकी सहेली Eliud को उसकी दादी Tigist से एक खेत विरासत में मिला। उसकी दादी एक आविष्कारक थीं और उन्हें चीज़ें बहुत ही जटिल तरीके से बनाने की आदत थी। मुर्गी के दड़बे में एक डिजिटल डिस्प्ले लगा है। यह एक एनकोड की गई संख्या दिखाता है, जो उन सभी अंडों की जगह बताती है जिन्हें उठाया जा सकता है।

Eliud आपसे एक ऐसा प्रोग्राम लिखने के लिए कह रही हैं जो दड़बे में मौजूद अंडों की वास्तविक संख्या दिखाए।

जगह की जानकारी का एनकोडिंग इस तरह निकाला जाता है:

  1. जिन जगहों पर अंडे हो सकते हैं, उन्हें देखिए और हर जगह के लिए लिखिए: अंडा होने पर 1, और खाली जगह पर 0।
  2. उस संख्या को बाइनरी से दशमलव में बदलिए।
  3. नतीजा डिस्प्ले पर दिखाइए।

उदाहरण 1

एक कतार में लगे सात अलग-अलग घोंसले के डिब्बे, जिनमें पहले, तीसरे, चौथे और सातवें घोंसले में एक-एक अंडा है।

 _ _ _ _ _ _ _
|E| |E|E| | |E|

बनने वाली बाइनरी संख्या

1011001

 _ _ _ _ _ _ _
|1|0|1|1|0|0|1|

डिस्प्ले पर दशमलव संख्या

89

दड़बे में मौजूद वास्तविक अंडे

4

उदाहरण 2

एक कतार में लगे सात अलग-अलग घोंसले के डिब्बे, जिनमें सिर्फ चौथे घोंसले में अंडा है।

 _ _ _ _ _ _ _
| | | |E| | | |

बनने वाली बाइनरी संख्या

0001000

 _ _ _ _ _ _ _
|0|0|0|1|0|0|0|

डिस्प्ले पर दशमलव संख्या

8

दड़बे में मौजूद वास्तविक अंडे

1

निर्देश

आपको यह गिनना है कि किसी संख्या के बाइनरी रूप में कितने 1 बिट हैं।

प्रतिबंध

अपनी स्टैंडर्ड लाइब्रेरी में मिलने वाली उस बिट-गिनती की सुविधा का इस्तेमाल न कीजिए! इसकी जगह इसे दूसरे बुनियादी टूल से खुद हल कीजिए।

कार्यान्वयन

इस अभ्यास में POPCNT का उपयोग न कीजिए।

GitHub के ज़रिए संपादित करें यह लिंक एक नई विंडो या टैब में खुलता है
x86-64 Assembly Exercism

Eliud के अंडे शुरू करने के लिए तैयार हैं?

Exercism पर साइन अप कीजिए और x86-64 Assembly को 22 कॉन्सेप्ट130 अभ्यास तथा असली इंसानों से मिलने वाली मेंटरिंग के साथ सीखिए और उसमें महारत हासिल कीजिए, वह भी बिल्कुल मुफ्त।