1

Konu: MOD(-1,9) == ?

Merhaba!

Benim bildiğim:
MOD(-1,9) == -1

Vfp'ya göre:
MOD(-1,9) == 8

C'de ve php'de test ettim: sonuç -1

Göremediğim, bilmediğim birşeymi var burda?

Bir projenin bitmesi için 3 seçenek vardır: hızlı, ucuz, iyi. Bu seçeneklerden iki tanesini seçiniz.

2

Re: MOD(-1,9) == ?

Excel bu konuda şöyle diyor:
MOD(n, d) = n - d*INT(n/d)
ve sonuç VFP'deki gibi 8 çıkıyor.

3

Re: MOD(-1,9) == ?

Bu formülü Vfp'ya komut penceresine girince bende sadece bir boş satır atlıyor,
Verdiğin formül ile C'de hesaplatırdım, ve orda tekrar -1 çıktı.

C#
void test(void)

{ volatile static int n, d, x;
 
  x = 0;
  n = -1;
  d = 9;
  x = n - d * (n/d);
  printf("%d", x);
  getchar(); 
}
Bir projenin bitmesi için 3 seçenek vardır: hızlı, ucuz, iyi. Bu seçeneklerden iki tanesini seçiniz.

4

Re: MOD(-1,9) == ?

Haklısın Üstad.
Negatif sayıların mod hesaplamasındaki farklılıklara aşağıdaki linklerde de değinmişler.
http://thedailyreviewer.com/office/view … -115181335
http://support.microsoft.com/kb/141178

5

Re: MOD(-1,9) == ?

VFP kendi tanimina ters dusuyor ama belki de kendi tanimini yanlis yapmis demek daha dogru. O formule gore VFP'de -1 cikiyor. Matematikcilere gore de olaya nasil baktigina bagli imis:

http://mathforum.org/library/drmath/view/52343.html

Iki cevap da dogru yani:) Olayin ozunde 'remainder' icin "integer division" isleminde sonucu nasil belirledigin yatiyor:
Excel ve VFP'ye gore -1/9 = -1 : -ceiling(1/9)
C'ye gore: -1/9 = 0

Operator sirasi Excel ve VFP'de once division sonra unary oluyor. Ozetle kullandigin hesaplayiciya guvenme, onun tanimina gore ne sitiyorsan oyle yap demisler.

6

Re: MOD(-1,9) == ?

Linkler için teşekkürler.

Bir projenin bitmesi için 3 seçenek vardır: hızlı, ucuz, iyi. Bu seçeneklerden iki tanesini seçiniz.

7

Re: MOD(-1,9) == ?

Sevgili Arkadaşlar,
İşlemleri tek tek yaparsaniz sonucun -1 olması gerektiği görülüyor.
Şöyleki:
int(-1/9) = 0
9*int(-1/9) = 0
-1-0 = -1

Sevgilerimle.
Erdal

8

Re: MOD(-1,9) == ?

laf olsun diye birde linux shell'de bu komutu verdim:

SQL
echo $(( -1 % 9))

sonuç -1.
Sanırım bu sorun sadece Microsoft'un kendi ürünlerinde ortaya çıkıyor.
C# 'ı bilgisayarımdan sildiğim için, orda test edemiyorum.  Çetin Bey, müsait bir vaktinizde orda denermisiniz?

Bir projenin bitmesi için 3 seçenek vardır: hızlı, ucuz, iyi. Bu seçeneklerden iki tanesini seçiniz.

9

Re: MOD(-1,9) == ?

C#'ta -1.

Not: Eger istersen 2-3 Mb boyutunda LinqPad'i indir. Kurman filan da gerekmiyor. Onunla interaktif C#,VB, F#, SQL ve ESQL kullanabilirsin. www.linqpad.net

10

Re: MOD(-1,9) == ?

Test için teşekkür ederim.

LinqPad'a gelince; daha evvelki konularda belirtiğim gibi: Vfp ve WinXP benim kullandığım son Microsoft'a ait  ürünler.  Ve anlaşılan bu LinqPad tamamen MS'in ürünleri için geliştirilmiş bir araç. Bu nedenle LinqPad'i kullanmak için altyapım yok.

Bir projenin bitmesi için 3 seçenek vardır: hızlı, ucuz, iyi. Bu seçeneklerden iki tanesini seçiniz.

11

Re: MOD(-1,9) == ?

Mehmet abi, çizgiyi çok keskin çizdin smile

Uğur
-------------------------------------------------------------------------------------------------------------
Hayat bir bisiklete binmek gibidir. Pedalı çevirmeye devam ettiğiniz sürece düşmezsiniz. Claude Peppeer
Kusuru söylenmeyen adam, ayıbını hüner sanır.  Türk Atasözü