Module: Alt programlar: prosedürler ve işlevler - 1


Problem

2/12

Parametreler ve Argümanlar

Theory Click to read/hide

Şimdi bir kullanıcının yaptığı hataya karşılık olarak ne tür bir hata yaptığına bağlı olarak farklı mesajlar göstermemiz gerektiğini düşünelim.
Bu durumda, her hata için kendi prosedürünüzü yazabilirsiniz:  

prosedür printErrorZero();
başlamak
    writeln('Hata. Sıfıra bölme!');
son;

prosedür printErrorInput();
başlamak
    writeln('Girişte hata!');
son;

Ya daha birçok olası hata varsa? Bu çözüm bize uymayacak!
Hangi hata mesajını göstereceğini söyleyerek prosedürü nasıl kontrol edeceğimizi öğrenmemiz gerekiyor.
Bunun için prosedür adından sonra parantez içinde yazacağımız parametrelere ihtiyacımız var.
prosedür printError(s: string);
başlamak
    yaz(lar);
bitiş;
Bu prosedürde s, prosedürü kontrol etmenizi sağlayan özel bir değişken olan bir parametredir.
parametresi, alt programın nasıl çalıştığını belirleyen bir değişkendir. Parametre adları, alt program başlığında noktalı virgüllerle ayrılmış olarak listelenir. Parametreden sonra, iki nokta üst üste ardından parametrenin türü gelir.

Şimdi prosedürü çağırırken, prosedürümüzdeki parametreye (değişken s) atanacak gerçek değeri parantez içinde belirtmeniz gerekir.
printError('Hata! Sıfıra bölme!');
Bu değere argüman denir.
Argüman alt program çağrıldığında ona iletilen parametre değeridir.
Bir bağımsız değişken yalnızca sabit bir değer değil, aynı zamanda bir değişken veya aritmetik bir ifade olabilir.

Problem

Programda, prosedür çağrılarını, 0 değeri girildiğinde "Hata: sıfıra bölme!", ekranda görüntülenir, aksi takdirde bir hata görüntülenir "Girişte hata!".
İşiniz, prosedür için doğru çağrıyı yapmaktır.