Delphide Yazıyı Tersten Yazdırmak

28.07.2018
A+
A-
Delphide Yazıyı Tersten Yazdırmak

Delphide yazıyı tersten yazdırmak için gereken komut copy komutudur.  Bu kod string ifadeler üzerinde kullanılan  bir fonksiyon kodudur. Aşağıdaki kodlar bir butona tıklandıktan sonraya devreye girecek şekilde yazılmıştır.

Kodlar sayfanın altındadır lütfen kodları direkt olarak kopyala yapıştır yapmadan mantığını
anlamak ve öğrenmek için detaylı kod anlatımını okuyunuz 🙂

Program ve sonucun görüntüsü (programın formundaki resim ve yazılar sitemiz için hazırladığının göstergesidir.)

Program Görüntüsü

Program Görüntüsü

Türkçe karşılığını yazacak olursak sırasıyla :

Önce kendimize for döngüsünde kullanabilmek için integer bir i değişkeni oluşturduk.

Girilecek metnin uzunluğunu copy komutunda işimize yarayacağı için mtnuznlk adında bir integer değişkeni oluşturduk.

Çevireceğimiz metni bir değişkene atayıp daha sonra yazdırabilmek için ters adında bir string değişkeni oluşturduk.

mtnuznlk değişkenimize length komutunu kullanarak edit1.text in içindeki verinin karakter sayısını atadık.

ters değişkenine çevirilen metni göndereceğimiz için önce içini boşalttık.

Metnin karakter sayısından başlayan ve 1 e kadar azalan bir for döngüsü başlattık.

For döngüsünün içinde ters değişkenine döngü boyunca copy komutu yardımıyla girilen metni parçalayıp sondan başa doğru karakterleri tek tek ekledik bu cümleyi açacak olursak :

Ters :’ ‘ içi boş

Metnimiz : YAZI olsun

döngü başladığında başlangıç değerimiz 4 olacak copy komutunun yardımıyla bu bize I harfini verecek ve artık ters değişkeninin içinde I harfi var . Döngü tekrar başa dönüp bu sever değer 3 olacak ve bize Z harfini verecek tersin içindekinin üzerine ekleyerek ters değişkenin içinde bu defa IZ olacak böylece döngü bittiğinde baştan sonra harfleri yer değiştirerek yazdırmış olacağız.

Döngünün dışına da showmessage kullanarak ters değişkenini ekrana vererek kullanıcıya sonucu göstermiş oluyoruz.

Sonucu istediğiniz şekilde kullanıcıya yansıtabilir(edit,label vb.) veya istediğiniz şekilde değişkene atadığımız için kullanabilirsiniz.

procedure TForm1.Button1Click(Sender: TObject); 
var i,mtnuznlk: integer; 
ters: string; 
begin 
mtnuznlk:= length(edit1.Text);
ters:=''; 
for i := mtnuznlk downto 1 do
begin //for içinde tek satır olduğu için aslında begin ve end'e gerek yoktu fakat anlaşılabilirlik için böyle yazdık
ters:=ters+copy(edit1.Text,i,1);
end; 
showmessage(ters); 
end;

ZİYARETÇİ YORUMLARI - 0 YORUM

Henüz yorum yapılmamış.