July 25, 2012

Alıntı (huseyin325325):

>

Hmm forum daki konulara hakim değilim malum büyük bir forumuz :)

Doğrusu, ben de değilim. Bazen kendi yazdığım ama hiç hatırlamadığım şeylere rastlıyorum. :)

Bu konuyu iyi hatırlıyorum çünkü bağlantısını verdiğim bölümde debug'ın ve version'ın else ile de kullanılabildiklerini gösteren hiç bilgi yok. :/

Ali

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]

July 25, 2012

ctypes? ctype.h başlığına yakın olarak std.stdint ve std.traits modülleri ve __traits olanağı var:

http://dlang.org/phobos/std_stdint.html

http://ddili.org/ders/d/tur_nitelikleri.html

Ali

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]

July 25, 2012

Alıntı (huseyin325325):

>

main.d(324): Error: function main.Error conflicts with enum main.Error at main.d(7)

Bunun anlamı nedir ben anlamadım

7 numaralı satırdaki Error isimli işlev 324 numaralı satırdaki Error isimli enum ile çakışıyor.

Ali

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]

July 25, 2012

Emekliye ayrılmış. Yerine std.ascii gelmiş:

http://dlang.org/phobos/std_ctype.html

Bu arada, lütfen yanlış anlama ama bu bilgiyi dlang.org'da sağdaki arama kutusuna std.ctype yazarak buldum. :)

Ali

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]

July 26, 2012

Alıntı (huseyin325325):

>

Evet dlang.org ve gecenin son sorusu :D

Hani c++ da int main(int argc, char *argv[]) bole yazılıyor ya D de string[] kullanılıyor bunun arg sayısını nasıl alacaz length kullanarak mı ?

Gerçi Erdem cevap yazmış ama o bir string örneği. Eğer parametrelerde sayı kullanmak istersen yazdığım 'str2num()' işlevini (-bknz. aşağıdaki örnek) kullanabilirsin. Belki D'de std.conv içinde başka çözümü de olabilir; bilemiyorum ama benim hep kullandığım basit ve etkili bir çözüm. Başarılar dilerim...

import std.stdio;

int str2num (string args) {
   int n, magicNum = 48;
   foreach(a, arg; args) {
       n += (cast(int) arg - magicNum) * 10^^(args.length-a-1);
   }
   return n;
}
bool isPrime(uint p) {
   if(p < 2) return false;
   if(p != 2 && p % 2 == 0) return false;
       for(uint n = 3; n * n <= p; n += 2) {
           if(p % n == 0) return false;
   }
   return true;
}

void main(string[] param) {
   foreach (p; param[1 .. param.length]) {
       p.write(" is ");
       if(!isPrime(str2num(p))) write("not ");
       writeln("prime!");
   }
}/* dmd isprime.d -release ile derledikten sonra,
/isprime 2 3 4 5 4294967279
gibi denenirse toplam 5 sayının asallık testi yapılır biri için false döner...
*/

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]

July 26, 2012

Çok teşekkür ederim bunu da dosyalarıma ekleyeyim eninde sonunda lazım oluyor
Ama anlamadığım niye D de main string[] almak zorunda

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]

July 26, 2012

Cevabı önceki sayfadaki kod üzerinde ve deneyip görmen üzere aşağıda veriyorum...:)

import std.string;

void main(string[] param) {
   assert(isNumeric(param[0]) == false); //<--- el-cevap...:)
   foreach (p; param[1 .. param.length]) {
       p.write(" is ");
       if(!isPrime(str2num(p))) write("not ");
       writeln("prime!");
   }
}

Ama açıklamasını da yapmalıyım; dosya isimleri her zaman dizge (string) olacağından bu parametrenin türü de böyle olmak zorunda.

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]

1 2
Next ›   Last »