3. Задачи на конструкции if-case


Чтобы посмотреть этот PDF файл с форматированием и разметкой, скачайте его и откройте на своем компьютере.
Задачи на конструкции if
-
else,
switch
-
case в tH
P

Примеры решения задач

Задача


Задача.

Если переменная

$a

равна 10, то выведите
'Верно', иначе выведите 'Неверно'.

Решение
:

?ph
p


$
a

=

1
0
;


i
f

(
$
a

=
=

1
0
)

{



ech
o

'
Верно
'
;


}

els
e

{



ech
o

'
Неверно
'
;


}

?


Задача


Задача.

В переменной

$min

лежит число от 0 до 59. Определите в какую

четверть
часа
попадает это число (в первую, вторую, третью или четвертую).

Решение
:

?ph
p


$mi
n

=

1
0
;



i
f

(
$mi
n


=

0

an
d

$mi
n


=

1
4
)

{



ech
o



первую

четверть.
'
;


}



i
f

(
$mi
n


=

1
5

an
d

$mi
n


=

3
0
)

{



ech
o

'Во

вторую

четверть.
'
;


}



i
f

(
$mi
n


=

3
1

an
d

$mi
n


=

4
5
)

{



ech
o

'
В

третью

четверть
.
'
;


}



i
f

(
$mi
n


=

4
6

an
d

$mi
n


=

5
9
)

{



ech
o



четвертую

четверть.
'
;


}

?


Задача


Задача.

Переменная

$lang

может принимать два значения: 'ru' и 'en'. Если она имеет
значение 'ru', то в переменную

$arr

запишем массив дней недели на русском языке, а
если имеет значение 'en'


то на английском. Решите задачу через

2 if
, через

switch
-
case

и через

многомерный массив

без ифов и switch.

Решение:

Решение через 2 if:

?ph
p


$lan
g

=

'ru
'
;




i
f

(
$lan
g

=
=

'ru
'
)

{



$ar
r

=

[
'пн
'
,

'вт
'
,

'ср
'
,

'чт
'
,

'пт
'
,

'сб
'
,

'вс
'
]
;


}


i
f

(
$lan
g

=
=

'en
'
)

{



$ar
r

=

[
'mn
'
,

'ts
'
,

'wd
'
,

'th
'
,

'fr
'
,

'st
'
,

'sn
'
]
;


}




var_dum
p
(
$ar
r
)
;

?


Решение

через

switch
-
case:

?ph
p


$lan
g

=

'ru
'
;




switc
h

(
$lan
g
)

{



cas
e

'ru
'
:




$ar
r

=

[
'
пн
'
,

'
вт
'
,

'
ср
'
,

'
чт
'
,

'
пт
'
,

'
сб
'
,

'
вс
'
]
;



brea
k
;



cas
e

'en
'
:




$ar
r

=

[
'mn
'
,

'ts
'
,

'wd
'
,

'th
'
,

'fr
'
,

'st
'
,

'sn
'
]
;



brea
k
;


}



var_dum
p
(
$ar
r
)
;

?


Решение через многомерный массив:

?ph
p


$lan
g

=

'ru
'
;




$ar
r

=

[



'ru
'
=

[
'пн
'
,

'вт
'
,

'ср
'
,
'чт
'
,

'пт
'
,

'сб
'
,

'вс
'
]
,



'en
'
=

[
'mn
'
,

'ts
'
,

'wd
'
,

'th
'
,

'fr
'
,

'st
'
,

'sn
'
]
,


]
;



var_dum
p
(
$ar
r
[
$lan
g
]
)
;

?


Задачи для решения

Работа с if
-
else


Если переменная

$a

равна нулю, то выведите 'Верно', иначе выведите 'Неверно'.
Проверьте работу скрипта при

$a
, равном 1, 0,
-
3.



Если переменная

$a

больше нуля, то выведите 'Верно', иначе выведите 'Неверно'.
Проверьте работу скрипта при

$a
, равном 1, 0,

-
3.



Если переменная

$a

меньше нуля, то выведите 'Верно', иначе выведите 'Неверно'.
Проверьте работу скрипта при

$a
, равном 1, 0,
-
3.



Если переменная

$a

больше или равна нулю, то выведите 'Верно', иначе выведите
'Неверно'. Проверьте работу
скрипта при

$a
, равном 1, 0,
-
3.



Если переменная

$a

меньше или равна нулю, то выведите 'Верно', иначе выведите
'Неверно'. Про
верьте работу скрипта при

$a
, равном 1, 0,
-
3.



Если переменная

$a

не равна нулю, то выведите 'Верно', иначе выведите 'Неверно
'.
Проверьте работу скрипта при

$a
, равном 1, 0,
-
3.



Если переменная

$a

равна 'test', то выведите 'Верно', иначе выведите 'Не
верно'.
Проверьте работу скрипта при

$a
, равном 'test', 'тест', 3.



Если переменная

$a

равна '1' и по значению и по типу, то в
ыведите 'Верно', иначе
выведите 'Неверно'. Проверьте работу скрипта при

$a
, равном '1', 1, 3.


Работа с empty и isset


Если пер
еменная

$a

пустая, то выведите 'Верно', иначе выведите 'Неверно'.
Проверьте работу скрипта при

$a
, равном 1, 3,
-
3, 0, null, true, '', '0'.



Если переменная

$a

НЕ пустая, то выведите 'Верно', иначе выведите 'Неверно'.



Если переменная

$a

существует, то выведите 'Верно', иначе выведите 'Неверно'.
Проверьте работу скрипта при

$a
, равном 3 и null.



Если переменная

$a

НЕ существует, то выведите 'Верно', иначе выведите 'Неверно'
.

Работа с логическими переменными


Если переменная

$var

равна t
rue, то выведите 'Верно', иначе выведите 'Неверно'.
Проверьте работу скрипта при

$var
, равном true, false. Напишите два варианта скрипта
-

с короткой записью и с длинной.



Если переменная

$var

НЕ равна true, то выведите 'Верно', иначе выведите 'Неверно'.
Проверьте работу скрипта при

$var
, равном true, false. Напишите два варианта скрипта
-

с короткой записью и с длинной.


Работа с OR и AND


Если переменная

$a

больше нуля и меньше 5
-
ти, то выведите 'Верно', иначе выведите
'Неверно'. Проверьте рабо
ту скрипта при

$a
, равном 5, 0,
-
3, 2.



Если переменная

$a

равна нулю или равна двум, то прибавьте к ней 7, иначе поделите
ее
на 10. Выведите новое значение переменной на экран. Проверьте работу скрипта
при

$a
, равном 5, 0,
-
3, 2.



Если переменная

$a

р
авна или меньше 1, а переменная

$b

больше или равна 3, то
выведите сумму этих переменных, иначе выведите их разность (результат вычитания).
Проверьте работу скрипта при

$a

и

$b
, равном 1 и 3, 0 и 6, 3 и 5.



Если переменная

$a

больше 2
-
х и меньше 11
-
ти, или переменная

$b

больше или
равна 6
-
ти и меньше 14
-
ти, то выведите 'Верно', в противном случае выведите
'Неверно'.


На switch
-
case


Переменная

$num

может принимать одно из значений: 1, 2, 3 или 4. Если она имеет
значение '1', то в переменную

$result

запишем 'зима', если имеет значение '2'


'лето'
и так далее. Решите задачу через

switch
-
case
.



Задачи


В переменной

$d
ay

лежит какое
-
то число из интервала от

1

до

31
. Определите в какую
декаду месяца попадает это число (в первую, вторую или третью).




В переменной

$month

лежит какое
-
то число из интервала от

1

до

12
. Определите в
какую пору года попадает этот месяц (зима, лето, весна, осень).




В переменной

$year

хранится год. Определите, является ли он

високосным

(в таком
году есть 29 февраля). Год будет високосным в

двух случаях
: либо он делится на

4
,
но при этом не делится на

100
, либо делится на

400
. Так, годы 1700, 1
800 и 1900 не
являются високосными, так как они делятся на

100

и не делятся на

400
. Годы 1600 и
2000
-

високосные, так как они делятся на

400
.




Дана строка с символами, например, 'abcde'. Проверьте, что первым символом этой
строки является буква 'a'. Если это так
-

выведите 'да', в противном случае выведите
'нет'.




Дана строка с цифрами, например, '12345'. Проверьте, что первым символом этой
строки является цифра 1, 2 или 3. Если это так
-

выведите 'да', в противном случае
выведите 'нет'
.



Дана строка из 3
-
х цифр. Найдите сумму этих цифр. То есть сложите как числа первый
символ строки, второй и третий.



Дана строка из 6
-
ти цифр. Проверьте, что сумма первых трех цифр равняется сумме
вторых трех цифр. Если это так
-

выведите 'да', в противном случае вы
ведите 'нет'.





Приложенные файлы

  • pdf 5315515
    Размер файла: 681 kB Загрузок: 0

Добавить комментарий