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

  • brokenbellsVEVO

    brokenbellsV

    11 EYLÜL 2009
  • Jon Reed

    Jon Reed

    14 AĞUSTOS 2006
  • NewsyTech

    NewsyTech

    2 AĞUSTOS 2010