Merhaba arkadaşlar
Belki Mustafa Hocam anımsar;
benim qbasic kodlarını pascal
kodlarına dönüştüren(en azından bir miktar)
proje çalışmam vardı.
E biraz Pascal çalıştık, ama sabır da tükendi..
Şöyle bir function yazdım:
function degistir(var x,y:string):string;
var
depo:string;
begin
depo:=x;
x:=y;
y:=depo;
result:=y; //galiba burada bir sorun var
end;
procedure TForm1.Button1Click(Sender: TObject);
var
a,b:string;
begin
a:='input';
b:='read'; //
memo1.lines.Text:=degistir(a,b);
end;
end.
Ufak bir yardım olmaz biliyorum ama
en azından bu fonksiyondaki hata nedir
ya da bu program için başka bir yöntem var mı? Yardım ve ipucu verirseniz, hatta tamamlarsanız (Bu kadar da fazla olur tabi)
sevinirim. Bitince zaten burada sizlerle paylaşacağım. Söz
Gidiş Yolu Doğru mu?
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
Gidiş Yolu Doğru mu?
Bilgi çoğaldıkça krallar ölür
yok lazio hocam olmadı. Yukarıdaki koddan bişey çıkmadı :
ancak şu kod:
Function Degistir(Memo:TMemo;eski,Yeni:String):Integer;
Var
t:String;
i,a,b,c:Integer;
begin
c:=0;
a:=Length(eski);
For i:=0 to Memo.Lines.Count-1 do
Begin
t:=Memo.Lines.Strings;
b:=Pos(eski,t);
If b<>0 Then
Begin
Memo.Lines.Strings:=Copy(t,1,b-1)+Yeni+Copy(t,a+b,Length(t)-(a+b-1));
Inc(c);
End;
End;
Degistir:=c;
End;
procedure TForm1.Button1Click(Sender: TObject);
begin
Degistir(Memo1,'input','read?');
degistir(memo1,'print','write');
end;
//Sorun ne?
// aramayı tüm metin boyunca yapacak bir döngü yazmalı
// büyük küçük harf ayrımını yapmadan değiştirmeli
// sadece verilen kelimeyi değiştirmeli
// diyelim sinput yazdığımda read olarak değiştirmemeli..
Acaba bu yöntem doğru bir yöntem değil mi?
//
ancak şu kod:
Function Degistir(Memo:TMemo;eski,Yeni:String):Integer;
Var
t:String;
i,a,b,c:Integer;
begin
c:=0;
a:=Length(eski);
For i:=0 to Memo.Lines.Count-1 do
Begin
t:=Memo.Lines.Strings;
b:=Pos(eski,t);
If b<>0 Then
Begin
Memo.Lines.Strings:=Copy(t,1,b-1)+Yeni+Copy(t,a+b,Length(t)-(a+b-1));
Inc(c);
End;
End;
Degistir:=c;
End;
procedure TForm1.Button1Click(Sender: TObject);
begin
Degistir(Memo1,'input','read?');
degistir(memo1,'print','write');
end;
//Sorun ne?
// aramayı tüm metin boyunca yapacak bir döngü yazmalı
// büyük küçük harf ayrımını yapmadan değiştirmeli
// sadece verilen kelimeyi değiştirmeli
// diyelim sinput yazdığımda read olarak değiştirmemeli..
Acaba bu yöntem doğru bir yöntem değil mi?
//
Bilgi çoğaldıkça krallar ölür
bir şey sormak istiyorum. şimdi olayı bir nebze kafamda canlandırdım. iyi bir uğraş verilirse kelime kelime çeviri yapılabilir belki.
ama sonuç olarak döngü ve karar yapılarına geldiğinizde çakılıp kalma ihtimaliniz var gibime geliyor. çünkü herkes bu kodları çok farklı şekillerde yazıyor. en ufak bir standarda sahip değiller. bu aşama için bir fikir geliştirdiniz mi?
ama sonuç olarak döngü ve karar yapılarına geldiğinizde çakılıp kalma ihtimaliniz var gibime geliyor. çünkü herkes bu kodları çok farklı şekillerde yazıyor. en ufak bir standarda sahip değiller. bu aşama için bir fikir geliştirdiniz mi?
Y.S.K.
Yazılım Sistemleri
Yazılım Sistemleri
Function Degistir(VAR Memo:TMemo;eski,Yeni:String):Integer;
function içerisinden dışarıya değer çıkartabilmek için var tanımlanmalı, Ancak sendeki sorun bu değildir, çünkü class gönderilirse bu pointer olarak gönderildiğinden bir sorun çıkmaz.
Diğer taraftan help içinde detaylı bilgi var. Deleteve Insert Bunlar stringler üzerinde işlem için bunları kullan.
Birde Strings üzerinde değilde başka bir variable üzerinde işlem yapıp en son Strings e atama yap
Kolay gele
function içerisinden dışarıya değer çıkartabilmek için var tanımlanmalı, Ancak sendeki sorun bu değildir, çünkü class gönderilirse bu pointer olarak gönderildiğinden bir sorun çıkmaz.
Diğer taraftan help içinde detaylı bilgi var. Deleteve Insert Bunlar stringler üzerinde işlem için bunları kullan.
Birde Strings üzerinde değilde başka bir variable üzerinde işlem yapıp en son Strings e atama yap
Kolay gele
ZAGOR TENAY TÜRK'tür... TÜRK kalacak...
Zoru başarırım, İmkansız zaman alır
FreeMan 35.5
Soru sormaya üşenmiyorsan, sorunun çözümünü yazmaya da üşenme !!!
Zoru başarırım, İmkansız zaman alır
FreeMan 35.5
Soru sormaya üşenmiyorsan, sorunun çözümünü yazmaya da üşenme !!!
Değerli görüşleri için arkadaşlara teşekkür ederim.
Aslında bu program içerisinde kullanmayı düşündüğüm bir çok hazır fonksiyon var ama bu fonksiyonların aynı anda çalışmasını nasıl sağlayabilirim?
yani diyelim benim
print"beşiktaş" olan bir basic kodum var bunu:
write('beşiktaş'); şeklinde yazmam için
tüm " karakterlerini ' yapmam gerekli. Bunun için malumunuz olmak üzere; karakterleri değiştiren ya da silen fonksiyonlar var..
Aslında bu program içerisinde kullanmayı düşündüğüm bir çok hazır fonksiyon var ama bu fonksiyonların aynı anda çalışmasını nasıl sağlayabilirim?
yani diyelim benim
print"beşiktaş" olan bir basic kodum var bunu:
write('beşiktaş'); şeklinde yazmam için
tüm " karakterlerini ' yapmam gerekli. Bunun için malumunuz olmak üzere; karakterleri değiştiren ya da silen fonksiyonlar var..
Bilgi çoğaldıkça krallar ölür
Tüm Komutları tek tek kontrol etmen gerekecek, Bunu yaparken şunları unutma yanlız, mesala print" yerine print " yazılmış olabilir bunların kontrolüde olmalı, bunu yapabilmenin yolu print arattıracaksın daha sonrada " bulana kadar devam edeceksin tabi alttaki satırdada olabilir. bu QBasic gibi editor kullanan basicler için geçerli
bir diğer konuda bazı basic komutlarını direk çeviremezsin parametreleri falan farklıdır
Kolay gele
bir diğer konuda bazı basic komutlarını direk çeviremezsin parametreleri falan farklıdır
Kolay gele
ZAGOR TENAY TÜRK'tür... TÜRK kalacak...
Zoru başarırım, İmkansız zaman alır
FreeMan 35.5
Soru sormaya üşenmiyorsan, sorunun çözümünü yazmaya da üşenme !!!
Zoru başarırım, İmkansız zaman alır
FreeMan 35.5
Soru sormaya üşenmiyorsan, sorunun çözümünü yazmaya da üşenme !!!