GİRİŞ-ÇIKIŞ DEYİMLERİ
Read-Readln
Pascal 'da okuma işlemi için kullanılan komutlar READ ve READLN olup genel kullanım yapısı şu şekildedir;
Read(A1,A2,A3,...,An)
ReadLn(A1,A2,A3,...,An)
Read ile Readln arasındaki fark: Read, okuma işlemi tamamlandıktan sonra aynı satırda kalınmasını, Readln ise yeni bir satıra gelinmesini sağlar. Bir Pascal programı içerisinde bu iki komutun kullanımı aşağıdaki program parçasında verilmiştir.
Var
s,a,n:real;
......
begin
Read(s,a,n)
end.
Okunacak değerlerin düzeni; 12.45 43.543 62.12
Write-Writeln :
Pascal programlama dilinde yazma işlemi için WRITE ve WRITELN komutları kullanılmaktadır. Bu komutların genel kullanım yapısı şu şekildedir;
Write(A1,A2,A3,...,An)
Writeln(A1,A2,A3,...,An)
İki kullanım şekli arasındaki fark, Read ile Readln arasındaki fark gibidir.
Var
s,a,n:integer;
begin Programın çalıştırılmasıyla elde edilen sonuç; 395 olacaktır.
s:=3;a:=9;n:=5;
Write(s); Write(a); Write(n);
end.
3
Aynı değişkenleri Writeln ile yazdırdığımızda; 9
5 olur.
Örnek :İki kenarı verilen dik üçgenin hipotenüsünü bulur.
uses crt;
var
a,b,c:integer;
begin
clrscr;
write('1.Kenarı Giriniz......:');readln(a);
write('2.Kenarı Giriniz......:');readln(b);
writeln('Üçgenin Hipotenüsü.....:',sqrt(sqr(a)+sqr(b)));
readln;
end.
Yazım İçin Format Belirleme :Writeln deyimi ile yapılan bilgi çıkışlarını düzenlemek için yazım formatları kullanılır. Yazdırılmak istenilen değerin tipine bağlı olarak iki farklı yazım formatı kullanılır.
1. Yazım Formatı (M:n) :Bu yazım formatına göre yazdırılmak istenilen M değeri n karakterlik alanda sağa dayalı olarak yazılır. M değerini oluşturan dijit veya karakterin uzunluğu n sayısından küçük ise, aradaki fark kadar sol tarafta boşluk bırakılır. M değerinin uzunluğu n sayısına eşit veya büyük ise yazdırma işlemi format belirtilmemiş gibi gerçekleştirilir.
Örnek 1:
uses crt;
const
i:integer=567;
b:boolean=true;
c:char='b';
h:string[10]='nasılsınız';
begin
writeln('123456789');writeln;
writeln(i:9);writeln(b:9);
writeln(c:9);writeln(h:9);
writeln(i:2);writeln(h:5);
end.
2. Yazım Formatı (M:n:k) : Bu yazım formatı real sayılar üzerinde çalışmaktadır. Bu yazım formatıyla reel sayılar üssüz notasyonda yazdırılır. Bunu sağlamak için sadece real sayılar için geçerli olan 2. yazım formatı kullanılır. Yazdırılacak M real değeri n karakterlik alanda sağa dayalı olarak üssüz yazdırılır, k ise n karakterin sonundaki kesirli kısmı göstermektedir.
Örneğin; A değeri, A:7:2 şeklinde yazdırılmak istenirse; program real sayı için 7 karakterlik yer ayırır. Bu alanın son iki hanesi ondalıklı kısım için sondan 3. hanesi ise desimal nokta için kullanılır. Yazdırılacak sayının tam sayı kısmı bu alana sığmıyor ise, tamsayı için ayrılan alanın uzunluğu yazdırılan sayının tamsayı alan uzunluğuna eşit büyüklükte kabul edilir. Kesirli kısmı ayrılan alandan daha küçük ise aradaki fark kadar sağ tarafa 0 dijiti ilave edilir. Kesirli kısım alana sığmıyorsa yuvarlatılarak yazılır. Yazım sırasında kesirli alanın yazılması istenmiyorsa k sayısının “0” yazılması gerekir. k sayısının sıfır olması desimal noktanın yok olmasını sağlar.
Örnek 2:
uses crt;
const
a:real=123.127927;
begin
writeln('123456789');
writeln('*********');;
writeln(a:9:4);writeln(a:9:3);
writeln(a:9:2);writeln(a:9:0);
writeln(a:7:2);writeln(a:6:2);
writeln(a:5:2);writeln(a:0:0);
end.