Liput PHP-funktioissa

Funktioissa voidaan käyttää lippuja epäsuorasti return-käskyn avulla. Katsotaan kuinka tämä tehdään. Oletetaan, että meillä on seuraava funktio, joka tarkistaa, ovatko kaikki taulukon alkiot positiivisia lukuja:

php<?php
  function isPositive($arr) {
    $flag = true;
    
    foreach ($arr as $elem) {
      if ($elem < 0) {
        $flag = false;
      }
    }
    
    return $flag;
  }
?>

Kirjoitetaan funktion koodi uudelleen käyttämällä lippuja epäsuorasti:

php<?php
  function isPositive($arr) {
    foreach ($arr as $elem) {
      if ($elem < 0) {
        return false;
      }
    }
    
    return true;
  }
?>

Miten tämä toimii: jos taulukosta löytyy haluttu alkio - poistumme funktiosta (samalla myös silmukasta) return-käskyn avulla. Mutta jos taulukosta ei löydy haluttua alkiota - funktiosta ei poistuta ja suoritus pääsee return true-käskylle. Ja käy niin, että funktio palauttaa true merkkinä siitä, että kaikki taulukon alkiot ovat positiivisia.

Задание 1

Tee funktio, joka parametrina vastaanottaa taulukon numeroita, ja tarkistaa, että kaikki tämän taulukon alkiot ovat parillisia numeroita.

Задание 2

Tee funktio, joka parametrina vastaanottaa luvun ja tarkistaa, että kaikki luvun numerot ovat parittomia.

Задание 3

Tee funktio, joka parametrina vastaanottaa taulukon ja tarkistaa, onko tässä taulukossa kaksi samanlaista alkiota peräkkäin.