საკვანძო სხვაობა – ციკლისთვის vs while
პროგრამა არის პროგრამირების ენაზე დაწერილი ინსტრუქციების ნაკრები გარკვეული დავალების შესასრულებლად. ეს შეიძლება იყოს ლოგიკური ოპერაცია ან მათემატიკური ოპერაცია. ზოგადად, პროგრამაში განცხადებები სრულდება ერთმანეთის მიყოლებით. ზოგჯერ საჭიროა განცხადებების კომპლექტის შესრულება ისევ და ისევ. ამ ამოცანის მისაღწევად გამოიყენება საკონტროლო სტრუქტურები. ორი მათგანი არის for და while loop. ეს სტრუქტურები ხელს უწყობს კოდის თანმიმდევრობის შესრულებას, სანამ მოცემული პირობა არ იქნება ჭეშმარიტი. for loop-ის სინტაქსი შედგება ინიციალიზაციის, ტესტის გამოხატვისა და განახლების გამოხატვისგან. while მარყუჟის სინტაქსი შეიცავს ტესტის გამოხატვას.ეს სტატია განიხილავს განსხვავებას for და while მარყუჟს შორის. მთავარი განსხვავება for და while მარყუჟს შორის არის ის, რომ for loop შეიძლება გამოყენებულ იქნას, როდესაც გამეორებების რაოდენობა ცნობილია და while loop შეიძლება გამოყენებულ იქნას, როდესაც გამეორებების რაოდენობა ცნობილი არ არის.
რა არის Loop-ისთვის?
for loop გამოიყენება პროგრამირების ბევრ ენაში, როგორიცაა C, Java და ა.შ. იგი გამოიყენება განცხადებების ნაკრების მრავალჯერ შესასრულებლად. for მარყუჟის სინტაქსი ასეთია.
-ისთვის (ინიციალიზაცია; ტესტის გამოხატულება, განახლება){
//განცხადებები for მარყუჟის შიგნით
}
ინიციალიზაციის გამოხატულება შესრულებულია მხოლოდ ერთხელ. შემდეგ, ტესტის გამოხატულება ფასდება. ტესტის გამოხატულება შეიძლება შეიცავდეს ცვლადებს, მნიშვნელობებს, მუდმივებს და ოპერატორებს. ეს არის ლოგიკური გამოხატულება. თუ შეფასებული გამოთქმა არის true, კოდი for loop-ში შესრულდება. მარყუჟის ბოლოს მიღწევის შემდეგ, განახლების გამოხატულება შესრულებულია. ეს შეიძლება იყოს ნამატი ან შემცირება.კვლავ შემოწმებულია ტესტის გამოხატულება. თუ შეფასებული გამოთქმა არის true, განცხადებები შესრულდება for loop-ში. მარყუჟის ბოლოს, განახლების გამოხატულება შესრულებულია. ეს პროცესი მეორდება მანამ, სანამ სატესტო გამოთქმა მცდარია. როდესაც სატესტო გამოხატულება მცდარია, for ციკლი მთავრდება და კონტროლი გადაეცემა შემდეგ განცხადებას for loop-ის შემდეგ.
სურათი 01: პროგრამა for loop-ით 5 რიცხვის ჯამის გამოსათვლელად
ზემოხსენებული პროგრამა იპოვის პირველი ხუთი რიცხვის ჯამის პოვნას, რომელიც არის 1, 2, 3, 4 და 5. for ციკლში, i არის 1. ეს არის 5-ზე ნაკლები. ასე რომ, ჯამი გამოითვლება. თავდაპირველად ჯამი არის 0. მას ემატება i, რომელიც არის 1. ჯამი ენიჭება ცვლად ჯამს. ახლა ჯამი არის 1. შემდეგ ფასდება განახლების გამოხატულება. მე იზრდება ერთით. ახლა მე ვარ 2.5-ზე ნაკლებია. ასე რომ, ჯამი გამოითვლება. წინა ჯამის მნიშვნელობა არის 1 და მას ემატება i მნიშვნელობა, რომელიც არის 2. ახლა ჯამი არის 3. განახლების გამოხატულება ფასდება და i იზრდება 1-ით. ახლა არის 3. ეს პროცესი მეორდება. როდესაც i ხდება 6, გამოთქმა ხდება false, რადგან 6 არ არის ტოლი ან ნაკლები 5-ზე. ამიტომ, for ციკლი მთავრდება. და ბოლოს, ხუთივე ნომრის ჯამი იბეჭდება ეკრანზე.
What is while Loop?
while ციკლი ახორციელებს სამიზნე განცხადებებს, სანამ მოცემული პირობა მართალია. while მარყუჟის სინტაქსი ასეთია.
while (სატესტო გამოხატულება){
//განცხადებები while ციკლის შიგნით
}
while ციკლი შეიცავს სატესტო გამოსახულებას. ეს არის ლოგიკური გამოხატულება. თუ შეფასებული გამოთქმა მართალია, მაშინ განცხადებები ასრულებენ while მარყუჟის შიგნით. ამ განცხადებების დასასრულს, ტესტის გამოხატულება კვლავ ფასდება. ეს პროცესი მეორდება მანამ, სანამ ტესტის გამოხატულება არ გახდება ყალბი.როდესაც ის ხდება false, while ციკლი მთავრდება და კონტროლი გადაეცემა განცხადებას while მარყუჟის შემდეგ.
სურათი 02: პროგრამა while ციკლით 5 რიცხვის ჯამის გამოსათვლელად
ზემოხსენებული პროგრამის მიხედვით, ჯამი ინიციალიზებულია 0-მდე და i ინიციალიზებულია 1-ზე. while ციკლში, i მნიშვნელობა ფასდება. 5-ზე ნაკლებია. ასე რომ, ჯამი გამოითვლება. ჯამის საწყისი მნიშვნელობა არის 0. მას ემატება i მნიშვნელობა 1. ახლა ჯამი არის 1. შემდეგ i მნიშვნელობა იზრდება ერთით. ახლა i მნიშვნელობა არის 2. ეს არის 5-ზე ნაკლები. ასე რომ, ჯამი გამოითვლება. მიმდინარე ჯამი, რომელიც არის 1, ემატება i მნიშვნელობას, რომელიც არის 2. ახლა ჯამი არის 3. ისევ i მნიშვნელობა იზრდება. ახლა i მნიშვნელობა არის 3. ეს პროცესი მეორდება. როდესაც i მნიშვნელობა ხდება 6, გამოთქმა ხდება მცდარი, რადგან ის არ არის 5-ზე ნაკლები ან ტოლი.ასე რომ, while ციკლი მთავრდება. საბოლოოდ, ჯამის მნიშვნელობა იბეჭდება ეკრანზე. თუ არ იყო ნამატი, როგორიცაა i++, მაშინ i მნიშვნელობა იგივე რჩება, რაც არის 1. ეს არის 5-ზე ნაკლები. პირობა ყოველთვის მართალია. ასე რომ, ეს იქნება უსასრულო ციკლი.
რა მსგავსებაა მარყუჟის დროს და ციკლს შორის?
- როგორც for და while loop არის განმეორების კონტროლის სტრუქტურები პროგრამირებაში.
- ციკლის შესრულება დამოკიდებულია სატესტო გამოხატულებაზე.
რა განსხვავებაა Loop-სა და დროს შორის?
vs while Loop |
|
for loop არის გამეორების კონტროლის სტრუქტურა, რომელიც საშუალებას აძლევს პროგრამისტს ეფექტურად დაწეროს ციკლი, რომელიც უნდა შეასრულოს გარკვეული რაოდენობის ჯერ. | while მარყუჟი არის გამეორების საკონტროლო სტრუქტურა, რომელიც ახორციელებს სამიზნე განცხადებებს მანამ, სანამ მოცემული პირობა მართალია. |
გამოყენება | |
for მარყუჟის გამოყენება შესაძლებელია, როდესაც ცნობილია გამეორებების რაოდენობა. | while ციკლი შეიძლება გამოყენებულ იქნას, როდესაც გამეორებების რაოდენობა უცნობია. |
ინიციალიზაცია | |
ინიციალიზაცია ხდება ერთხელ ციკლში. | In while მარყუჟში, თუ ინიციალიზაციის განცხადება არის ციკლის შიგნით, მაშინ ინიციალიზაცია კეთდება ყოველ ჯერზე, როდესაც ციკლი განმეორდება. |
შეჯამება – vs while Loop
პროგრამაში, ზოგჯერ საჭიროა განცხადებების სიმრავლის მრავალჯერ გამეორება. ამ ამოცანების მისაღწევად არსებობს განმეორების კონტროლის სტრუქტურები. ორი მათგანი არის for და while loop. განსხვავება for და while მარყუჟს შორის არის ის, რომ for loop გამოიყენება, როდესაც ცნობილია გამეორებების რაოდენობა და while მარყუჟი გამოიყენება, როდესაც გამეორებების რაოდენობა უცნობია.