⊗ppSpOtLO 74 of 83 menu

PHP-də tsiklik əməliyyatların optimallaşdırılması

Hətta yüngül bir əməliyyat belə, tsikldə çoxsaylı təkrarlandıqda, çoxlu resurs sərf edə bilər.

Gəlin bir nümunəyə baxaq. Tutaq ki, bizə müəyyən bir massiv verilib:

<?php $arr = [1, 2, 3, 4, 5, 6, 7, 8, 9]; ?>

Gəlin bu massivin elementlərinin ortasını tapaq. Bunun üçün elementlərin cəmini tapıb onu sayına bölmək lazımdır. Tutaq ki, müəyyən bir proqramçı bu problemi artıq aşağıdakı kimi həll edib:

<?php $sum = 0; foreach ($arr as $elem) { $sum += $elem / count($arr); } echo $sum; ?>

Gəlin belə bir həllin problemlərini nəzərdən keçirək. Texniki cəhətdən kod düzgün işləyir və düzgün cavab verir. Məsələ ondadır ki, riyazi cəhətdən həm bütün cəmi sayına bölmək, həm də hər bir toplananı sayına bölmək düzgündür.

Ancaq başqa bir problem yaranır. Məsələ ondadır ki, biz bölmə əməliyyatını massivdəki elementlər qədər dəfə yerinə yetirəcəyik. Və belə çıxır ki, biz çoxsaylı artıq əməliyyatlar edirik, çünki bölməni sona saxlayıb - bir dəfə, tapılmış bütün cəmi bölmək olardı.

Gəlin kodumuzu optimallaşdıraq:

<?php $sum = 0; foreach ($arr as $elem) { $sum += $elem; } echo $sum / count($arr); ?>

Aşağıda verilmiş kodu optimallaşdırın:

<?php for ($i = 1; $i <= 31; $i++) { if ($i === date('d')) { echo "<b>$i</b><br>"; } if ($i !== date('d')) { echo "$i<br>"; } } ?>
Azərbaycan
AfrikaansБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Biz saytin işi, analitika və fərdiləşdirmə üçün cookie istifadə edirik. Məlumatların emalı Məxfilik Siyasəti əsasında həyata keçirilir.
hamısını qəbul et konfiqurasiya et rədd et