
وإلا متداخلة

قم بالترقية للحصول على المزيد من المحتوى
صحيح أم خطأ؟ عندما يكون هناك أكثر من شرط واحد للإختبار، فيمكننا استخدام عبارات متداخلة.
قامت لينا بتعليم الروبوت إعطاء الشوكولا إما لماريا أو ليون. يلتقط الروبوت قطعة شوكولا. إنه بالحليب وشرط "شوكولا حليب" صحيح. لذا فإنه يقوم بإعطائها لماريا. لكن ماريا لا تريدها بالرغم من أنها شوكولا حليب. لدي حساسية للجوز. لذا لا يمكنني تناول الشوكولا إن كان بها جوز. لذا على لينا إعطاء تعليمات جديدة للروبوت. لو أن الشوكولا بالحليب ولو أن الشوكولا بها جوز، فلا ينبغي للروبوت إعطائها لماريا. ماذا علينا أن نفعل بها إذا؟ فليون لا يحب سوى الشوكولا الداكنة. نعيدها فقط إلى العلبة. عندما يلتقط الروبوت قطعة شوكولا، فإنه يتحقق مما إن كانت بالحليب. لكن هذا لم يعد كافيا، لأن لدى ماريا حساسية للجوز. إذا كانت شوكولا حليب، فعلى الروبوت أن يتحقق مما إن كان بها جوز أيضا. سيكون هناك تعليم - لو أن - داخل تعليم - لو أن - الأول، بحيث إن كان شرط "بها جوز" صحيح أيضا، فإن الروبوت يعيدها إلى العلبة، وإلا فإنه يقوم بإعطائها لماريا. لكن إن كان شرط "شوكولا حليب" خطأ، فلا بد أنها داكنة، وهي ما يحبه ليون. لذا فتعليم الروبوت يجب أن يكون، "أعطها لليون". لنختبر السودوكود الجديد. يلتقط الروبوت قطعة شوكولا وهي بالحليب. الشرط الأول هو "شوكولا حليب" وهو صحيح. الشرط الثاني الذي يتم اختباره هو "الجوز". هل هو صحيح أم خطأ؟ يتحقق الروبوت من ذلك بعناية ويرى أن هناك جوز في هذه القطعة من الشوكولا. الشرط صحيح. لذا يتبع الروبوت تعليم إعادتها للعلبة. لا تنفَّذ بقية التعليمات إلا إن كان شرط "شوكولا حليب" خطأ، أو لو كان شرط "شوكولا حليب" صحيحا، وشرط "الجوز" خطأ. ينتهي البرنامج عند إعادة الروبوت لقطعة الشوكولا داخل العلبة. لنعد تشغيل البرنامج للتجربة مع قطعة جديدة. إنه "شوكولا حليب" ثانية. لذا فالشرط الأول صحيح. الشيء التالي الذي يتحقق الروبوت منه هو ما "إن كان بها جوز". ليس بها جوز، لذا فالشرط الثاني خطأ. هذا يؤدي لتنفيذ تعليم: "أعطها لماريا"، ثم ينتهي البرنامج. قامت لينا بكتابة تعليم - لو أن - داخل تعليم - لو أن - آخر. يسمى هذا بعبارة - لو أن - متداخلة. بعبارات لو أن المتداخلة يستطيع الروبوت أن يقرر ما إن كانت الشوكولا بالحليب أم داكنة وما إن كان بها جوز. تستطيع ماريا الآن أن تتلذذ بقطعة الشوكولا بدون أن تقلق من احتوائها على الجوز.