
C# For Döngüsü (Geliştiriciler İçin Nasıl Çalışır)
Bu kapsamlı eğitimde, public static void Main yöntemi içinde for döngülerine başlamak için bilmeniz gereken her şeyi ele alacağız. For döngülerini, döngü değişkenlerini, döngü gövdelerini, iterasyon değişkenlerini, iç ve dış döngüleri, sonsuz döngüleri, boolean ifadelerini, iç içe döngüleri ve daha fazlasını keşfedeceğiz. Başlayalım!
For Döngüleriyle Başlangıç
Bir for döngüsü, tam olarak kaç kez yinelemek istediğinizi bildiğiniz durumlar için özel olarak tasarlanmış bir C# döngüsü türüdür. C# dilinde for döngüsünün söz dizimi aşağıdaki kod bloğunda gösterilmiştir:
for (initialization; condition; increment)
{
// Loop body
}initialization
Do While condition
' Loop body
increment
LoopBir for döngüsünün bileşenlerini ayıralım:
- Başlatma: Bu, döngü değişkeninin veya iterasyon değişkeninin tanımlandığı ve başlatıldığı yerdir.
- Koşul: Döngünün birden fazla kez ifade yürütmeye devam edip etmeyeceğini belirleyen bir boolean/koşullu ifadedir.
- Artış: Bu ifade, her yinelemeden sonra iterasyon değişkenini günceller.
Static Void Main ve Döngü Değişkenleri
C#'ta, static void Main metodu veya static void Main(String []args) uygulamanızın giriş noktasıdır. Bu, programınızın çalışmaya başladığı yerdir. Içinde static void Main metodu ile bir for döngüsü nasıl kullanacağınıza dair bir döngü örneği:
using System;
class Program
{
static void Main()
{
for (int i = 0; i < 5; i++)
{
Console.WriteLine("This is the first for loop!");
}
}
}Imports System
Friend Class Program
Shared Sub Main()
For i As Integer = 0 To 4
Console.WriteLine("This is the first for loop!")
Next i
End Sub
End ClassBu örnekte, döngü değişkeni int i 0 olarak başlatılır ve değişken olarak işlev görür. Döngü, i 5'dan küçük olduğu sürece çalışmaya devam edecektir. Her yinelemeden sonra, artırma işlemi i++ i değerini 1 artırır.
İç İçe Döngüleri Keşfetme
İç içe döngüler, diğer döngülerin içine yerleştirilen döngülerdir; bu, bir iç döngü ve bir dış döngü oluşturur ve yineleyen bölümlere sahiptir. Bunlar, matrisler gibi çok boyutlu veri yapılarıyla çalışırken veya her bir öğe kombinasyonunda belirli bir işlem yapmanız gerektiğinde faydalı olabilir.
İşte C#'ta bir dış döngü içine yerleştirilmiş bir iç döngüye sahip bir iç içe for döngüsü örneği:
for (int i = 0; i < 3; i++)
{
for (int j = 0; j < 2; j++)
{
Console.WriteLine($"i: {i}, j: {j}");
}
}For i As Integer = 0 To 2
For j As Integer = 0 To 1
Console.WriteLine($"i: {i}, j: {j}")
Next j
Next iBu örnekte, dış döngü çalışır ve i 0'a eşit başlar. İç döngü daha sonra j'nun tüm olası değerlerini geçirerek i'nun bir sonraki değerine geçer.
Sonsuz Döngüler ve Döngü Kontrolü
Bir sonsuz döngü, test koşulu asla yanlış hale gelmediği için asla sona ermeyen bir döngüdür. Bunlar tehlikeli olabilir çünkü programınızın süresiz olarak askıda kalmasına neden olabilirler. While döngüleri veya foreach döngüleri gibi döngüleri yazarken çıkış koşulunun sonunda sağlanacağından emin olun. Aşağıda, belirtilmiş bir koşulu olmayan bir sonsuz döngü örneği verilmiştir.
// This is an example of an infinite loop
for (int i = 0; ; i++)
{
Console.WriteLine("This loop will run forever!");
}' This is an example of an infinite loop
Dim i As Integer = 0
Do
Console.WriteLine("This loop will run forever!")
i += 1
LoopStandart for döngü yapısına ek olarak, C# break ve continue gibi döngü kontrol ifadeleri de sağlar, bu ifadeler döngülerinizi daha etkili yönetmenize yardımcı olabilir.
break: Bu ifade döngüden hemen çıkmak için kullanılır. Birbreakifadesi ile karşılaşıldığında döngü sona erer ve program döngü dışındaki bir sonraki kod satırı ile devam eder.continue: Bu ifade, döngü gövdesindeki kalan kodu geçmek ve döngünün bir sonraki yinelemesine atlamak için kullanılır.
break ve continue kullanımını bir for döngüsü içinde gösteren bir örnek:
for (int i = 0; i < 10; i++)
{
if (i == 5)
{
break; // Exits the loop when i is equal to 5
}
if (i % 2 == 0)
{
continue; // Skips even numbers
}
Console.WriteLine($"Odd number: {i}");
}For i As Integer = 0 To 9
If i = 5 Then
Exit For ' Exits the loop when i is equal to 5
End If
If i Mod 2 = 0 Then
Continue For ' Skips even numbers
End If
Console.WriteLine($"Odd number: {i}")
Next iBu örnekte, döngü i 5'a ulaştığında çalışmayı durdurur. continue ifadesi çift sayıları atlamaya yarar, bu yüzden sadece 5'dan küçük tek sayılar yazdırılacaktır.
Boolean İfadeler ve Döngü Koşulları
Döngü koşulu, döngünün çalışmaya devam edip etmeyeceğini belirleyen bir boolean ifadedir. Bu ifade her yinelemeden önce değerlendirilir ve döngü yalnızca ifade true ise çalışacaktır. Birçok döngüde yaygın olarak kullanılan boolean ifadeler şunlardır:
- Comparisons:
i < 10,i >= 10,i > 10,i == 10,i != 10 - Mantıksal operatörler:
&&(VE),||(OR),!(DEĞİL)
Daha karmaşık döngü koşulları oluşturmak için birkaç ifadeyi mantıksal operatörlerle birleştirebilirsiniz. Örneğin:
for (int i = 0; i < 10 && i != 5; i++)
{
Console.WriteLine(i);
}Dim i As Integer = 0
Do While i < 10 AndAlso i <> 5
Console.WriteLine(i)
i += 1
LoopBu örnekte, döngü i 10'den küçük ve 5'a eşit değil olduğu sürece çalışacaktır.
Kod Blokları ve Döngü Gövdeleri
Bir kod bloğu, kıvırcık parantezler {} ile çevrili ifade grubudur. Bir for döngüsünde, döngü bildirimini takip eden kod bloğuna döngü gövdesi adı verilir. Her döngü iterasyonunda yürütmek istediğiniz kodu buraya yerleştireceksiniz.
for (int i = 0; i < 5; i++)
{
// This is the loop body
Console.WriteLine($"Iteration: {i}");
}For i As Integer = 0 To 4
' This is the loop body
Console.WriteLine($"Iteration: {i}")
Next iBu örnekte, döngü gövdesi mevcut yineleme numarasını yazdıran tek bir Console.WriteLine ifadesinden oluşur.
Döngü Çalışma Adımları
For döngüsü kodunuzda karşılaştığınızı gördüğünüzde, aşağıdaki olaylar dizisi meydana gelir:
- Döngü değişkeni başlatılır.
- Boolean ifade değerlendirilir. Eğer ifade
falseise, döngü atlanır ve program döngü dışındaki bir sonraki kod satırına devam eder. - Eğer ifade
trueise, döngü gövdesi yürütülür. - Döngü değişkeni artırılır veya güncellenir.
- Boolean ifade
falseolana kadar adım 2-4 tekrar edilir.
For Döngüleriyle Raporlar Oluşturmak için IronPDF Entegrasyonu
IronPDF'nin PDF oluşturma yetenekleri hakkında bilgi edinin ve C#'ta dinamik ve sağlam PDF raporları oluşturun. Özellikle döngülerinizde işlenen verilere dayanarak dinamik raporlar veya belgeler oluşturmanız gerekiyorsa, for döngüleriyle çalışırken kullanışlı bir araç olabilir. Bu bölümde, IronPDF'yi C# for döngüleri ile birlikte kullanarak basit bir rapor oluşturmayı göstereceğiz.
Öncelikle, IronPDF NuGet paketini yüklemeniz gerekecek. Bunu Visual Studio'daki Paket Yöneticisi Konsolunu kullanarak yapabilirsiniz:
IronPDF'yi yüklediğinizde, bir for döngüsü kullanarak sayıların ve onların karelerinden oluşan bir tablo içeren HTML'den PDF raporu oluşturma basit bir örnek oluşturalım.
Adım 1: Gerekli ad alanlarını ekleyin.
using IronPdf;
using System.IO;Imports IronPdf
Imports System.IOAdım 2: GenerateReport adında yeni bir yöntem oluşturun.
static void GenerateReport()
{
// Create an HTML template for the report
var htmlTemplate = @"
<html>
<head>
<style>
table {
border-collapse: collapse;
width: 100%;
}
th, td {
border: 1px solid black;
padding: 8px;
text-align: center;
}
</style>
</head>
<body>
<h1>Number Squares Report</h1>
<table>
<thead>
<tr>
<th>Number</th>
<th>Square</th>
</tr>
</thead>
<tbody>
{0}
</tbody>
</table>
</body>
</html>";
// Generate the table rows using a for loop
string tableRows = "";
for (int i = 1; i <= 10; i++)
{
tableRows += $"<tr><td>{i}</td><td>{i * i}</td></tr>";
}
// Insert the generated table rows into the HTML template
string finalHtml = string.Format(htmlTemplate, tableRows);
// Create a new PDF document from the HTML using IronPdf
var pdf = new IronPdf.ChromePdfRenderer();
var document = pdf.RenderHtmlAsPdf(finalHtml);
// Save the PDF to a file
document.SaveAs("NumberSquaresReport.pdf");
}Shared Sub GenerateReport()
' Create an HTML template for the report
Dim htmlTemplate = "
<html>
<head>
<style>
table {
border-collapse: collapse;
width: 100%;
}
th, td {
border: 1px solid black;
padding: 8px;
text-align: center;
}
</style>
</head>
<body>
<h1>Number Squares Report</h1>
<table>
<thead>
<tr>
<th>Number</th>
<th>Square</th>
</tr>
</thead>
<tbody>
{0}
</tbody>
</table>
</body>
</html>"
' Generate the table rows using a for loop
Dim tableRows As String = ""
For i As Integer = 1 To 10
tableRows &= $"<tr><td>{i}</td><td>{i * i}</td></tr>"
Next i
' Insert the generated table rows into the HTML template
Dim finalHtml As String = String.Format(htmlTemplate, tableRows)
' Create a new PDF document from the HTML using IronPdf
Dim pdf = New IronPdf.ChromePdfRenderer()
Dim document = pdf.RenderHtmlAsPdf(finalHtml)
' Save the PDF to a file
document.SaveAs("NumberSquaresReport.pdf")
End SubProgram.cs dosyanızdan GenerateReport yöntemini çağırın:
GenerateReport();GenerateReport()
Bu örneği çalıştırdığınızda, uygulamanızın çıkış dizininde "NumberSquaresReport.pdf" adlı bir PDF raporu oluşturulacaktır. Rapor, 1'den 10'a kadar olan sayılar ve bunların karelerinden oluşan bir tablo içerecek ve bu tablo bir C# for döngüsü kullanılarak oluşturulmuştur.
Sonuç
Sonuç olarak, bu kapsamlı eğitim, C# for döngüleri ve bunlarla ilgili kavramlarda sağlam bir temel sağladı. Döngü değişkenlerini, döngü gövdelerini, iterasyon değişkenlerini, iç ve dış döngüleri, sonsuz döngüleri, boolean ifadelerini, kod bloklarını, iç içe döngüleri ve hatta IronPDF kütüphanesini entegre ederek for döngüleri kullanarak dinamik PDF raporları oluşturmayı gösterdik.
IronPDF yeteneklerini test etmeniz için size ücretsiz bir deneme sunuyoruz ve eğer faydalı bulursanız, lisanslama ihtiyaçlarınızı karşılamak için uygun seçeneklerden başlar.

Jacob Mellor, Iron Software'de Baş Teknoloji Yöneticisidir ve C# PDF teknolojisinde öncü bir mühendisdir. Iron Software'ın ana kod tabanının ilk geliştiricisi olarak, CEO Cameron Rimington ile birlikte şirketin ürün mimarisini 50'den fazla kişilik bir şirkete dönüştürmüştür ve NASA, Tesla ve dünya genelindeki devlet kurumlarına hizmet etmektedir.
İlgili Makaleler


