CodeBlanks Logo Icon CodeBlanks

İş mantığı

C# kursu · Başlangıç · Ders 114/116

Metotlar ve koşullu mantıkla iş kurallarını yazarsın.

AddBook ve ListBooks metotları

Kitap ekleme ve listeleme işlemlerini metotlara taşıyacağız. AddBook(string title, int pageCount) metodu yeni bir Book oluşturup books listesine ekler. ListBooks() metodu ise foreach ile listedeki tüm kitapları yazdırır.

Metotlara parametre vermek, kodu daha esnek kılar; çünkü aynı metodu farklı başlık ve sayfa sayılarıyla çağırabilirsin. foreach döngüsü, listenin tüm elemanlarını sırayla dolaşmanın en kolay yoludur. Bu derste her iki metodu da tanımlayıp Main içinde kullanacağız.

foreach ile listeyi dolaşmak

ListBooks metodunun içinde foreach (Book b in books) döngüsü listedeki her kitabı sırayla b değişkenine atar. Döngü gövdesinde b.Title ve b.PageCount ile kitabın bilgilerine ulaşırız.

Örnek: foreach (Book b in books) { Console.WriteLine(b.Title + " - " + b.PageCount + " sayfa"); } satırı her kitabı yeni bir satırda yazdırır. foreach, listenin uzunluğunu bilmeden tüm elemanları dolaşmanın güvenli ve kısa yoludur.

Uygulama AddBook ve ListBooks ekle

AddBook(string title, int pageCount) metodunu tanımla; içinde books.Add(new Book { Title = title, PageCount = pageCount }); ile kitap ekle. ListBooks() metodunu tanımla; foreach (Book b in books) ile her kitabı Console.WriteLine(b.Title + " - " + b.PageCount + " sayfa"); ile yazdır. Main içinde AddBook("Yüzüklerin Efendisi", 350); ve AddBook("Suç ve Ceza", 700); çağrılarını ekle, sonra ListBooks(); çağır.

Örnek çözümü göster
AddBook ve ListBooks metotlarını tanımla, Main'de iki AddBook çağrısı ve ListBooks(); ekle.
Örnek çözüm:
using System;
using System.Collections.Generic;

class Book
{
    public string Title;
    public int PageCount;
}

class Program
{
    static List<Book> books = new List<Book>();

    static void PrintMenu()
    {
        Console.WriteLine("1 - Ekle");
        Console.WriteLine("2 - Listele");
        Console.WriteLine("3 - Çıkış");
    }

    static void AddBook(string title, int pageCount)
    {
        books.Add(new Book { Title = title, PageCount = pageCount });
    }

    static void ListBooks()
    {
        foreach (Book b in books)
        {
            Console.WriteLine(b.Title + " - " + b.PageCount + " sayfa");
        }
    }

    static void Main()
    {
        AddBook("Yüzüklerin Efendisi", 350);
        AddBook("Suç ve Ceza", 700);
        ListBooks();
    }
}

Kendini test et

  1. AddBook metodunun parametreleri nelerdir?

    static void AddBook(string title, int pageCount)
    • yalnızca title
    • yalnızca pageCount
    • title ve pageCount
    • books
    Cevabı göster

    title ve pageCount — Doğru! AddBook title ve pageCount olmak üzere iki parametre alır.

  2. Metodu göreviyle eşleştir

    AddBook
    Kitap ekler
    ListBooks
    Kitapları yazdırır
    foreach
    Listeyi dolaşır
  3. foreach döngüsü

    foreach (Book b ____ books)
    {
        Console.WriteLine(b.Title);
    }
    Cevabı göster
    foreach (Book b in books)
    {
        Console.WriteLine(b.Title);
    }

Başlangıç bölümündeki tüm dersler