Massivdagi eng katta yoki eng kichik qiymatni topish dasturlashda juda keng tarqalgan vazifadir. Bugungi kunda Internetga nisbatan eng keng tarqalgan dasturlash tillari server tomonidagi PHP tili va mijoz tomoni JavaScript tili bo'lgani uchun quyida ushbu tillar uchun ushbu muammoni hal qilishning bir nechta variantlari keltirilgan.
Ko'rsatmalar
1-qadam
Har bir keyingi qiymatini oldingisi bilan taqqoslab va alohida o'zgaruvchidagi maksimal qiymatni eslab, massivning barcha elementlari bo'yicha takrorlashni tashkil qiling. PHP-da tegishli kod bloki ko'rinishi mumkin, masalan, masalan, avval qatorni aniqlang: $ values = array (14, 25.2, 72, 60, 3); Keyin alohida o'zgaruvchini qiymatini tayinlang birinchi element - iteratsiya boshlanishidan oldin u maksimal hisoblanadi: $ maxValue = $ qiymatlari [0]; ilgari saqlangan qiymatni joriy bilan taqqoslagan holda tsikl tashkil qiling. Taqqoslash natijalari asosida joriy qiymatni eslang yoki o'tkazib yuboring: foreach ($ Values $ val) if ($ val> $ maxValue) $ maxValue = $ val; Aniqlangan maksimal qiymatni chop eting:
echo $ maxValue;
2-qadam
JavaScript-da, xuddi shu algoritmni, masalan, quyidagi kod bilan amalga oshirish mumkin:
var qiymatlari = [14, 25.2, 72, 60, 3];
var maxValue = qiymatlar [0]
uchun (var i = 1; i <= qiymatlar. uzunlik-1; i ++) {
agar (qiymatlar > maxValue) maxValue = qiymatlar ;
}
ogohlantirish (maxValue);
3-qadam
Biroq, tekshirishni o'zingiz tashkil qilishning hojati yo'q, chunki aksariyat dasturlash tillari siz uchun buni bajaradigan ichki funktsiyalarga ega. Masalan, PHP-da rsort saralash funktsiyasini kamayish tartibida ishlatishingiz mumkin. Birinchi qadamda ishlatilgan qator uchun mos keladigan kod quyidagicha ko'rinishi mumkin: <? Php
$ qiymatlari = qator (14, 25.2, 72, 60, 3);
rsort ($ qiymatlari);
echo $ qiymatlari [0];
?>
4-qadam
JavaScript uchun eng oson yo'li - bu boshqa usul - applay yordamida unga argument sifatida qator berib, Math ob'ekti max usulidan foydalanish. Masalan, quyidagi kod bilan: var values = [14, 25.2, 72, 60, 3];
ogohlantirish (Math.max.apply ({}, qiymatlar))