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

  • Google Chrome

    Google Chrom

    1 EYLÜL 2008
  • max2sims2

    max2sims2

    19 Kasım 2008
  • Ricardo Cerqueira

    Ricardo Cerq

    28 Mayıs 2008