0:00:01.259,0:00:03.602 აი სად გავჩერდით [br]წინა coin-flipping თამაშზე. 0:00:03.602,0:00:06.597 დავიწყეთ შემთხვევითი ციფრის [br]წარმოქმნით ნულსა და ერთს შორის, 0:00:06.597,0:00:08.877 შემდეგ ვამრგვალებდით [br]უახლოს ცვლად რიცხვამდე. 0:00:08.877,0:00:12.214 ეს გვაძლევდა რიცხვს [br]რომელიც იყო ნული ან ერთი. 0:00:12.214,0:00:15.909 შემდეგ მოვახდინეთ ამის ილუსტრაცია [br]რეალური მონეტით, ამ ellipse ფუნქციით, 0:00:15.909,0:00:18.909 რომელიც იყო იასამნისფერი ან ყვითელი, [br]იმის და მიხედვით რა ციფრი წარმოიქმნდებოდა. 0:00:18.909,0:00:20.987 აგერ კოდი რითაც გავაკეთეთ ეს. 0:00:20.987,0:00:22.819 თუ integer უდრის ნულს [br]შევსების კოდი იყოს იასამნისფერი, 0:00:22.819,0:00:25.819 წინააღმდეგ შემთხვევაში იყოს ყვითელი. 0:00:25.819,0:00:27.917 შემდეგ დავწერეთ მონეტა აქ. 0:00:27.917,0:00:30.755 მაგრამ ეხლა გადავწყვიტე,[br]რომ ჩემ მონეტას აქვს სამი მხარე. 0:00:30.755,0:00:32.455 დიახ, სამ-გვერდიანი მონეტა. 0:00:32.455,0:00:34.190 მოდით დავამატოთ ეს მესამე მხარე. 0:00:34.190,0:00:37.109 დავიწყებ რიცხვის შექმნით ნულიდან ორამდე, 0:00:37.109,0:00:41.533 მას შემდეგ რაც დავამრგვალებთ, [br]მომცემს ცვლადს რომელიც იქნება 0, 1 ან 2. 0:00:41.533,0:00:45.609 მაგრამ თუ შევხედავ ჩვენ დაწერილ კოდს, [br]ჩვენ მხოლოდ ორ შემთხვევას განვიხილავთ აქ. 0:00:45.609,0:00:48.815 თუ integer არის ნული, იყოს იასამნისფერი,[br]წინააღმდეგ შემთხვევაში იყოს ყვითელი. 0:00:48.815,0:00:51.885 მაგრამ ახლა, წინააღდეგი[br]შემთხვევა შეიძლება იყოს 1 ან 2. 0:00:51.885,0:00:54.931 მოიცადეთ, რა იქნებოდა რომ [br]გამეკეთებინა იგივე რაც წინაზე, 0:00:54.931,0:00:57.403 მაგრამ ამ else ბლოკში. მე უბრალოდ დავწერ: 0:00:57.403,0:01:05.783 თუ intiger უდრის ერთს, მაშინ [br]ფერი იყოს ყვითელი, როგორც იყო წინაზე, 0:01:05.783,0:01:11.403 წინააღმდეგ შემთხვევაში, ფერი [br]იყოს წითელი. წითელი საკმაოდ კარგია. 0:01:11.403,0:01:15.478 ეს ნიშნავს რომ, თუ integer [br]უდრის ნულს, ფერი იყოს იასამნისფერი, 0:01:15.478,0:01:18.984 წინააღმდეგ შემთხვევაში, [br]თუ არის ერთი, იქნება ყვითელი; 0:01:18.984,0:01:21.611 წინააღმდეგ შემთხევაში, რაც[br]ნიშნავს რომ, თუ არც ნულია და არც ერთი, 0:01:21.611,0:01:24.611 მაშინ იქნება ორი, და ფერი იყოს წითელი. 0:01:24.611,0:01:28.566 ვაჭერ განახლებას რამოდენიმეჯერ. მუშაობს! 0:01:28.566,0:01:30.996 შემდეგ თუ მინდა დავამატო [br]კიდევ რამოდენიმე მხარე ჩემ მონეტას, 0:01:30.996,0:01:34.987 მივალ აქ, გავხდი ნულიდან [br]სამამდე, შემდეგ გადავალ else ბლოკში 0:01:34.987,0:01:37.987 და დავამატებ მეტ if-else ფუნქციებს და ა.შ. 0:01:37.987,0:01:40.158 სანამ არ მექნება უამრავი ბლოკი. 0:01:40.158,0:01:44.704 და მხოლოდ მაშინ მივხვდები, [br]რომ ეს კოდი არის საშინელი! უაზრო! 0:01:44.704,0:01:48.901 კოდი უნდა იყოს მარტივი [br]წასაკითხი და ლამაზი, და არა უშნო. 0:01:48.901,0:01:50.620 აი რას გავაკეთებთ ეხლა ჩვენ: 0:01:50.620,0:01:55.675 როცა გაქვთ ერთი if ბრძანება [br]ან if-else ბრძანება else ბლოკში, 0:01:55.675,0:01:58.313 რაც ნიშნავს რომ ამ ბლოკებს [br]გარეთ არაფერ არ ვაკეთებთ, 0:01:58.313,0:02:04.486 აღარ ვანიჭებთ მეტ ფერებს, [br]აღარ გვაქვს მეტი if ბრძანებები. 0:02:04.486,0:02:08.444 გვაქვს მხოლოდ ერთი if ბრძანება, [br]და შეიძლება მოყვება else ბლოკი. 0:02:08.444,0:02:13.156 შემდეგ ჩვენ შეგვიძლია შევაერთოთ [br]ეს პირობა წინა ხაზით და დავწეროთ: 0:02:13.156,0:02:17.073 else if integer უდრის [br]ერთს, ფერი იყოს ყვითელი. 0:02:17.073,0:02:22.509 შემდეგ ეს უკანასკნელი else ბლოკი [br]არ ზის არსად, გვხვდება სულ ბოლოში. 0:02:22.509,0:02:27.067 კარგია! ეს ნიშნავს რომ, თუ integer [br]უდრის ნულს, ფერი იყოს იასამნისფერი, 0:02:27.067,0:02:30.235 წინააღმდეგ შემთხვევაში, თუ [br]integer უდრის ერთს, იყოს ყვითელი 0:02:30.235,0:02:34.484 წინააღმდეგ შემთხვევაში, [br]თუ ეს ორივე მცდარია, ფერი იყოს წითელი. 0:02:34.484,0:02:37.738 ვაჭერ განახლებას [br]რამოდენიმეჯერ და მაინც მუშაობს. 0:02:37.738,0:02:41.824 კარგია! მაგარი ის არის რომ, შეგვიძლია [br]გვქონდეს იმდენი else-if რამდენიც გვინდა, 0:02:41.824,0:02:44.703 რაც ძალიან მიმარტივებს [br]მხარეების დამატებას ჩემს მონეტაზე. 0:02:44.703,0:02:48.009 მოდით ეხლა ეს ვცადოთ. [br]მე შევქმნი რიცხვს ნულიდან სამამდე, 0:02:48.009,0:02:51.125 შემდეგ უბრალოდ[br]დავამტებ კიდევ ერთ else ბლოკს, 0:02:51.125,0:02:57.065 რომელიც ამბობს else if intiger უდრის ორს, 0:02:57.065,0:02:59.658 ჩვენ დავაყენბთ ფერს... წინაზე [br]იყო წითელი და დავტოვოთ წითელი. 0:02:59.658,0:03:03.338 შემდეგ ეს უკანასკნელი [br]ბლოკი იქნება, როცა integer უდრის სამს, 0:03:03.338,0:03:08.969 ფერი იყოს ლურჯი. კარგია! 0:03:08.969,0:03:12.816 ძალიან კარგი. ეს რომ გააკეთოთ, [br]ყოველთვის უნდა დაიწყოთ if ბრძანებით, 0:03:12.816,0:03:16.600 შემდეგ შეგიძლიათ გქონდეთ [br]რამდენი else-if ფუნქციაც გინდათ, 0:03:16.600,0:03:18.698 და ეს ბოლო არის სურვილისამბრ. 0:03:18.698,0:03:21.900 შეგვიძლია მის გარეშეც, მაგრამ[br]შემდეგ შეიძლება ყველა ეს გამოვიდეს მცდარი, 0:03:21.900,0:03:23.722 და არც ერთი ბლოკი არ შესრულდება. 0:03:23.722,0:03:30.484 მაგრამ სანამ ეს გვაქვს აქ, [br]ზუსტად ერთ-ერთი ბლოკი გაეშვება. 0:03:30.484,0:03:34.017 მაგარია? ეს არის [br]შემთხვევა სადაც არ აქვს მნიშვნელობა 0:03:34.017,0:03:37.017 თუ დაწერთ if else-if else-if else, 0:03:37.017,0:03:42.509 ან უბრალოდ გამოიყენებთ ძველ[br]if ბრძანებას რომელიც გვქონდა დასაწყისში, 0:03:42.509,0:03:45.509 თუ integer უდრის სამს. 0:03:45.509,0:03:50.728 ეს იმიტომ რომ, შეუძლებელია integer უდრიდეს[br]ნულს და შემდეგ ასევე ერთს, ორს ან სამს. 0:03:50.728,0:03:54.223 კარგია. ეს პირობები [br]არის ურთიერთ გამომრიცხავი. 0:03:54.223,0:03:56.609 მხოლოდ ერთ-ერთი ბლოკი გაეშვება მაინც. 0:03:56.609,0:03:58.278 მაგრამ ეს ყველა შემთხვევა არ არის. 0:03:58.278,0:04:01.636 რა იქნება თუ თამაშს [br]ავაწყობთ ცვლადის დამრგვალების გარეშე? 0:04:01.636,0:04:04.485 მოვაშორებ დამრგვალების ფუნქციას, 0:04:04.485,0:04:06.640 და შემდეგ მეორე ნაწილს [br]სადაც ვხატავთ ეკრანზე. 0:04:06.640,0:04:09.284 მოდით ახალი წესები მოვიგონოთ ამ თამაშში. 0:04:09.284,0:04:12.637 მე კლავ წარმოვქმნი რიცხვს ნულიდან სამამდე, 0:04:12.637,0:04:15.315 დავადოთ რამოდენიმე [br]ნიშანი ჩვენ რიცხვებს. 0:04:15.315,0:04:23.378 თუ რიცხვი იქნება ნულიდან [br]ერთამდე, გავაფერადოთ იასამნისფრად. 0:04:23.378,0:04:26.153 ეს სულაც არ გამოიყურება [br]როგორც ისამნსიფერი, მაგრამ ხომ მიხვდით. 0:04:26.153,0:04:30.504 შემდეთ თუ არის ერთიდან [br]ორამდე, გავაფერადოთ ყვითლად. 0:04:30.504,0:04:35.533 თუ არის ორიდან სამამდე, იყოს წითელი. 0:04:35.533,0:04:38.651 კარგია. მოდით ვნახოთ როგორ გამოვა [br]if და else-if ფუნქციების გამოყენებით. 0:04:38.651,0:04:43.542 შემიძლია დავიწყო ასე, [br]if რიცხვი ნაკლებია ერთზე, 0:04:43.542,0:04:48.836 ანუ თუ ნაკლებია ერთზე, [br]და ვიცი რომ ეს ნულსა და სამს შორის არის, 0:04:48.836,0:04:55.806 რაც ნიშნავს რომ ამ მონაკვეთშია, [br]დავაყენებ ფერს იასამნისფერზე. 0:04:55.806,0:05:06.432 წინააღმდეგ შემთხვევაში, თუ რიცხვი 2-ზე[br]ნაკლებია, დავაყანებ ყვითელ ფერს... 255... 0:05:06.432,0:05:13.263 და წინააღმდეგ [br]შემთხვევაში, ფერი დავაყენოთ წითელი. 0:05:13.263,0:05:15.596 კარგია! და მუშაობს [br]როგორც გვქონდა ჩაფიქრებული. 0:05:15.596,0:05:19.307 თუ რიცხვი იქნებოდა ერთზე [br]ნაკლები, იქნებოდა ამ მონაკვეთში. 0:05:19.307,0:05:23.603 წინააღდეგ შემთხვევაში, მეტია ან [br]უდრის ერთს, მაგრამ ასევე ნაკლებია ორზე, 0:05:23.603,0:05:26.732 და ამიტომ ხვდება ამ [br]მონაკვეთში და ვანიჭებთ ყვითელ ფერს. 0:05:26.732,0:05:31.900 წინააღმდეგ შემთხვევაში, უნდა იყოს მეტი ან [br]ტოლი ორის, და აღმოჩნდებოდა ამ მონაკვეთში. 0:05:31.900,0:05:36.277 აგერ შემთხვევა, როცა ჩვენ [br]ვერ ვიტყოდით რომ თუ რიცხვი ნაკლები 2-ზე, 0:05:36.277,0:05:39.650 და ნაკლებია სამზე, 0:05:39.650,0:05:42.932 იმიტომ რომ თუ რიცხვი ნაკლებია [br]1-ზე, მაშინ ყველა ვარიანტში ნაკლებია 2-ზე 0:05:42.932,0:05:44.896 და ასევე ნაკლებია 3-ზე. 0:05:44.896,0:05:46.781 ჩვენი მონატა კი ყოველთვის გამოვა წითელი. 0:05:46.781,0:05:50.781 ამიტომაც ასეთ შემთხვევაში,[br]ძალიან გამოსადეგია else-if ფუნქცია.