Link Search Menu Expand Document

დავალება არის მესამე კვირის მასალაში codehs-ზე. დავალების დაწყებამდე გააკეთეთ სემინარი.

Racing Karel

კარელის სამყარო არის სარბენი ბილიკი და იგი იწყებს რბოლას.

თქვენი ამოცანაა კარელმა გაიაროს სარბენი ბილიკი რვაჯერ და დაბრუნდეს მის საწყის პოზიციაზე. ყოველ ჯერზე, როდესაც კარელი მოხვდება კუთხეში, მან უნდა დადოს ბურთი. შესაბამისად, რბოლის დასრულების შემდეგ, თითო კუთხეში 8 ბურთი იქნება დადებული.

პროგრამამ უნდა იმუშავოს ნებისმიერ ვალიდურ სამყაროში. ვალიდური სამყარო არის ის, სადაც სარბენი ბილიკი არის მოქცეული სამყაროს გარე საზღვარსა და ერთი უჯრის სიღრმით მოქცეულ საზღვარს შორის. თითოეული კუთხიდან, ერთი ქუჩისა და ერთი ხეივანის მოშორებით ვხვდებით შიდა საზღვარს. მაგალითები შეგიძლიათ იხილოთ დავალებასთან დართულ ფოტოებში.

შეგახსენებთ, რომ ატვირთვის წესები გამოქვეყნებულია დავალებების გვერდზე

  • ბრძანებები turnRight() და turnAround() შეგიძლია პირდაპირ გამოიყენო
  • დარწმუნდით, რომ თქვენი პროგრამა მუშაობს სხვადასხვა სამყაროებში. კარელს უნდა შეეძლოს ნებისმიერი ზომის სარბენი ბილიკის გავლა
  • დარწმუნდით, რომ იყენებთ ფუნქციებსა და კონტროლის სტრუქტურებს
  • დარწმუნდით, რომ იყენებთ კომენტარებს თქვენი ფუნქციონალის ასაღწერად. კომენტარები ამარტივებს კოდის კითხვას
მინიშნება 1 ჯერ იმაზე დაფიქრდი, როგორ შეძლოს კარელმა სამყაროს კედლების შემოვლა.
მინიშნება 2 ერთი კედლის გავლა უბრალოდ ქუჩის ბოლომდე სიარულია, ეს უკვე ბევრ დავალებაში გავაკეთეთ
მინიშნება 3 შექმენი ფუნქცია, რომელიც ერთხელ დაარტყამს წრეს (ანუ ოთხჯერ გაივლის ქუჩის ბოლომდე და შემდეგ შეტრიალდება მარცხნივ). ახლა უბრალოდ ეს ფუნქცია უნდა გამოიძახო სწორ რაოდენობაჯერ.
მინიშნება 4 სად სჯობს ბურთის დადების ბრძანების დაწერა, ქუჩის გავლამდე თუ მის შემდეგ?