2010-07-03 7 views
8

मैं उलझन में हूं कि कैसे car और cdr सूचियों पर काम करते हैं। यहाँ मैं क्या कोशिश की है की एक उदाहरण है:योजना: एक सूची का कार और सीडीआर

'(a b c d e f) 
quote 
((a b c d e f)) 
a 
() 

मुझे यह समझाया गया है कि कैसे quote की car हो सकता है नहीं पा रहा हूँ:

(define sample (read)) 
(display sample) 
(display (car sample)) 
(display (cdr sample)) 
(display (car (cadr sample))) 
(display (cdr (cdr sample))) 

मूल्य '(A B C D E F) प्रवेश करने पर, यहाँ मैं क्या मिलता है sample। इसके अलावा, (cdr sample) आउटपुट ((a b c d e f)) क्यों है?

भाषा: DrScheme - R5RS - योजना

उत्तर

17

आपको बस अपनी सूची टाइप करने के लिए करना चाहता था, तो आप बस टाइप करना चाहिए । आपने जो लिखा है, इसके बजाय, (quote (a b c d e f)) था क्योंकि ' ऑपरेटर (quote ...) के लिए छोटा है।

आपकी सूची में सचमुच पहला तत्व quote और दूसरा तत्व है। बेशक, जब आप स्रोत कोड लिख रहे हैं, तो आपको एस-एक्सप्रेशन को निष्पादित होने से रोकने के लिए quote की आवश्यकता है।

+0

धन्यवाद। मैं योजना के लिए एक पूर्ण नौसिखिया हूँ। इससे मदद मिलती है ! –