Menu
Coddy logo textTech

For Döngüsü ile Yineleme

Coddy'nin C++ Journey'sinin Mantık & Akış bölümünün bir parçası. Ders 14 / 56.

Artık tek tek öğelere nasıl erişeceğinizi ve bir vektörün boyutunu nasıl kontrol edeceğinizi bildiğinize göre, geleneksel bir for döngüsü kullanarak her öğeyi sistematik biçimde nasıl işleyeceğinizi öğrenelim. Bu yaklaşım, her öğeyi sırayla ziyaret etmek için .size() yöntemini dizin tabanlı erişimle birleştirir.

Geleneksel bir for döngüsü, 0'dan başlayan ve vektörün boyutuna ulaşana kadar artan bir dizin değişkeni kullanır:

std::vector<std::string> names = {"Alice", "Bob", "Charlie"};

for (int i = 0; i < names.size(); i++) {
    std::cout << names[i] << std::endl;
}

Bu örnekte, döngü koşulu i < names.size() vektörün sınırlarını aşmamamızı sağlarken, names[i] geçerli dizini kullanarak her öğeye erişir. Döngü, her adı ayrı bir satıra yazdırır.

Bu desen, veri koleksiyonlarını işlemek için temeldir. Dizin değişkeni i, üzerinde çalıştığın öğe üzerinde hassas kontrol sağlar; bu da her öğenin konumunu bilmen gerektiğinde veya yineleme sırasında öğeleri değiştirmek istediğinde onu kullanışlı kılar.

Döngü tamamlandıktan sonra i değerinin names.size() değerine, bu durumda 3 değerine eşit olduğunu unutma; çünkü döngü, i < names.size() koşulu false olur olmaz durur.

challenge icon

Görev

Kolay

Ürün adlarından oluşan bir vektör üzerinde yineleme yapmak ve bunları numaralandırılmış liste biçiminde görüntülemek için geleneksel bir for döngüsü kullanan bir program oluşturun.

Aşağıdaki girdiler sağlanacaktır:

  • Ürün sayısını temsil eden bir n tam sayısı
  • Ardından ürün adlarını temsil eden n dize

Programınız şunları yapmalıdır:

  1. products adlı bir std::vector<std::string> oluşturun
  2. n ürün adının her birini vektöre eklemek için push_back() kullanın
  3. Vektör üzerinde bir indeks değişkeniyle yineleme yapmak için geleneksel bir for döngüsü kullanın
  4. Döngü koşulunda .size() yöntemini kullanın
  5. Her öğeye indeksine göre erişmek için köşeli parantez [] operatörünü kullanın
  6. Her ürünü, belirtilen biçimde, sıra numarasıyla birlikte yazdırın

Aşağıdaki tam çıktı biçimini kullanın:

Product 1: [first product name]
Product 2: [second product name]
Product 3: [third product name]
...

For döngüsü 0 indeksiyle başlamalı, koşul olarak i < products.size() kullanmalı ve her yinelemede i değerini artırmalıdır. Yazdırırken, 1'den başlayan sıra numaralarını görüntülemek için indekse 1 ekleyin.

Kendin dene

#include <iostream>
#include <vector>
#include <string>
using namespace std;

int main() {
    // Ürün sayısını oku
    int n;
    cin >> n;
    
    // Ürün adlarını saklamak için bir vektör oluştur
    vector<string> products;
    
    // Ürün adlarını oku ve vektöre ekle
    for (int i = 0; i < n; i++) {
        string product;
        cin >> product;
        products.push_back(product);
    }
    
    // TODO: Kodunu aşağıya yaz
    // Vektör üzerinde gezinmek için geleneksel bir for döngüsü kullan
    // ve her ürünü konum numarasıyla yazdır
    
    return 0;
}
quiz iconKendini test et

Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.

Mantık & Akış bölümündeki tüm dersler

Kendi başına pratik yap: Online C++ derleyicisi