Raku kurss / Pamati / Izpildes plūsmas pamati / Nosacījumu pārbaudes / Virkņu salīdzināšana
Tests 2 — nosacījums if
Izlabojiet programmu un atbildiet uz jautājumu.
| . | my $password = prompt 'Enter your password: '; |
| . | |
| eq = | if $password ␣␣ '*&(#&$#Y' { |
| . | say 'Correct'; |
| . | } |
| . | else { |
| . | say 'Incorrect'; |
| . | } |
Ar = pārbaudē — ko šī programma dara?
| Vienmēr izdrukā ‘Correct’ | Jūsu atbilde: (: Vienmēr izdrukā ‘Correct’, Vienmēr izdrukā ’Incorrect’, Izdrukā ’Correct’ pareizām parolēm un ‘Incorrect’ nepareizām, Izdrukā ’Incorrect’ pareizām parolēm un ’Correct’ nepareizām :) |
Programma vienmēr izdrukā ’Correct’, jo
Ja ierakstīsiet
$password =
’*&(#&$#Y’ ir piešķīrums, kas mainīgajam
$password uzstāda jaunu vērtību. Tā kā vērtība nav ne
nulle, ne tukša virkne, tā tiek uzskatīta par True. Parole,
ko ievada lietotājs, šajā gadījumā netiek pārbaudīta nemaz.Ja ierakstīsiet
==, programma salūzīs, jo mēģinās virknes
(lietotāja paroli un pareizo paroli) pārvērst skaitļos un neizdosies.
Kursa navigācija
← Tests 1 — virkņu salīdzināšana | Trīsvērtīgais operators →