Про оценки
2 теоретических вопроса дают по 2 балла каждый. и ещё 2 задачи – по 3 балла. (в 4 варианте задача даст 6 баллов).
для зачёта нужно 5 баллов.
как будет оцениваться решение задач?
+1 балл – общая оценка кода – насколько использованные инструменты соответствуют задаче (напр. если вы в цикле будете разбивать строку на массив вместо использования функции explode, то по этому параметру 0 баллов)
+0.5 балла – прохождение каждого из двух тестов на «обычных» данных, то есть не содержащих «крайних случаев»
+0.33(3) балла – прохождение каждого из трёх тестов на «критических» данных, то есть содержащих или не валидную информацию, или крайние случаи решения.
итого: 1+1+2*0.5+3*0.(3)=3 балла
Вариант 1
Теория
- Опишите словами или нарисуйте схему взаимодействия программного обеспечения сервера при обращении по адресу http://test.ru/index.php, если файл index.php выглядит так:
<?
echo date("Y");
?>
- Что именно означает фраза «PHP – скриптовый язык программирования с интерпретатором компилирующего типа»?
Практика
- Вводится строка, состоящая из слов, разделённых пробелами. На выходе нужно раскрасить последовательно слова текста в красный, синий и зелёный цвета.
Пример:
Ввод: php это скриптовый язык программирования общего назначения, интенсивно применяемый для разработки веб-приложений
Вывод: php это скриптовый язык программирования общего назначения, интенсивно применяемый для разработки веб-приложений
Вывод: php это скриптовый язык программирования общего назначения, интенсивно применяемый для разработки веб-приложений
- Вводится 2 числа – число a и число b. Вывести 10 первых чисел последовательности Фибоначи для a и b (т.е. каждое следующее число является суммой двух предыдущих).
Пример:
Ввод: 3 15
Вывод: 3 15 18 33 51 84 135 219 354 573
Вывод: 3 15 18 33 51 84 135 219 354 573
Вариант 2
Теория
- Что такое Денвер? Какие пакеты входят в базовый пакет Денвер3?
- Какие скалярные типы данных существуют в php? (Подсказка: их 5)
Практика
- Вводится дата в формате ДД-ММ-ГГГГ. Вывести ту же дату относительно сегодняшнего дня (т.е. Позавчера / Вчера / Сегодня / Завтра / Послезавтра). Если разница больше двух дней, то вывести дату, подставив русскоязычное название месяца и заменив тире на пробелы.
Пример1:
Ввод: 05–02–2012 (сегодняшней датой будем считать 06–02–2012)
Вывод: Вчера
Пример2:
Ввод: 09–02–2012 (сегодняшней датой будем считать 06–02–2012)
Вывод: 09 февраля 2012
Вывод: Вчера
Пример2:
Ввод: 09–02–2012 (сегодняшней датой будем считать 06–02–2012)
Вывод: 09 февраля 2012
- Вводится строка. Определить, является ли она палиндромом (т.е. одинаково читается справа налево и слева направо).
Пример:
Ввод: 12321
Вывод: Да, это палиндром
Вывод: Да, это палиндром
Вариант 3
Теория
- Что будет выведено после выполнения этого кода:
<?php
$a = '5';
$b = 7;
$b = 'a';
echo $$b;
?>
- Содержимое каких суперглобальных массивов помещает в себя $_REQUEST (Подсказка: их 4)
Практика
- Вводится число. Для каждой цифры этого числа вывести, делится ли оно на неё нацело.
Пример:
Ввод: 72
Вывод: 7: не делится; 2: делится;
Вывод: 7: не делится; 2: делится;
- Вводится три числа – длины трёх сторон треугольника. Вывести площадь этого треугольника (для подсчёта можно использовать формулу Герона: `p=(a+b+c)/2` `S=sqrt(p(p-a)(p-b)(p-c))`). Обратить внимание на проверку вводимых данных.
Пример1:
Ввод: 1 2 4
Вывод: Такого треугольника не может существовать!
Пример2:
Ввод: 3 4 5
Вывод: 6
Вывод: Такого треугольника не может существовать!
Пример2:
Ввод: 3 4 5
Вывод: 6
Вариант 4
Теория
- Для чего используется функция htmlspecialchars?
- Назовите виды циклов в PHP. (Подсказка: их 4)
Практика
- В текстовое поле – словарь – через пробел вводятся «словарные» слова. В другое текстовое поле – текст – вводится текст, состоящий из слов, разделённых пробелами. Если во втором поле есть слова, отличающиеся от каких-либо «словарных» не более чем на один символ (символ может быть другим, его может не хватать или он может быть лишним), то вместо этих слов подставить соответствующие «словарные». Т.е. по сути нужно реализовать простейшую проверку орфографии.
Пример:
Ввод:
Словарь: язь рыба моей мечты
Текст: здаравенный яязь это рыб маей мичты
Вывод: здаравенный язь это рыба моей мечтыТекст: здаравенный яязь это рыб маей мичты
Вариант 5
Практика
- Юзер Вася Чайников узнал, что у хакера Вовы Крутого появился новый CD-ROM с пиратской игрой. Поскольку у Васи нет дисковода CD-ROM, он решил скопировать себе игру с помощью дискет. Объем игры – NМб, объем дискеты – 1,44 Мб, всего у Васи K дискет. Путь от дома Чайникова до дома Крутого занимает полчаса. Сколько времени потратит Вася, прежде чем обнаружит, что игра запускается только при наличии CD-ROM? N и K вводятся в текстовое поле.
- Хакер Вова Крутой написал троян, рассылающий себя по адресам из адресной книги. У среднего пользователя в адресной книге – N адресов. Из-за ошибки в программе троян вместо того, чтобы отсылать пароль с зараженной машины Вове, отсылает пароль Вовы на зараженную машину. Сколько человек узнают пароль хакера Вовы Крутого прежде, чем появится антивирус? N вводится в текстовое поле.