Link Search Menu Expand Document

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

Go Through the Fence

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

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

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

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