Incompatible Types: 'Integer' and 'Extended' hatası..çözüldü

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
Kullanıcı avatarı
comlekciler
Üye
Mesajlar: 58
Kayıt: 17 Nis 2006 12:35

Incompatible Types: 'Integer' and 'Extended' hatası..çözüldü

Mesaj gönderen comlekciler »

Selam arkadaşlar,

Bir fonksiyon yazdım ama sürekli "Incompatible Types: 'Integer' and 'Extended' hatası..." hatası veriyor. Ne yaptıysam olmuyor.

Fonksiyon doğru denklemini hesaplayıp sonucu gönderecek;

Kod: Tümünü seç

function ara_sinav_orta_uyelik_fonksiyonu_bolge2(araSinav, ortalamaSinavlar, enIyiNot:Integer):Integer;
var x,x1,x2,y,y1,y2,ortalamaSinav:Integer;
begin

 ortalamaSinav:=(enIyiNot + ortalamaSinavlar) / 2 ; //Hatayı Verdiği Satır

 x:=araSinav;
 x1:=ortalamaSinavlar;
 x2:=ortalamaSinav;
 y1:=1;
 y2:=0;

 y:=(((y2-y1) / (x2-x1)) * (x-x2))+ y2; //Hatayı Verdiği Satır

 Result:=y;
end;


Kullanım şekli ise;

Kod: Tümünü seç

Edit7.Text:=IntToStr(ara_sinav_orta_uyelik_fonksiyonu_bolge2(StrToInt(Edit1.Text),StrToInt(Edit3.Text),StrToInt(Edit4.Text)));
Her yerde INTEGER yapmama ragmen neden böyle bir hata veriyor. :roll:

Yardımlarınızı bekliyorum. Teşekkürler.
En son comlekciler tarafından 07 Eki 2006 09:27 tarihinde düzenlendi, toplamda 1 kere düzenlendi.
"Bilgisizlerin geçtikleri mevkiye yaptığı fenalığı, yüzlerce aslan bir araya gelse yapamaz" MEVLANA
Kullanıcı avatarı
undefined
Moderator
Mesajlar: 565
Kayıt: 06 Eki 2003 12:01
Konum: Bursa
İletişim:

Mesaj gönderen undefined »

"/" operatörü reel sayı döndürür. Değişkenlerinizi buna göre ayarlayın.
fduman
Moderator
Mesajlar: 2749
Kayıt: 17 Ara 2004 12:02
Konum: Ankara

Mesaj gönderen fduman »

/ yerine div kullanın.
Kullanıcı avatarı
comlekciler
Üye
Mesajlar: 58
Kayıt: 17 Nis 2006 12:35

Mesaj gönderen comlekciler »

@undefined teşekkürler, şimdi sorunu düzelttim.

Doğru fonksiyon;

Kod: Tümünü seç

function ara_sinav_orta_uyelik_fonksiyonu_bolge2(araSinav, ortalamaSinavlar, enIyiNot:Integer):Real;
var x,x1,y1,y2:Integer;
    y,x2,ortalamaSinav:Real;
begin

 ortalamaSinav:=(enIyiNot + ortalamaSinavlar) / 2 ;

 x:=araSinav;
 x1:=0;
 x2:=ortalamaSinavlar;
 y1:=1;
 y2:=0;

 y:=(((y2-y1) / (x2-x1)) * (x-x2))+ y2;

 Result:=y;
end;
@fduman sana teşekkür ederim ama bana virgülden sonraki asıl kısımlar gerekiyor.

Tekrar herkese teşekkürler.

Kolay gelsin.
"Bilgisizlerin geçtikleri mevkiye yaptığı fenalığı, yüzlerce aslan bir araya gelse yapamaz" MEVLANA
Cevapla