Zgjedhja e algoritmit optimal në PHP

Ndonjëherë problemi i kodit mund të lidhet me faktin se është zgjedhur zgjidhja më jo optimale e problemit.

Le të themi, për shembull, që kemi përpara detyrën të gjejmë shumën e numrave të plotë nga 1 në 1000000. Le ta zgjidhim detyrën e vendosur:

php<?php
  $sum = 0;
  
  for ($i = 1; $i <= 1000000; $i++) {
    $sum += $i;
  }
  
  echo $i;
?>

Çfarë nuk shkon? Çështja është se për zgjidhjen e detyrës së vendosur ekziston një zgjidhje matematikore.

Kjo zgjidhje praktikisht nuk kërkon burime! Le ta programojmë atë:

php<?php
  $n = 1000000;
  $sum = $n * ($n + 1) / 2;
  echo $sum;
?>

Morali: para zgjidhjes së një detyre që kërkon shumë burime patjetër kontrolloni nëse ekziston një formulë e gatshme matematikore ose një qasje e gatshme matematikore për zgjidhjen e saj.

Задание 1

Gjeni numrin e numrave që pjesëtohen pa mbetje me 5, nga intervali nga 1 në 1000.

Задание 2

Gjeni numrin e shifrave që do të nevojiten, për të shkruar të gjithë numrat nga 1 në 1000000.

Задание 3

Gjeni të gjithë numrat e thjeshtë në intervalin nga 1 në 10000. Detyrë me yll, mund të mos zgjidhet.