पीटर सीबेल में प्रैक्टिकल कॉमन लिस्प, वह इस उदाहरण देता है:
(do ((nums nil) (i 1 (1+ i)))
((> i 10) (nreverse nums))
(push i nums))
मैं देख सकता हूं कि यह कैसे काम करता है, लूप के अंदर अंकों का उपयोग करता है, लेकिन इसे चरण-रूप नहीं देता है। आप ऐसा करने के बजाय चर-परिभाषा में अंक क्यों डालेंगे:
(let (nums) (do ((i 1 (+ i 1)))
((> i 10) (nreverse nums))
(push i nums)))
मुझे यकीन है कि वहाँ एक अच्छा कारण है, लेकिन मुझे यह अभी तक नहीं मिला।
उत्तर:
उत्तर № 1 के लिए 12क्योंकि यह सुविधाजनक है और खरोज बचाता है।