(2*3) değerini nasıL hesaplatıcam.. :oops: :)
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
(2*3) değerini nasıL hesaplatıcam.. :oops: :)
Başlığı okuyan arkadaşlar biraz şaşırmışlardır heralde..
Sorunum şu:
Elimizde, [ 2*x+5*x/3-x+1] gibi herhangi bir 'x' e bağlı fonksiyon var. Editimizin içeriği bu.
Ben editin içindeki x'i bulup yerine istediğim bir sayı yazdırıyorum, mesela '3'..
fonksiyonumuz: [2*3+5*3/3-3+1] oluyor. yalnız ben bu değeri hesaplatmak istiyorum. Gariptir, ne floata ne stringe nede integere cevirirsem ceviriyim editin içeriğini 9'a eşitliyemiyorum.. Ne yapmam lazım.. ?
Yardımlarınızı bekliyorum..
Sorunum şu:
Elimizde, [ 2*x+5*x/3-x+1] gibi herhangi bir 'x' e bağlı fonksiyon var. Editimizin içeriği bu.
Ben editin içindeki x'i bulup yerine istediğim bir sayı yazdırıyorum, mesela '3'..
fonksiyonumuz: [2*3+5*3/3-3+1] oluyor. yalnız ben bu değeri hesaplatmak istiyorum. Gariptir, ne floata ne stringe nede integere cevirirsem ceviriyim editin içeriğini 9'a eşitliyemiyorum.. Ne yapmam lazım.. ?
Yardımlarınızı bekliyorum..
Batuhan TAŞDÖVEN
'Yükseldikçe küçülen bir uçurtma..'
'Yükseldikçe küçülen bir uçurtma..'
Re: (2*3) değerini nasıL hesaplatıcam.. :oops: :)
Değişken olarak variant a çevirmeniz lazım
UWESIS CORPORATION
Re: (2*3) değerini nasıL hesaplatıcam.. :oops: :)
s.a.
çevirme işlemini nasıl yapıyorsunuz.
editin içindeki metni parse edip sonucu sizin hesaplamanız lazım.
kolay gelsin.
çevirme işlemini nasıl yapıyorsunuz.
editin içindeki metni parse edip sonucu sizin hesaplamanız lazım.
kolay gelsin.
Duyduğun Şeylerin Söylediklerim Olduğuna Eminim Ama
Anladığın Şeylerin Anlatmak İstediklerim Olduğuna Emin Değilim
Anladığın Şeylerin Anlatmak İstediklerim Olduğuna Emin Değilim
Re: (2*3) değerini nasıL hesaplatıcam.. :oops: :)
bi de işlem önceliği var. mümkünse parantez kullanılmalı, yoksa alınan sonuç beklenenle aynı olmayabilir
bazen yükselmek için önce dibi görmek gerekir...
forumda soru sormadan önce bakılmalı bence
daha fazlası için...
yürümeyi öğrenmeden koşmaya çalışanlar için, tökezleyip düşmek kaçınılmazdır...
forumda soru sormadan önce bakılmalı bence
daha fazlası için...
yürümeyi öğrenmeden koşmaya çalışanlar için, tökezleyip düşmek kaçınılmazdır...
Re: (2*3) değerini nasıL hesaplatıcam.. :oops: :)
Kod: Tümünü seç
function trgn_ata(icerik:string;deger:integer):string;
var
a:array[1..100] of string;
i:integer;
begin
for i:=1 to length(icerik) do
a[i]:=copy(icerik,i,1);
for i:=1 to length(icerik) do
begin
if a[i]='x' then
begin
insert(inttostr(deger),icerik,i);
delete(icerik,i+1,1);
end;
end;
result:=icerik;
end;
Parantezlere ben değil, kullanıcı dikkat edecek..
Saygılar..
Batuhan TAŞDÖVEN
'Yükseldikçe küçülen bir uçurtma..'
'Yükseldikçe küçülen bir uçurtma..'
Re: (2*3) değerini nasıL hesaplatıcam.. :oops: :)
merhaba
en son yazdığın fonksiyon sadece string bir çıktı veriyor.
Sanırım string çıktı ile bir hesaplanmas gereken matematiksel bir fonksiyonun elde ediyorsun.
Bize bu fonksiyonun sonucunu elde ettiğin kısmı gönderirsen ancak o zaman yardımcı olabiliriz.
Yazdığın matematiksel fonksiyon benim hesabıma göre 9 sonucunu vermeli.
Büyük ihtimalle fonksiyon sonucunu hesaplayan kodlarında hata var.
en son yazdığın fonksiyon sadece string bir çıktı veriyor.
Sanırım string çıktı ile bir hesaplanmas gereken matematiksel bir fonksiyonun elde ediyorsun.
Bize bu fonksiyonun sonucunu elde ettiğin kısmı gönderirsen ancak o zaman yardımcı olabiliriz.
Yazdığın matematiksel fonksiyon benim hesabıma göre 9 sonucunu vermeli.
Büyük ihtimalle fonksiyon sonucunu hesaplayan kodlarında hata var.
Re: (2*3) değerini nasıL hesaplatıcam.. :oops: :)
tabiiki.. haklısınız..Kodların diğer bölümünü veriyorum..
bu şekilde yapınca değere eşitlemiyor. 2*3 olarak kalıyor sonu. sadece string olarak bırakıyor. ancak:
Buşekilde sorun çıkmıyor.. Anlıyamadım
Kod: Tümünü seç
procedure TForm1.Button1Click(Sender: TObject); //Basıldığında denklemde x yerine değerin yazılıp hesaplanması istendiğinde basılan buton
var
sayi_deger: variant;
begin
sayi_deger:=trgn_ata(edit9.text,3); //edit9, denklemin yazıldığı edit.
edit9.text:=sayi_deger;
end; //////edit9.text = 2*3
Kod: Tümünü seç
procedure TForm1.Button1Click(Sender: TObject); //Basıldığında denklemde x yerine değerin yazılıp hesaplanması istendiğinde basılan buton
var
sayi_deger: variant;
begin
sayi_deger:=2*3 //edit9, denklemin yazıldığı edit.
edit9.text:=sayi_deger;
end; //////edit9.text = 6
Batuhan TAŞDÖVEN
'Yükseldikçe küçülen bir uçurtma..'
'Yükseldikçe küçülen bir uçurtma..'
- veliadiguzel
- Üye
- Mesajlar: 197
- Kayıt: 09 Tem 2003 02:11
- Konum: Gebze/Kocaeli
- İletişim:
Re: (2*3) değerini nasıL hesaplatıcam.. :oops: :)
Sorunun cevap bir bileşen sitede de tanıtımı yapıldı dediginden daha komplike hesaplar da yapabiliyor
adı da ParseExpr içinde ornek program da var internette arattır bulamazsan
adı da ParseExpr içinde ornek program da var internette arattır bulamazsan
Veli ADIGÜZEL
Re: (2*3) değerini nasıL hesaplatıcam.. :oops: :)
tekrar merhaba
sizin için foruma yeni bir makale ekledim.
Ekdeki uygulamayı indirirseniz herhalde size yardımcı olur.
viewtopic.php?f=19&t=24892
sizin için foruma yeni bir makale ekledim.
Ekdeki uygulamayı indirirseniz herhalde size yardımcı olur.
viewtopic.php?f=19&t=24892
Re: (2*3) değerini nasıL hesaplatıcam.. :oops: :)
Şahsen ben böyle bir ihtiyacı en kestirmeden SQL ile hallederdim.
Basit bir SQL komutu bu işlemlerin sonucunu döndürür. Misal:
SELECT 2*3+5*3/3-3+1 AS SONUC FROM RDB$DATABASE //FireBird için sonuç 9 çıkıyor.
SELECT 2*3+5*3/3-3+1 AS SONUC // MS SQL için de sonuç 9 çıkıyor.
Ne özel bir komponent kullanmak ne de özel kod yazmak gerekir. Tabi kullanacağınız veritabanının (FireBird, MS SQL..) kurulu olması dışında.
Basit bir SQL komutu bu işlemlerin sonucunu döndürür. Misal:
SELECT 2*3+5*3/3-3+1 AS SONUC FROM RDB$DATABASE //FireBird için sonuç 9 çıkıyor.
SELECT 2*3+5*3/3-3+1 AS SONUC // MS SQL için de sonuç 9 çıkıyor.
Ne özel bir komponent kullanmak ne de özel kod yazmak gerekir. Tabi kullanacağınız veritabanının (FireBird, MS SQL..) kurulu olması dışında.
Re: (2*3) değerini nasıL hesaplatıcam.. :oops: :)
@Hakan Can
Duyduğun Şeylerin Söylediklerim Olduğuna Eminim Ama
Anladığın Şeylerin Anlatmak İstediklerim Olduğuna Emin Değilim
Anladığın Şeylerin Anlatmak İstediklerim Olduğuna Emin Değilim
- veliadiguzel
- Üye
- Mesajlar: 197
- Kayıt: 09 Tem 2003 02:11
- Konum: Gebze/Kocaeli
- İletişim:
Re: (2*3) değerini nasıL hesaplatıcam.. :oops: :)
HakanCan Tebrik ederim, iyi bir fikir. Bu işlemi mysql,msacces vb birçok sql de destekliyordur eminim.
Onun için forumda fazla kalabalık olmasın diye yazdığım makaleyi sildim.
Nasıl olsa sql kullanmadan program yazan yoktur.
Onun için forumda fazla kalabalık olmasın diye yazdığım makaleyi sildim.
Nasıl olsa sql kullanmadan program yazan yoktur.
- sabanakman
- Kıdemli Üye
- Mesajlar: 3077
- Kayıt: 17 Nis 2006 08:11
- Konum: Ah bi Antalya olaydı keşke (Ankara)
Re: (2*3) değerini nasıL hesaplatıcam.. :oops: :)
Bence böyle bir makale bence silinmemeli . Bu şekildeki bir işleme veritabanı kullanmayan projede de ihtiyaç duyulabilir. Bence makaleyi tekrar ekleyin.akdatilla yazdı:HakanCan Tebrik ederim, iyi bir fikir. Bu işlemi mysql,msacces vb birçok sql de destekliyordur eminim.
Onun için forumda fazla kalabalık olmasın diye yazdığım makaleyi sildim.
Nasıl olsa sql kullanmadan program yazan yoktur.
Şaban Şahin AKMAN
_________________
Derin olan kuyu değil kısa olan iptir. - .
_________________
Derin olan kuyu değil kısa olan iptir. - .
Re: (2*3) değerini nasıL hesaplatıcam.. :oops: :)
Merhaba.
@husonet zaten makale olarak yayınlamıştı.
viewtopic.php?f=19&t=19780
Bunu unit haline getirdim ekte yolluyorum.
Örnek uygulama..
teşekkürler @husonet
@husonet zaten makale olarak yayınlamıştı.
viewtopic.php?f=19&t=19780
Bunu unit haline getirdim ekte yolluyorum.
Örnek uygulama..
Kod: Tümünü seç
Edit2.Text := Format('%f', [ domuls(edit1.text) ]);
- Dosya ekleri
-
- MathStringParser.rar
- String içindeki matematiksel ifadeleri parse edip hesaplar ve sonucu döndürür.
- (2.36 KiB) 116 kere indirildi