SORU
21 NİSAN 2010, ÇARŞAMBA


nasıl max/min değer bir şamandıra başlatmak mı?

Ne kadar zor ya da çift şamandıra için mutlak maksimum veya minimum bir değer kodu? Sadece yineleme ve en büyük alıcı tarafından bir dizi max/min dışarı arama yapmak istiyorum.

Aynı zamanda pozitif ve negatif sonsuzluk için kayanlar var, bunları yerine kullanmalıyım? Eğer öyleyse, nasıl benim kod geçebilir miyim?

CEVAP
21 NİSAN 2010, ÇARŞAMBA


<limits> türleri en küçük veya en büyük değeri bulmak için tanımlanan std::numeric_limits (bir uzmanlık türü var olduğu sürece) kullanabilirsiniz. Ayrıca sonsuz (ve negatif sonsuzluk için ön - a) almak için kullanabilirsiniz.

#include <limits>

//...

std::numeric_limits<float>::max();
std::numeric_limits<float>::min();
std::numeric_limits<float>::infinity();

Gibi yorumlarda belirtildiği, min() mümkün olan en düşük pozitif değer döndürür. Diğer bir deyişle pozitif değeri 0'a yakın olduğunu temsil edilebilir. Mümkün olan en düşük değeri mümkün olan en yüksek değeri negatif olur.

Tabii ki dizideki en büyük veya en küçük değeri bulmak için daha iyi bir seçim olabilir std::max_element ve min_element işlevleri (<algorithm> tanımlı) var.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Art Food Kitty - Kelly Eddington

    Art Food Kit

    7 Kasım 2006
  • Charles Griffin Gibson

    Charles Grif

    26 NİSAN 2006
  • RocketJump

    RocketJump

    22 ŞUBAT 2006