Feilsøking i kode med betingelser i PHP
I de følgende oppgavene har en programmerer skrevet kode og muligens gjort feil i den. Du må sjekke om koden gjør det som er beskrevet. Hvis koden ikke fungerer korrekt, må du rette feilene.
Задание 1
Koden skal sjekke summen av tallene:
php<?php
$num1 = '1';
$num2 = '2';
if ($num1 + $num2 === '3') {
echo '+++'; // skal skrive ut dette
} else {
echo '---';
}
?>
Задание 2
Koden skal sjekke det første sifferet i tallet:
php<?php
$num = 123;
if ($num[0] === 1) {
echo '+++';
} else {
echo '---';
}
?>
Задание 3
Koden skal sjekke det første sifferet i tallet:
php<?php
$num = 123;
if ((string) $num[0] === 1) {
echo '+++';
} else {
echo '---';
}
?>
Задание 4
Koden skal sjekke det første sifferet i tallet:
php<?php
$num = 123;
$str = (string) $num;
if ($str[0] === 1) {
echo '+++';
} else {
echo '---';
}
Задание 5
Koden skal sjekke at tallet har nøyaktig to sifre:
php<?php
$num = 12;
if (strlen($num) === 2) {
echo '+++';
} else {
echo '---';
}
?>
Задание 6
Koden skal sjekke det første sifferet i tallet:
php<?php
$num = 123;
$str = (string) $num;
if ($num[0] === '1') {
echo '+++';
} else {
echo '---';
}
Задание 7
Koden skal sjekke at tallet har nøyaktig to sifre:
php<?php
$num = 12;
$str = (int) $num;
if (strlen($str) === 2) {
echo '+++';
} else {
echo '---';
}
?>
Задание 8
Den viste koden fungerer ikke slik forfatteren hadde tenkt:
php<?php
$num = 1;
if ($num !== 1 or $num !== 2) {
echo '+++';
} else {
echo '---'; // skal skrive ut dette
}
?>
Forklar årsaken.
Задание 9
Den viste koden fungerer ikke slik forfatteren hadde tenkt:
php<?php
$var1 = '1';
$var2 = '2';
if ($var1 + 1 === $var2) {
echo '+++'; // skal utløse dette
} else {
echo '---';
}
?>
Forklar årsaken.