Başlangıç > Dökümanlar > Turbo Pascal ile programlamaya başlamak

Turbo Pascal ile programlamaya başlamak

Selam arkadaşlar programlama ya geçmek istioruz ama hangi dilden başlıyacaz dediniz bende bir doküman hazırlıyım dedim. Bu bol örnekli bir doküman olacak şimdiden söyliyim deneyerek daha iyi anlarsınız die oturup yazdım. Mesela ben ilk olarak turbo pascal öğrendim. visual basic, html,.. falan die gitti sonra. Neyse biraz turbo pascaldan bahsedeyim turbo pascal metin tabanlı bi programlama dili. Programlama mantığını kavramak için ideal bence.

Şimdi ilk olarak asıl kalıptan bahsedeyim;

Begin
.
.
.
.
end.

Bloğunun içine yazıcaz kodlarımızı “var” parametresi ile değişkenlerimizi tanıtcaz şimdi ufak bir program yalapım.öyle adınızı falan yazdırmıcam ekranda o kadar küçük şeyle başlamayalım.. dairenin alanını hesaplatalım…

Var
g:integer;
Begin
Write(‘yarı çapı giriniz: ‘);readln(g);
Write(‘dairenin alanı: ’,(g*g)*3);readln;
End.

Bu programda ilk olarak “g” die bi değişten tanımladık “var” diyerek. Sonra programı başlattık “begin” ile ve yarı çapı giriniz yazdı ekranda bizde kaç istiosak onu girdik… ve ekranda dairenin alanı yazdı girdiğimiz değerlere göre… sayısal bi ifade kullanıcağımız için de değişken tipini integer dedik..

“Write” komutu ile yazıyı ekrana yazdıktan sonra imleç orda bekler ama “writeln” komutunda imleç aşağıya iner aynı olay “read” ve “readln”’ de de vardır… read vea readln komutu ile bi deişkene klavyeden girilen değer atanır..bunlar aklımızda kalsın

Şimdi size birazcık gotoxy(a,b) komutundan bahsedeyim bu komutla imlecin ekranda nereye geliceğini belirleriz.. satır ve sütun olarak tabi

a parametresi satırı b parametresi de sütunu temsil eder.

yine ufak bi program yazalım ….

Uses crt;
Var
a,b,c:integer;
ort1:real;
Begin
Write(‘programlam 1. yazılısını giriniz: ‘);readln(a);
Write(‘programlam 2. yazılısını giriniz: ‘);readln(b);
Write(‘programlam 3. yazılısını giriniz: ‘);readln(c);
Ort1:=(a+b+c)/3;
Clrscr;
Gotoxy(5,3);write(‘dersin adı : ‘);
Gotoxy(5,4);write(‘programlama : ‘);
Gotoxy(35,3);write(‘ortalama: ‘);
Gotoxy(37,5);write(ort1:1:0);
Readln;
End.

“Uses crt” yazarak “crt” kütüphanesini çağırdık. kütüphanelerde belirli fonksiyonlar tanımlı ve kısa olarak bazı kod kalabalığından kurtulmamızı sağlıyo örnek olarak “clrscr” komutunu kullandım ve ekrandaki her şeyi sildim..

bide burada “ort1” değişkeninde real tipi kullanmamızın nedeni hesaplağımız sayı devirli olabilir die bunu unutmayın…eğer integer tipi verseydik program hata vericekti “real” tipi en büyük sayı değişkeni bu arada aklınıza gelebilecek bütün sayıları kapsar..

Şimdi de biraz sorgulamalardan bahsedeyim ilk olarak IF bloğu ;

İf (mantıksal birim) then
Begin
.
.
end.
else

Olarak kullanılan bi bloktur. Eğer if-then arasına  yazıcağımız olay gerçekleşmiş veya true ise if bloğu çalışır eğer false  ise çalışmaz ve if bloğunun altındaki kod vea kod bloğu(begin-end)  çalıştırılmaz… mesela 5 lik not sistemini ele alalım 3 tane yazılı  okutup ortalamasını alalım ve hangi nota karşılık gelio onu bulduralım…
Uses crt;
Var
a,b,c:integer;
ort1:real;
begin
clrscr;
write(‘1. yazılı : ‘);readln(a);
write(‘2. yazılı : ‘);readln(b);
write(‘3. yazılı : ‘);readln(c);
ort1:=(a+b+c)/3;
if ort1<25 then
writeln(‘0’);
if ort1<45 then
writeln(‘1’);
if ort1<55 then
writeln(‘2’);
if ort1<70 then
writeln(‘3’);
if ort1<85 then
writeln(‘4’);
else
writeln(‘5’);
readln;end.

Evet şimdi programda bu gibi kodlar yazdık bunlar ne işe yarıyor. Hatırladğımz gibi ort değişkeninde notların ortalamasını almıştık ve bu blok içerinde de  “if ort1<25 then “ eğer “ort1” 25 den küçük ise ekrana sıfır yazdırdık “writeln(‘0’)”…

2. olarak CASE bloğu..: case bloğunda da case e gelen değer içinde tanıtmış olduğumuz birimlerle karşılaştırılır ve hangi birime karşılık geliyorsa o birimdeki kodlar çalıştırılır. Yine bi örnekle anlatalım… 100’lük not sistem yapalım ve girdiğimiz sayıya karşılık gelen notu bulduralım

var
e:string;
begin
write(‘notu girin: ‘);readln(e);
case e of
0..24:writeln(‘0’);
24..44: writeln(‘1’);
45..54: writeln(‘2’);
55..69: writeln(‘3’);
70..84: writeln(‘4’);
85..100: writeln(‘5’);
else
writeln(‘tanımsız..’);
end;
readln;
end.

Case bloğununda ayrıca bi end i olduğu için o bloğuda kapatmak zorundayız. 85..100 demek 85 ile 100 arasındaki sayıları kapsar anlamına gelir..

Şimdi bi vize final programı yazalım ve burada bir iki konuya daha değinmek istiyorum..

var
v,f,vize,final,ort:real;
begin
write(‘ilk vize notunu girip entere basın sonra final notunu girip entere basın..’);readln(v,f);
vize:=(v/100)*40;
final:=(v/100)*60;
if f<50 then
writeln(‘kaldınız…’);
elsebegin
ort:=vize+final;
if ort>49 then
writeln(‘geçtin’);
else
writeln(‘kaldın.’);
end;
readln;
end.

bu programda da iç içe if sorgulamasını kullanabileceğimizi ve ancak bunu yine bir begin-end açarak yapabileceğimizi gördük…

 

Reklamlar
  1. Henüz yorum yapılmamış.
  1. No trackbacks yet.

Bir Cevap Yazın

Aşağıya bilgilerinizi girin veya oturum açmak için bir simgeye tıklayın:

WordPress.com Logosu

WordPress.com hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap / Değiştir )

Twitter resmi

Twitter hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap / Değiştir )

Facebook fotoğrafı

Facebook hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap / Değiştir )

Google+ fotoğrafı

Google+ hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap / Değiştir )

Connecting to %s

%d blogcu bunu beğendi: