Diziler ve döngüler
- C++ kursu
- Başlangıç
- Ders 57/116
- 5 dk
for ile dizinin üzerinde gezinmeyi öğrenirsin.
Diziler ve döngüler
Bir dizinin tüm elemanlarını işlemek için for döngüsü kullanırsın. En yaygın kalıp: for (int i = 0; i < N; i++) ... nums[i] .... Burada N dizinin boyutudur.
Bu yapıda i 0'dan başlar, N'den küçük olduğu sürece döner ve her yinelemede nums[i] ile bir eleman alınır. C-style dizilerde boyutu ayrı tutman gerektiği için N değerini elle yazarsın. std::array'de ise nums.size() ile dinamik alabilirsin.
Range-based for ile dizi
C-style dizilerde klasik for yanında range-based for da çalışır: for (int x : nums) std::cout << x;. Bu yapı dizin gerektirmeyen durumlar için daha kısa ve güvenlidir.
Ancak elemanın dizinine ihtiyaç duyduğun durumlar (örneğin eleman numarasını yazdırırken) klasik for gerekir. std::array'de ise hem range-based for hem de nums.size() ile klasik for kullanılabilir; ikisi de güvenlidir. Doğru aracı doğru yere seçmek kodun okunabilirliğini artırır.
Uygulama Diziyi yazdır (for)
nums dizisine {1, 2, 3, 4, 5} değeri verilmiş. for (int i = 0; i < 5; i++) döngüsüyle her elemanı std::cout << nums[i]; ile tek satırda yazdır. Çıktı 12345 olmalı.
Başlangıç kodu
#include <iostream>
int main() {
int nums[5] = {1, 2, 3, 4, 5};
// for ile tüm elemanları yazdır
return 0;
}Örnek çözüm
#include <iostream>
int main() {
int nums[5] = {1, 2, 3, 4, 5};
for (int i = 0; i < 5; i++) {
std::cout << nums[i];
}
std::cout << std::endl;
return 0;
}Beklenen çıktı
12345
Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 Döngü kalıbını eşle
| Kavram | Anlamı |
|---|---|
int i = 0 |
Başlangıç |
i < 5 |
Koşul |
nums[i] |
Dizinin i. elemanı |
i++ |
Artış |
2 for (int i = 0; i < 5; i++) std::cout << nums[i]; ne yapar?
int nums[5] = {1,2,3,4,5};
for (int i = 0; i < 5; i++)
std::cout << nums[i];- 5. elemanı yazdırır
- 0'dan 4'e elemanları yazdırır Doğru cevap
- Diziyi 5'e böler
- Sonsuz döngü oluşur
Açıklama: i = 0,1,2,3,4 için elemanlar yazdırılır.
3 Döngü gövdesini yaz
int nums[3] = {10, 20, 30};
for (int i = 0; i < 3; i++) {
std::cout << ____;
}
int nums[3] = {10, 20, 30};
for (int i = 0; i < 3; i++) {
std::cout << nums[i];
}
Açıklama: nums[i] her yinelemede ilgili elemanı verir.