תוכן עניינים
מבוא
מבנה
תחביר
טיפוסים
רשימות
ביטויים בוליאניים
ביטויי התניה
פונקציות
ביטויי קלט/פלט
פונקציות מסדר גבוה
תכנית לדוגמא
נספחים
ביבליוגרפיה
אתר ללימוד מזורז> ביטויי התניה

ביטויי התניה

ביטויי ההתניה הם מהצורה הבאה:
 (if test-exp then-exp)

 (if test-exp then-exp else-exp).

הכתיבה test-exp מציינת ביטוי בוליאני, בעוד ש then-exp ו-else-exp הם ביטויים ממש. אם ערך test-exp הוא אמת - יתבצע then-exp, אחרת יתבצע else-exp.
להלן כמה דוגמאות:
 (if (> n 0) (= n 10)) 
 (if (null? list) list (cdr list))

הסבר הדוגמא השנייה: ה-list הוא ביטוי ה-then, בעוד ש-(cdr list) הוא ביטוי ה-else.
ל-Scheme דרך נוספת לבצע תנאי. דרך זו דומה במבנה שלה ל-case בה מצוינים כמה זוגות תנאי-תוצאה.
המבנה הוא כמו אחת הצורות הבאות:
                          (cond
        ( test-exp1 exp ...)
      ( test-exp2 exp ...)
...)
                       (cond
     ( test-exp exp ...)
                                        ...
     (else  exp ...))

שני ביטויי ההתניה הבאים הם שקולים:
 (cond
             ((= n 10) (= m 1))
             ((> n 10) (= m 2) (= n (* n m)))
             ((< n 10) (= n 0)))
 (cond
             ((= n 10) (=m 1))
             ((> n 10) (= m 2) (= n (* n m)))
    (else (= n 0)))