R में भी वही ऑपरेटर हैं जो कई दूसरी भाषाओं में मिलते हैं:
1 == 2 # FALSE
1 != 2 # TRUE
1 < 2 # TRUE
1 > 2 # FALSE
1 <= 2 # TRUE
1 >= 2 # FALSE
if-else का सामान्य रूप ऐसा होता है:
if (x > 10) {
y <- "big"
} else if (x > 2) {
y <- "medium"
} else {
y <- "tiny"
}
इस स्थिति में बूलियन के चारों ओर गोल ब्रैकेट () और स्टेटमेंट के चारों ओर घुंघराले ब्रैकेट {}, दोनों ज़रूरी हैं।
एक साधारण if स्टेटमेंट को छोटा भी किया जा सकता है:
if (x == 0) return("success")
इस अभ्यास में आप एक कार कारखाने की असेंबली लाइन के उत्पादन का विश्लेषण करने के लिए कोड लिखेंगे। असेंबली लाइन की गति 0 (बंद) से 10 (अधिकतम) तक हो सकती है।
अपनी सबसे कम गति (1) पर यह हर घंटे 221 कारें बनाती है। गति बढ़ने के साथ उत्पादन भी समान अनुपात में बढ़ता है। इसलिए गति 4 रखने पर हर घंटे 4 * 221 = 884 कारें बननी चाहिए। लेकिन ज़्यादा गति पर खराब कारें बनने की संभावना बढ़ जाती है, और फिर ऐसी कारों को अलग करना पड़ता है।
आपको तीन काम करने हैं।
किसी दी गई गति पर बिना एरर बनने वाली कारों का अनुपात निकालने के लिए success_rate() मेथड बनाइए। नीचे दी गई तालिका दिखाती है कि गति सफलता दर को कैसे प्रभावित करती है:
0: 0% सफलता दर।1 से 4 तक: 100% सफलता दर।5 से 8 तक: 90% सफलता दर।9: 80% सफलता दर।10: 77% सफलता दर।success_rate(10)
# => 0.77
असेंबली लाइन की सफलता दर को ध्यान में रखते हुए उसकी प्रति घंटा उत्पादन दर निकालने के लिए production_rate_per_hour() मेथड बनाइए:
production_rate_per_hour(6)
# => 1193.4
ध्यान दीजिए कि यह मेथड एक double लौटाता है।
प्रति मिनट कितनी काम करने वाली कारें बनती हैं, यह निकालने के लिए working_items_per_minute() मेथड बनाइए:
working_items_per_minute(6)
# => 19
ध्यान दीजिए कि यह मेथड एक पूर्णांक लौटाता है: अधूरी बनी कारें इसमें शामिल नहीं होतीं।
Exercism पर साइन अप कीजिए और R को 21 कॉन्सेप्ट111 अभ्यास तथा असली इंसानों से मिलने वाली मेंटरिंग के साथ सीखिए और उसमें महारत हासिल कीजिए, वह भी बिल्कुल मुफ्त।