უკვე შევქმენით ცვლადი ვინსტონის თვალის ზომისთვის,
რომელიც საშუალებას გვაძლევს ბევრი ბეჭდვის გარეშე
მარტივად შევცვალოთ ვინსტონის თვალების ზომები.
გაიხსენეთ, მანამდე ყოველთვის ერთსა და იმავეს ვწერდით ოთხჯერ,
როცა გვინდოდა მისი თვალების ზომები შეგვეცვალა.
შეგვიძლია გამოვიყენოთ ცვლადები მაშინ, როცა ისინი ერთმანეთს არ უდრის?
ვთქვათ, მინდა ვინსტონი ოდნავ გავამოძრაო.
შემიძლია ყველა x კოორდინატის შეცვლა,
მაგრამ ისინი ტოლი არაა, ამიტომ უბრალოდ რამე ცვლადით ვერ შევცვლი.
მაგრამ მოიცადეთ!
მას შემდეგ, რაც ცვლადს ერთ რიცხვს მივანიჭებ,
შემიძლია მისი რიცხვივით გამოყენება,
ანუ, ცვლადები შეგვიძლია მათემატიკურ გამოსახულებებშიც გამოვიყენოთ.
მოდით შევქმნათ ცვლადი ვინსტონის x მდებარეობისთვის.
დავარქვათ var x.
საკმაოდ მარტივია. ახლა კი მივანიჭოთ ვინსტონის x კოორდინატის მნიშვნელობა.
მისი სახე დახატულია x კოორდინატზე - 200.
ესეიგი var x ხდება 200.
ახლა შემიძლია ეს რიცხვი x ცვლადით შევცვალო
და როცა x შეიცვლება, ის გაამოძრავებს ვინსტონის სახეს,
მაგრამ არა თვალებსა და პირს.
ამის შესასწორებლად, განვსაზღვროთ თვალებისა და პირის კოორდინატები,
სახის კოორდინატის მიხედვით.
x კოორდინატები დანარჩენი ელიფსების ცენტრები იქნება,
ესეიგი მისი სახე დახატულია...
-- ეს არის 200. ჯერ მის მარცხენა თვალს მივხედოთ.
ეს ელიფსი მისი მარცხენა თვალია. როგორც ხედავთ, დახატულია 150-ზე.
ეს არის 150.
ვიცით, რომ 150 არის 200-ზე 50-ით ნაკლები.
მისი მარცხენა თვალის x კოორდინატი იქნება სახის x კოორდინატს მინუს 50
ეს იქნება x-ს, ანუ სახის კოორდინატს, მინუს 50.
ახლა, თუ x-ს შეცვცლით, თვალი სახეს აჰყვება.
მეორე თვალიც შევასწოროთ.
მარჯვენა თვალი 300-ზეა დახატული,
300, მოგეხსენებათ, 200-ზე 100-ით ნაკლებია.
ესეიგი მისი მარჯვენა თვალის x კოორდინატი უნდა იყოს სახის xკოორდინატს პლუს 100
ეს არის x პლუს 100.
ახლა მხოლოდ პირი დაგვრჩა.
პირი დახატულია 250-ზე.
250 არის 200-ს პლუს 50.
ესეიგი პირის x კოორდინატი იქნება სახის x კოორდინატს პლუს 50.
-- ამ ნაწერებს მოვაშორებ --
ახლა კი x-ის ცვლილებისას ვინსტონის მთელი სახე მოძრაობს.
საჭიროა კიდევ რამდენიმე საინტერესო ფაქტი იცოდეთ ცვლადებზე.
მას შემდეგ რაც შექმნით ცვლადს var x,
შეგიძლიათ მიანიჭოთ მნიშვნელობა რამდენჯერაც გინდათ.
ანუ, x-ისთვის 198-ის მინიჭების შემდეგ,
შეგვიძლია დავწეროთ: "x ხდება 300-ს",
ან "x ხდება 150".
ამიერიდან, კომპიუტერი x-ს იმ რიცხვად აღიქვამს, რა რიცხვიც ბოლოს მივანიჭეთ.
ამ შემთხვევაში - 150.
var-ის აკრეფა თითო ცვლადისთვის მხოლოდ ერთხელაა საჭირო.
აქ რომ დამეწერა var x ხდება 150,
მაშინ შეიქმნებოდა ახალი ცვლადი, სახელად x,
რომელიც წინა ცვლად x-ს მთლიანად წაშლიდა
ასეთი ცვლადები ნადგურდება, აღარ არსებობს.
ამის შემდეგ, ცხადია, კომპიუტერი მხოლოდ ახალ ცვლადს გამოიყენებდა.
ზოგჯერ ასეთი რამის გაკეთება ცუდი შედეგების გარეშეც შეიძლება, მაგრამ არ გირჩევთ.
ამჯერად, მხოლოდ ერთხელ გავაკეთებ: var x ხდება 150.
ესეიგი უკვე წარმატებით შეგვიძლია ვინსტონი ეკრანზე ვამოძრავოთ.
გადავიდეთ ახალ საკითხზე.
ყოველთვის, როცა ცვლადს რამეს უტოლებთ, ყველაფერი კარგადაა, უსაფრთხოდ.
რეალურად, ცვლადი მხოლოდ ტოლობის მარცხენა მხარეს შეიძლება "გრძნობდეს თავს კარგად".
ეს იმიტომ, რომ კომპიუტერი მას მხოლოდ აქ აღიქვამს ცვლადად.
სხვაგან, კომპიუტერი მნიშვნელობებს კითხულობს.
ესეიგი, რომ დავწეროთ:
var x ხდება ათი და შემდეგ x ხდება x,
-- თითქოს დამაბნეველია --
მარცხნივ გვაქვს x, რაც ჩვეულებრივი ცვლადია, დამოუკიდებელი და შეცვლადი,
მარჯვნივ კი უბრალოდ რიცხვი ათი გვაქვს.
ეს სინამდვილეში ნიშნავს, რომ საშუალება გვაქვს ასეთი რაღაც გავაკეთოთ:
შემიძლია ვთქვა x ხდება x + 1.
ესეიგი, მარცხნივ ცვლადი ცვლადად რჩება,
მარჯვნივ კი გვაქვს ცვლადი, ოღონდ რიცხვის მნიშვნელობით,
ანუ უბრალოდ ათი.
შეგვიძლია წარმოვიდგინოთ რომ აქ წერია "x ხდება ათს პლუს ერთი",
რაც ნიშნავს რომ x ხდება 11.
ესეიგი მთელი ეს ხაზი გულისხმობს რომ x ხდება 11,
ანუ ამიერიდან x-ის მნიშვნელობა 11-ია.
ვნახოთ რა მოხდება კიდევ ერთ ცვლადს თუ შემოვიყვანთ განტოლებაში.
დავწეროთ, var x ხდება 10, var y ხდება 20,
x ხდება y --
და y ხდება შვიდი.
მე მაინტერესებს რა იქნება x-ის მნიშვნელობა.
ვნახოთ.
ესეიგი, ამ ხაზში ვქმნით ახალ ცვლად x-ს,
ვანიჭებთ მნიშვნელობას ათი,
ესეიგი x-ის მნიშვნელობა ახლა არის ათი.
ამ ხაზში ვქმნით ახალ ცვლად y-ს,
და ვანიჭებთ მნიშვნელობას 20.
ჯერჯერობით x-ს არ ვცვლით, x ისევ ათია.
აქ ვამბობთ რომ x ხდება y.
დამაბნეველი ჩანს, მაგრამ თუ დაუკვირდებით,
ვიცით, რომ ამ ცვლადებიდან მხოლოდ ერთია "უსაფრთხოდ",
მეორე ცვლადი კი უბრალოდ რიცხვის როლშია.
ესეიგი, აქ შეგვიძლია წარმოვიდგინოთ რომ y-ის ადგილას 20 წერია
და ამიტომ ეს ხაზი ნიშნავს რომ x ხდება 20.
ესეიგი x-ის მნიშვნელობა ხდება 20.
აქ კი, ამჯერად, y არის "უსაფრთხოდ",
თუმცა ეს არცაა დამაბნეველი, მარჯვნივ უბრალოდ რიცხვია.
ახლა კი დიდი შეკითხვა: როცა აქ y-ის მნიშვნელობას შევცვლით,
შეცვლის თუ არა ეს ზემოთ x-ის მნიშვნელობას?
ამის პასუხი არის: არა! არა, არა, არა, არა, არა!
უნდა გახსოვდეთ, რომ ზემოთ y უბრალოდ რიცხვის როლშია.
კომპიუტერი მას რიცხვად აღიქვამს და არა ცვლადად,
დაივიწყებს რომ მისი შეცვლა შეიძლება და იტყვის:
"y? აქ სინამდვილეში ხომ 20 იგულისხმება?"
ანუ აქ x-ს უბრალოდ ვანიჭებთ რიცხვს და არა ცვლადს.
ვანიჭებთ y-ის მნიშვნელობას, ანუ 20-ს.
ესეიგი ეს ნიშნავს, რომ x-ის მნიშვნელობა ისევ 20 იქნება,
მიუხედავად იმისა, რომ შემდეგ y-ს მნიშვნელობას ვუცვლით.
ესეც ასე. გასაგებია?
ახლა კი უკვე ცვლადების ნამდვილი ექსპერტები ხართ.
გილოცავთ!