Pascal ile Programlama Sanatı

En Büyük İslami Forum Sitesi/Pascal ile Programlama Sanatı => Pascal ile Programlama Sanatı - Pascal programla dili yazı dizisi bölüm Altprogramlar, Dosyalama, Sayısal procedure ve fonctionlar.Bu yazıdan sonra

Gönderen Konu: Pascal ile Programlama Sanatı  (Okunma sayısı 3669 defa)

0 Üye ve 1 Ziyaretçi konuyu incelemekte.

Çevrimdışı administrator

  • Administrator
  • General
  • *****
  • İleti: 24515
  • Karma: +3/-1
    • Profili Görüntüle
    • Toplist Ekle Site Ekle
Pascal ile Programlama Sanatı
« : Nisan 30, 2009, 12:26:16 ÖS »
Pascal ile Programlama Sanatı -

Pascal programla dili yazı dizisi bölüm Altprogramlar, Dosyalama, Sayısal procedure ve fonctionlar.Bu yazıdan sonra Pascalla daha ayrıntılı biçimde çalışmayı öğreneceğiz Bu bölümde pascalla yapılabilecek alt programlar,dosyalama ve diğer işlemler hakkında bilgi vermeye çalışacağım.

Pascal programı ana program ve altprogramlardan oluşur.Alt programlar iki çeşittir. (Procedure ve Function)Aynı işlemi yapan program parçası,programın birkaç yerinde kullanılması gerektiğinde tekrar yazmak yerine altprogram çağrılır.

Procedure Altprogramları
Bu altprogram bir pascal komutu gibi çalışır.Anayapısı
Procedure procedure_adı(parametre listesi);forward
tanımlamalar
begin
işlemler
end;
şeklindedir.Görüldüğü gibi end'in sonuna .(nokta) yerine ;(noktalı virgül) kullanılmalıdır.Parametrelerde istenirse kullanılır.Procedure içinde tanımlanan değişken ,sabit,tip ve etiketler bu procedure ve bu procedürün içinde kullanılan diğer altprogramlarda geçerli olur.Programın diğer bölümlerinde kullanılmazlar.Forward procedure ismi ve parametre listesinden sonra yazılır.
Procedure içerisine değer göndermek ve procedure içerisinde hesaplanan bir değeri dışarı göndermek için parametre kullanılır.Değişken isminden önce var tanımlama komutunun kullanılması durumunda hem procedure içinde değer alır hem de procedure 'den çıkışta dışarıya değer gönderir(procedure ornek(var a,b:integer ;c:byte))

Function altprogramları
Pascalda kullanılan komutlara benzer komutlar yaratmak için procedure,yardımcı komutlar hazırlamak için function altprogramları kullanılır.Functionlar tek başlarına kullanılmazlar.Yapısı
function function_adı (parametre listesi):tip; şeklindedir.
Pascalda kullanılan standart procedureler ve functionlar vardır.Bunlardan bazılarını kısaca açıklayalım.
Lenght: Verilen string ifadenin karakter sayısını verir.Sonucu byte tipinde bir fonksiyondur.Sözdizimi lenght(stringifade) şeklindedir.
Copy:Verilen string ifadenin belirtilen pozisyondan itibaren kopyalamak için kullanılır.
copy(string ifade,başlangıç pozisyonu,karakter sayısı)
Insert:Bir string ifade içerisine başka bir karakter grubu eklemek için kullanılır.
insert(string ifade,string değişken,pozisyon)
Delete: Bir string değişken içerisinden beliritlen pozisyondan itibaren istenilen sayıda karakteri silmk için kullanılır
Concat:Birden fazla string ifadeyi birleştirmek için kullanılır.Sonucu string tipte bir ifadedir.
Pos:Bir string ifade içinde başka bir string ifadenin bulunduğu pozisyonu verir.
Fillchar:Bir string değişkene istenen sayıda karakter aktamak için kullanılır.
Upcase:Verilen küçük harfi büyük harfe çevirir.
Chr: Kod numarası verilen karakteri verir.Kod numaraları 0-255 arasındadır.
Str:Verilen sayısal ifadeyi string ifadeye çevirir.
Sayısal Procedure ve Functionlar
Abs:Verilen sayısal ifadenin mutlak değerini alarak sonucu verir.
Arctan:Verilen sayısal ifadenin arctanjant değerini verir.
Cos:Verilen sayısal ifadenin cosinüsün değerini verir.
Sin:Verilen sayısal ifadenin sinüs değerini verir.
Dec:Verilen sayısal ifadenin değerini istenen sayıda azaltmak için kullanılır.
Inc:Verilen sayısal ifadenin değerini istenen sayıda artırmak için kullanılır
Int:Verilen sayısal ifadenin tamsayı kısmını verir.Sonucu real tipte bir bilgidir.
Frac:Verilen sayısal ifadenin ondalıklı kısmını verir.Sonucu real tipte bir bilgidir.
Exp:Verilen sayısal ifadenin exponential(e üzeri x) değerini verir
Ln: Verilen sayısal ifadenin logaritmasını verir.
Pı:Pi sayısını verir.Sonucu 3,1415926536 'dır.
Sqr:Verilen sayısal ifadenin karesini alır.Sonucu aynı tiptedir
Sqrt:Verilen sayısal ifadenin karekökünü verir.Sonucu real tipte bir bilgidir.
Odd: Verilen sayısal ifadenin tek sayı olup olmadığını hesaplar.
Ord: Verilen karakterin kodunu verir.
Round: Real tipindeki sayısal ifadeyi tamsayıya yuvarlar.
Random:Rastgele sayı üretmek için kullanılır.
Trunc:Verilen sayısal ifadenin tamsayı kısmını verir.
Val:Verilen string tipteki bilgiyi sayısal ifadeye çevirir.

DİZİLER
Program içerisinde aynı tür bilgiden çok sayıda olması ve bu bilgilerin tamamı üzerinde işlem yapılmasının gerektiği durumlarda diziler kullanılır.Pascal'da dizi tanımlamak için array komutu kullanılır.Array komutunun tek boyutlu diziler için yazılımı
array[x,y]of tip adı
Burada x alt limit,y üst limitdir.X ve y değerleri negatif tamsayı olabilir ve x değeri y'den küçük olmalıdır.
isim :array[1..100] of string;
puan:array[1..100] of byte;
İki veya üç boyutlu dizileri tanımlamak içinse
array[1..100] of array [1..20] of integer
veya
array[1..100,1..20] of integer
kullanılmalıdır.

DOSYALAMA
Aynı yapıdaki kayıtlardan oluşan bilgiler program içinde sabit olarak tanımlanırlar veya dosya içinde saklanırlar.Turbo Pascal'da iç çeşit dosyalama mevcuttur. Bunlar text dosyalar,tipli dosyalar ve tipsiz dosyalardır.
Text Dosyalar
Metin dosyası olarak adlandırılan bu dosyalarda kayıtlar arka arkaya yazılırlar.Her kayıtın sonunda Cr(cariage return)(EOL) işareti vardır.Dosayaya yazılan kayıtlar dosyada sırasıyla bulunurlar.Bir kayıta ulaşmak gerektiğinde o kayıta kadar olan bütün kayıtlar okunur.bu yüzden büyük dataların olduğu yerlerde erişim yavaş olduğu için tercih edilmez.Text dosyalarda dosyaya kayıt yazmak veya kayıt okumak için dosya farklı komutlarla açılmalıdır.Text dosya tanımlamak için
var
dosya:text; kullanılmalıdır.Text dosyalarda kullanılan komutlar şu şekildedir.
Assig nosya değişkenine dosya ismini atamak için kullanılır.{assign(dosya değişkeni,dosya adı)}
Rewrite osyaya bilgi yazılması için dosyanın açılmasını sağlar.Dosyada önceden bulunan datalar silinerek ilk kayıttan itibaren bilgi girilmesi sağlanır.
Reset osyadan bilgilerin okunması için dosyayı açar.Bu komutun kullanılabilmesi için dosyanın daha önceden bulunması gerekmektedir
Appendosyaya bilgi girmek(eklemek) için dosyayı açmamıza yardımcı olur.Yapılan kayıt dosyanın sonundan itibarendir.
EOF:Okuma işlemi sırasında dosya sonuna gelinip gelinmediğini kontrol etmek için kullanılır.
Writelnosyaya bilgilerin yazılmasını sağlayan bu komutun kullanılması için dosyanın rewrite veya append komutu ile açılması gerekir. {writeln(dosyadeğişkeni,bilgi veya değişken listesi)}
Readln:Reset komutu ile açılmış dosyadan kayıt okumak için kullanılır.{readln(dosya değişkeni,değişken listesi)}
Close:Açık olan dosyayı kaptmak için kullanılır.
Typed Dosyalar
Dosyalarda yer alacak bilgiler herhengi bir veri tipinde olmalıdır veya record veri tipi ile birden fazla alan tak bir isim altında toplayarak dosyada yer alabilir.Kayıt yapısı bir tipe sahip olan dosyayı tanımlamak için var tanımlama bölümünde
dosya değişkeni :file of tip adı
ifadesi kullanılır.Tipli dosyalarda text dosyalarda kullanılan komutlar kullanılır.Ayrıca
Ioresult:Input-output işlemleri sırasında oluşabilecek hataları kontrol etmek için kullanılır.
Seekosyanın istenen kayıt numarasına konumlanmak için kullanılır.
Filesizeosyadaki mevcut kayıt sayısını verir.
Filepososyada üzerinde bulunduğumuz kaydın numarasını verir.
Bu komutların bazılarının nasıl kullanıldığı ve ne anlama geldiğini birlikte inceleyelim.
dosya: file of string; ( dosya değişkenin tanımlanması )
assign(dosya,'dosyaadı'); (dosya isminin atanması)
reset (dosya); ( dosyanın açılması)
kod:=IOResult; ( hata kontrolü)
if kod<>0 then rewrite (dosya); (eğer hata varsa dosyayı oluştur)
wirte(dosya,x) ; ( x değişkenindeki bilgiyi dosyaya kaydet )
close(dosya); (dosyanın kapatılması)
umut64 isimli üyenin yazdığı bu Mesajı değerlendirin. Mesajı Moderatöre bildir    Alıntı ile Cevapla
BilX.Net

 

Related Topics

  Konu / Başlatan Yanıt Son İleti
0 Yanıt
2649 Gösterim
Son İleti Nisan 30, 2009, 12:24:50 ÖS
Gönderen: administrator
0 Yanıt
2081 Gösterim
Son İleti Nisan 30, 2009, 12:28:47 ÖS
Gönderen: administrator
0 Yanıt
3087 Gösterim
Son İleti Nisan 30, 2009, 12:29:31 ÖS
Gönderen: administrator
0 Yanıt
2513 Gösterim
Son İleti Nisan 30, 2009, 12:30:27 ÖS
Gönderen: administrator
0 Yanıt
452 Gösterim
Son İleti Ekim 08, 2014, 07:00:26 ÖS
Gönderen: Perfect