במשחק בין שני שחקנים, מטרתו של הכלוא לצאת ממעגל ברדיוס 100 מטר, ומטרתו של הסוהר למנוע ממנו את היציאה. על-פי חוקי המשחק, הכלוא מתחיל במרכז המעגל, ובכל שלב מותר לו לבחור כיוון שבו הוא מבקש לצעוד, וללכת צעד שאורכו מטר אחד. קודם לביצוע הצעד, הסוהר קובע האם הכלוא ילך בכיוון שבחר, או בכיוון המנוגד.
האם יצליח הכלוא לצאת מן המעגל? אם כן, כיצד, ובכמה צעדים; ואם לא - מדוע?
פתרון
האסטרטגיה של הכלוא היא לשמור על סימטריה, כך שהכיוון שבו יבחר הסוהר לא ישפיע על ההתקדמות אל המטרה. במהלך הראשון לא חשוב באיזה כיוון הוא הולך, משום שהוא שומר על מרחק שווה מנקודת האמצע. במהלך השני הוא יפנה בזווית של 90 מעלות מצעדו הראשון, כך שתיווצר זווית ישרה. אם נשרטט קו בין המקום בו נמצא הכלוא לבין מרכז המעגל (שהוא נקודת המוצא), יתקבל משולש ישר-זווית שמקיים את משפט פיתגורס, ובו הקו הדמיוני הוא היתר, ולכן אורכו שווה לשורש הריבועי סכום ריבועי הניצבים, כלומר השורש הריבועי של 2 (). בכל צעד מכאן ואילך יפנה הכלוא כך שתיווצר זווית ישרה עם הקו המחבר אותו למרכז המעגל (כלומר היתר של הצעד הקודם משמש כניצב בצעד הבא). בהתאם לכך, בצעד השלישי יגיע מרחקו ממרכז המעגל ל- , ובצעד ה-n יגיע מרחקו ממרכז המעגל ל- . בהתאם לכך, הכלוא יצא מהמעגל לאחר 10,000 מהלכים - 100 הוא שורש ריבועי של 10,000.
הליכת 10,000 צעדים כאלה היא עניין מייגע במקצת, אך בשפת התכנות לוגו קל לכתוב סימולציה שמציגה מסלול אפשרי להליכתו של הכלוא, תוך שימוש בפונקציות בסיסיות של השפה.