Endija Lisovska pieraksti

Par Web 2.0, programmēšanu, Google, Linux, kā arī blogošanu

Uzdevumiņi PHP programmētājiem

Tā kā iepriekšējais šāda stila ieraksts neizpelnījās lielu nopēlumu, bet izraisīja pat interesi, piedāvāju nākamo uzdevumiņu porciju. Uzreiz jāsaka, ka nevajag vērtēt to cik sakarīgi vai nesakarīgi ir piemēri, bet mēģināt tos atrisināt. Jo piemēri speciāli ir sastādīti tā, lai demonstrētu valodas konstrukcijas nevis būtu ļoti noderīgi. Uzdevumu pildīšanas modelis tāds pats kā iepriekš. Sākotnēji jāapskatās uzdevumus, tos jāatrisina (vai jāmēģina vismaz) un tikai tad drīkst lasīt raksta turpinājumu. Arī šoreiz es uzreiz neizklāstīšu to kāpēc ir tā kā tas ir. Taču ja kādam ir jautājumi par kādu no uzdevumiem - droši jautājiet. Komentāros apstāstīšu kāpēc ir tā kā ir.

1) $a = 10;
$a -= 7 * 2 + 3;
echo $a;

Kas tiks izvadīts uz ekrāna (tātad kāda ir $a vērtība)?

2) $a = array();
$a[3] = ‘Pumpa’;
$a['zupa'] = ‘Biešu’;
$a[] = ‘Kaut kas’;

Kāds ir indekss $a masīva elementam ar vērtību ‘Kaut kas’ ?

3) $nevars6 = 'vars';
$a = 'nevars';
$a .= strlen($a);
$$a = $a.$nevars6;
echo $nevars6;

Kas tiks izvadīts uz ekrāna?

4) $a = 4;
function test(&$a)
{
$z = 20;
$a += $z;
return $z;
}
$b = test($a);
echo ($b+$a);

Kas tiks izvadīts uz ekrāna?

5) $a = 10;
$b = &$a;
$a *= 2;
echo ($b+$a);

Kas tiks izvadīts uz ekrāna?

6) $a = 3;
$z = 3 == $a ? ($a + 5) : ($a + 10);
echo $z;

Kas tiks izvadīts uz ekrāna?

Atbildes:
1) -7
2) 4
3) nevars6vars
4) 44
5) 40
6) 8

Padalies ar citiem:
  • Digg
  • del.icio.us
  • Google
  • Reddit
  • TwitThis
  • blogmarks
  • E-mail this story to a friend!
  • Pownce
  • Print this article!

8 komentāri ierakstam “Uzdevumiņi PHP programmētājiem”

  1. black

    Uzķēros uz otrā :)

    Kopumā piemēri gluži kā no Zend Certified Engineer mācību grāmatas. Nav slikti, bet mazuma piegarša.

  2. Endijs Lisovskis

    Otrais piemērs tieši ir no tās grāmatas :D

    Visi pārējie piemēri gan no dzīves, bet tikai pārveidoti tā, lai ir vairāk demonstrācjai nevis reāli izrāvumi.

  3. endrju

    Arī uz otrā.

  4. andrisp

    Nebūšu oriģināls - ārī uz otrā :).

  5. Didulis

    Neuzķēros ne uz vienu, tik drusku apjuku pie ceturtā un piektā - Too many variables loaded in memory. ;-D Sen neesmu ar referencēm darbojies. Bet visumā šos var dažās sekundēs izkalkulēt.

  6. Endijs Lisovskis

    Būs laikam jāuzraksta kaut ko sarežģītāku. Ar visādiem OOP izgājieniem + kādu retāk izmantotu konstrukciju. Un tad jāuzprasa kas sanāktu kā konkrētā koda izpildes rezultāts.

  7. Ingus

    Dīvainā kārtā neuzķēros ne uz viena ;)

  8. Toms

    Uzķēros uz ceturtā dēļ “return $z;”, kur izlasīju “return $a;”. Respektīvi, likās, ka atbilde = 48.

Atstājiet komentāru



Meklēšana: