Darsliklar C++ For Tsikl

C++ C++ For Tsikl

for tsikli — takrorlash sonini oldindan bilganingizda ishlatiladigan eng qulay sikl. while da hisoblagichni alohida e’lon qilib, alohida oshirsak, for uch amalni — boshlang’ich qiymat, shart va oshirishni — bir qatorga jamlaydi. Bu kodni ixcham va o’qiladigan qiladi.

fortakrorlash sonini boshqarish uchun boshlash, shart va qadam ifodalarini bitta sarlavhada birlashtiradigan sikl. U aniq sonli takrorlar uchun ideal.

for tuzilishi

for sarlavhasi uch qismdan iborat: for (boshlash; shart; qadam). Ularni amalda ko’ramiz:

#include <iostream>
using namespace std;

int main() {
    for (int i = 1; i <= 5; i++) {
        cout << "Qadam: " << i << endl;
    }
    return 0;
}
Qadam: 1
Qadam: 2
Qadam: 3
Qadam: 4
Qadam: 5

Uch qismning har biri o’z vazifasini bajaradi: int i = 1 — hisoblagichni yaratadi (bir marta), i <= 5 — har takrordan oldin tekshiriladi, i++ — har takrordan keyin bajariladi. Bu — while bilan bir xil natija, lekin ancha ixcham.

Teskari va qadamli sikl

for ni teskari yo’nalishda yoki kattaroq qadam bilan ham yozish mumkin:

#include <iostream>
using namespace std;

int main() {
    // teskari
    for (int i = 5; i >= 1; i--) {
        cout << i << " ";
    }
    cout << endl;

    // ikkitadan
    for (int i = 0; i <= 10; i += 2) {
        cout << i << " ";
    }
    cout << endl;
    return 0;
}
5 4 3 2 1 
0 2 4 6 8 10 

Birinchi sikl 5 dan 1 gacha teskari sanadi, ikkinchisi esa 0 dan 10 gacha ikkitadan oshdi. Qadamni o’zgartirib, siklni to’liq boshqarasiz.

Ichma-ich for (nested loop)

Sikl ichida sikl — jadval yoki matritsa bilan ishlashda ishlatiladi. Masalan, ko’paytirish jadvalining bir qismini chiqaramiz:

#include <iostream>
using namespace std;

int main() {
    for (int i = 1; i <= 3; i++) {
        for (int j = 1; j <= 3; j++) {
            cout << i * j << "\t";
        }
        cout << endl;
    }
    return 0;
}
1   2   3   
2   4   6   
3   6   9   

Tashqi sikl har qatorni, ichki sikl esa har ustunni boshqaradi. \t — tabulyatsiya belgisi, u ustunlarni tekislaydi.

Zamonaviy: range-based for

C++11 dan boshlab to’plam elementlari bo’ylab yurishning soddaroq shakli paydo bo’ldi:

#include <iostream>
using namespace std;

int main() {
    int sonlar[] = {10, 20, 30, 40};
    for (int son : sonlar) {
        cout << son << " ";
    }
    cout << endl;
    return 0;
}
10 20 30 40 

for (int son : sonlar) har bir elementni navbatma-navbat son ga joyladi. Bu shakl indeks bilan ovora bo’lmasdan to’plamni aylanib chiqishning eng toza usuli.

Xulosa

Bu bo’limda for tsikli tuzilishini, teskari va qadamli sikllarni, ichma-ich sikllarni va zamonaviy range-based for ni ko’rib chiqdik. Aniq sonli takror uchun for — birinchi tanlov. Keyingi darsda sikllarni boshqaruvchi break va continue operatorlariga o’tamiz.