progress-4gl
संख्याओं के साथ कार्य करना
खोज…
परिचय
प्रगति एबीएल तीन नंबर स्वरूपों का समर्थन करती है: 32 और 64 बिट पूर्णांक और फ्लोट्स।
ऑपरेटर्स
प्रगति ऑपरेटर के रूप में + / - * का समर्थन करती है। उन्हें अतिभारित नहीं किया जा सकता है। डिवीजन हमेशा एक दशमलव लौटाता है। यदि किसी गणना में कोई संख्या एक दशमलव है तो एक दशमलव वापस आ जाएगा। अन्यथा एक INTEGER
या INT64
।
कोई +=
या ++
संचालक नहीं है। एक वैरिएबल को बढ़ाने या घटाने के लिए आपको इसे स्वयं या कुछ को घटा देना होगा। इसलिए आपके द्वारा किए गए एक चर में 1 जोड़ने के लिए: i = i + 1.
DEFINE VARIABLE i AS INTEGER NO-UNDO.
DEFINE VARIABLE j AS INTEGER NO-UNDO.
i = 3.
j = 2.
DISPLAY i + j. // 3 + 2 = 5
DISPLAY i - j. // 3 - 2 = 1
DISPLAY i / j. // 3 / 2 = 1.5
DISPLAY INTEGER(i / j). //Integer(3/2) = 2.
DISPLAY i * j. //3 x 2 = 6
अधिक गणितीय कार्य
EXP - किसी संख्या को शक्ति तक बढ़ाने का परिणाम देता है।
EXP (बेस, घातांक)
MESSAGE EXP(10, 2) VIEW-AS ALERT-BOX. // Messages 100
SQRT - किसी संख्या का वर्गमूल लौटाता है।
SQRT (संख्या)
MESSAGE "The square root of 256 is " SQRT(256) VIEW-AS ALERT-BOX. // Messages 16
MODULO - विभाजन के बाद शेष का निर्धारण करता है।
अभिव्यक्ति MODULO आधार
DISPLAY 52 MODULO 12. //Displays 4
ROUND - दशमलव बिंदु के बाद एक निर्दिष्ट संख्या में दशमलव अभिव्यक्ति को स्थान देता है।
ध्वनि (संख्या, सटीक)
DISPLAY ROUND(67.12345, 6) FORMAT "99.99999". // 67.12345
DISPLAY ROUND(67.12345, 5) FORMAT "99.99999". // 67.12345
DISPLAY ROUND(67.12345, 4) FORMAT "99.99999". // 67.12350
DISPLAY ROUND(67.12345, 3) FORMAT "99.99999". // 67.12300
DISPLAY ROUND(67.12345, 2) FORMAT "99.99999". // 67.12000
DISPLAY ROUND(67.12345, 1) FORMAT "99.99999". // 67.10000
DISPLAY ROUND(67.12345, 0) FORMAT "99.99999". // 67.00000
TRUNCATE किसी दशमलव मान को लौटाते हुए दशमलव स्थानों की एक निर्दिष्ट संख्या में एक दशमलव अभिव्यक्ति को काटता है।
TRUNCATE (संख्या, स्थान)
DISPLAY TRUNCATE(67.12345, 6) FORMAT "99.99999". // 67.12345
DISPLAY TRUNCATE(67.12345, 5) FORMAT "99.99999". // 67.12345
DISPLAY TRUNCATE(67.12345, 4) FORMAT "99.99999". // 67.12340
DISPLAY TRUNCATE(67.12345, 3) FORMAT "99.99999". // 67.12300
DISPLAY TRUNCATE(67.12345, 2) FORMAT "99.99999". // 67.12000
DISPLAY TRUNCATE(67.12345, 1) FORMAT "99.99999". // 67.10000
DISPLAY TRUNCATE(67.12345, 0) FORMAT "99.99999". // 67.00000
ABSOLUTE - किसी संख्या का निरपेक्ष मान लौटाता है
DISPLAY ABS(10 - 12). //Displays 2
DISPLAY ABS(-2) = ABS(2). //Displays yes
न्यूनतम और अधिकतम - smalles और सबसे बड़ी संख्या देता है
MINIMUM (नंबर 1, नंबर 2, ... नंबर)
MAXIMUM (नंबर 1, नंबर 2, ... नंबर)
DEFINE VARIABLE i AS INTEGER NO-UNDO.
DEFINE VARIABLE j AS INTEGER NO-UNDO.
DEFINE VARIABLE k AS INTEGER NO-UNDO.
i = 40.
j = 45.
k = 56.
DISPLAY MINIMUM(i, j, k) MAXIMUM(i, j, k). // Displays 40 and 56
संख्याओं की तुलना करना
समानता, असमानता आदि की तुलना करने के लिए मानक मानक बनाए गए हैं।
नाम | प्रतीक | विकल्प | उदाहरण |
---|---|---|---|
बराबरी का | = | EQ | मैं = जे |
बराबर नहीं | <> | NE | मैं <> जे |
से कम | < | एलटी | मैं <जे |
इससे कम या इसके बराबर | <= | LE | मैं <= जे |
से अधिक | > = | जी.टी. | मैं> जे |
से बड़ा या बराबर | ≥ = | जीई | मैं> = जे |
प्रतीक का विकल्प और इसके विपरीत के साथ आदान-प्रदान किया जा सकता है। तो var1 <> var2
वही चीज है जो var1 NE var2
।
आप एक पूर्णांक के साथ एक फ्लोट की तुलना कर सकते हैं लेकिन उदाहरण के लिए किसी पूर्णांक के साथ तुलना नहीं कर सकते।
रैंडम संख्या जनरेटर
रैंडम - एक यादृच्छिक संख्या उत्पन्न करता है
रैंडम (कम, उच्च)
निम्न और उच्च के बीच एक छद्म यादृच्छिक पूर्णांक बनाता है
// Example that generates 20 random numbers between 1 and 20 (1 and 20 included)
DEFINE VARIABLE i AS INTEGER NO-UNDO.
DO i = 1 TO 20.
DISPLAY i RANDOM(1, 20).
PAUSE.
END.