ट्रैक
/
PHP
PHP
/
अभ्यास
/
पिज़्ज़ा पाई
पिज़्ज़ा पाई

पिज़्ज़ा पाई

सीखने का अभ्यास

परिचय

पूर्णांक

पूर्णांक वे पूर्ण संख्याएँ हैं जो {..., -2, -1, 0, 1, 2, ...} समुच्चय में आती हैं। किसी पूर्णांक का अधिकतम और न्यूनतम मान उस सिस्टम से तय होता है जिसमें PHP चलता है। आम तौर पर अधिकांश आधुनिक सिस्टमों में पूर्णांक एक 64-बिट वैल्यू होती है, यानी यह -9_223_372_036_854_775_808 से 9_223_372_036_854_775_807 तक (दोनों सहित) की संख्याएँ दर्शा सकती है।

<?php

$a = 1234;
$a = 1_234_567;

आप बेस प्रीफिक्स का इस्तेमाल करके पूर्णांक लिटरल वैल्यू 10 के अलावा किसी और बेस में भी लिख सकते हैं:

<?php

$a = 0123; // octal number (equivalent to 83 decimal)
$a = 0o123; // octal number (as of PHP 8.1.0)
$a = 0x1A; // hexadecimal number (equivalent to 26 decimal)
$a = 0b11111111; // binary number (equivalent to 255 decimal)

PHP के डॉक्युमेंटेशन से लिया गया

दशमलव संख्याएँ

दशमलव संख्याएँ PHP में वास्तविक संख्याओं के एक उपसमुच्चय को दर्शाने के लिए इस्तेमाल की जाती हैं। ये एक या अधिक अंकों से शुरू होती हैं, जिन्हें एक दशमलव विभाजक अलग करता है।

<?php

$a = 1.234; 
$b = 1.2e3; 
$c = 7E-10;
$d = 1_234.567; // as of PHP 7.4.0

आम गलतियाँ

सभी संख्याओं और अंकगणितीय क्रियाओं को दशमलव संख्याओं के साथ नहीं किया जा सकता। डॉलर और सेंट दर्शाने के लिए दशमलव संख्याओं का इस्तेमाल करने से राउंडिंग एरर हो सकती है।

<?php

$result = 0.1 + 0.2; // => 0.30000000000000004

अंकगणितीय ऑपरेटर

PHP अंकगणितीय क्रियाएँ करने के लिए कई ऑपरेटर देता है। PHP अपने अंकगणितीय ऑपरेटरों के लिए गणित का मानक क्रम अपनाता है। PHP जो ऑपरेटर देता है, वे हैं:

  • तत्समक (+)
  • ऋणात्मकता (-)
  • जोड़ (+)
  • घटाव (-)
  • गुणा (*)
  • भाग (/)
  • मॉड्यूलो (%)
  • घातांक (**)
$moles = +'10';
$aLotOfMoles = 6.022 * 10**23 * $moles;

निर्देश

लिली को खाना बनाना बहुत पसंद है। वह अपने दोस्तों के साथ एक पिज़्ज़ा पार्टी करना चाहती है। अपनी सामग्री का भरपूर उपयोग करने के लिए उसे शुरू करने से पहले यह जानना होता है कि हर सामग्री कितनी चाहिए।

इसे हल करने के लिए लिली ने एक प्रोग्राम तैयार किया है जो योजना का कुछ काम अपने आप कर देगा, लेकिन उसे पूरा करने के लिए आपकी मदद चाहिए। क्या आप लिली को अनुपात के हिसाब से एकदम सही पिज़्ज़ा पार्टी करने में मदद करेंगे?

1. आटे का अनुपात

लिली को पतली, कुरकुरी पिज़्ज़ा और पतली क्रस्ट बहुत पसंद है। बीच के हिस्से के लिए कम से कम 200 ग्राम आटा लगता है, और हर व्यक्ति के लिए 20 ग्राम आटा अलग से चाहिए।

grams = pizzas * ((persons * 20) + 200)

लिली को एक ऐसा फंक्शन चाहिए जो:

  • पिज़्ज़ा की संख्या लेता है
  • उन व्यक्तियों की संख्या लेता है जिन्हें हर पिज़्ज़ा परोसा जाएगा
  • और ज़रूरी आटा निकटतम ग्राम तक लौटाता है।

उदाहरण के लिए, 8 लोगों के लिए 4 पिज़्ज़ा बनाने के लिए:

<?php

$pizza_pi = new PizzaPi();
$pizza_pi->calculateDoughRequirement(4, 8);
// => 1440

2. थोड़ी सी सॉस

लिली सॉस लगाने में बहुत ध्यान रखती है, लेकिन उसके पिज़्ज़ा का आकार हर बार एक जैसा नहीं होता। अपने अनुभव से उसे पता है कि हर पिज़्ज़ा के लिए 125 मिलीलीटर सॉस लगता है। लिली को एक ऐसा फंक्शन चाहिए जो बताता है कि सॉस के कितने डिब्बे खरीदने हैं।

cans of sauce = pizzas * sauce per pizza / sauce can volume

उदाहरण के लिए, लिली को 8 पिज़्ज़ा बनाने हैं और हर डिब्बे में 250 मिलीलीटर सॉस आता है:

<?php

$pizza_pi = new PizzaPi();
$pizza_pi->calculateSauceRequirement(8, 250);
// => 4

3. ज़रा सा चीज़ भी

चीज़ सही आकार के घनों में आती है और उसकी बिक्री आकार के हिसाब से होती है।

लिली जो सूत्र इस्तेमाल करती है वह पिज़्ज़ा के क्षेत्रफल का सूत्र नहीं है, क्योंकि वह नहीं चाहती कि चीज़ पूरे तल को ढक ले। उसने यह तय किया है कि किसी भुजा की लंबाई वाले चीज़ के घन (cheese_dimension) से किसी व्यास (diameter) के कितने पिज़्ज़ा बनाए जा सकते हैं, यह पता लगाने के लिए वह यह सूत्र इस्तेमाल करेगी:

pizzas = (cheese_dimension³) / (thickness * PI * diameter)

एक फंक्शन बनाइए जो:

  • चीज़ के घन की भुजा की लंबाई लेता है
  • चीज़ की परत की मनचाही मोटाई लेता है
  • पिज़्ज़ा का व्यास लेता है
  • और लिली के सूत्र से यह लौटाता है कि कितने पिज़्ज़ा बन सकते हैं, नीचे की ओर पूर्णांकित करके।

उदाहरण के लिए, 25x25x25 सेमी का चीज़ घन, 0.5 सेमी मोटी चीज़ की परत और 30 सेमी व्यास वाले पिज़्ज़ा:

<?php

$pizza_pi = new PizzaPi();
$pizza_pi->calculateCheeseCubeCoverage(25, 0.5, 30);
// => 331

4. बराबर हिस्सा

अंत में, लिली चाहती है कि उसका हर पिज़्ज़ा 8 स्लाइस में कटे और उसके दोस्तों में बराबर बाँट दिया जाए।

एक फंक्शन बनाइए जो:

  • पिज़्ज़ा की संख्या और दोस्तों की संख्या लेता है
  • और यह लौटाता है कि अगर हर व्यक्ति बराबर स्लाइस ले तो कितने स्लाइस बच जाएँगे।

उदाहरण के लिए:

<?php

$pizza_pi = new PizzaPi();
$pizza_pi->calculateLeftOverSlices(2, 4);
// => 0
$pizza_pi->calculateLeftOverSlices(4, 3);
// => 2
GitHub के ज़रिए संपादित करें यह लिंक एक नई विंडो या टैब में खुलता है
PHP Exercism

पिज़्ज़ा पाई शुरू करने के लिए तैयार हैं?

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