Это старая версия Информатика/Архив/2019/10Б за 01.04.2019 10:47:18.

10 Б

Программирование


Структуры данных

ArrayList Java в решении должна быть одна пара квадратных скобок
Очереди, стеки, деки просто
Очереди, стеки, деки сложно

Реляционные базы данных. Язык SQL

Для работы (обучения) удобно использовать SQLite. Почему?
0. Soft
Удобно работать при помощи SQLite Browser. Установите его.
1. Создание таблиц
Какие типы данных есть в SQLitе? (ДО п. 2)
Изучите синтаксис SQL для создания и удаления таблиц


Создайте базу данных из след. таблиц (какие поля можно и нужно сделать ключевыми?)


STUDENT : ID, SURNAME, NAME, STIPEND, KURS, CITY, BIRTHDAY, UNIV_ID
LECTURER : ID, SURNAME, NAME, CITY, UNIV_ID
SUBJECT : ID, NAME, HOUR, SEMESTER
UNIVERCITY : ID, UNIV_NAME, RAITING, CITY
EXAM_MARKS : EXAM_ID, STUDENT_ID, SUBJ_ID, MARK, EXAM_DATE
SUBJ_LECT : LECTURER_ID, SUBJECT_ID


2. Наполнение данными
Изучите синтаксис команды INSERT.


В каждой таблице должно быть не менее 100 записей.
Для того, чтобы сделать это быстро, стоит использовать скрипты – программы, генерирующие команды INSERT


**3. Запросы а выборку из одной таблицы
Простейшие варианты
Условие WHERE
Дополнительные возможности SELECT
Вычисляемые поля


Задачи на простой SELECT


*Совсем просто*


1. Напишите запрос для вывода идентификатора (номера) предмета
обучения, его наименования, семестра, в котором он читается,
и количества отводимых на этот предмет часов для всех строк таблицы SUBJECT.


2. Напишите запрос, выбирающий все данные из таблицы STUDENT,
расположив столбцы таблицы в следующем порядке: KURS, SURNAME, NAME, STIPEND.


3. Напишите запрос, позволяющий получить из таблицы EXAM_MARKS
значения столбца MARK (экзаменационная оценка) для всех студентов, исключив из списка повторение одинаковых строк.


4. Напишите запрос, выбирающий данные о фамилии, имени и номере курса для студентов, получающих стипендию больше 140.


5. Напишите запрос, который выполняет вывод списка университетов, рейтинг которых превышает 300 баллов.


6. Напишите запрос на вывод находящихся в таблице EXAM_MARKS
номеров предметов обучения, экзамены по которым сдавались между 10 и 20 января 1999 года.


7. Напишите запрос на вывод названий предметов обучения, начинающихся на букву «И».


8. Напишите запрос для выбора из таблицы EXAM_MARKS записей,
в которых отсутствуют значения оценок (поле MARK).


*Вычисления в запросах SELECT*


1. Составьте запрос для таблицы STUDENT таким образом, чтобы выходная таблица содержала один столбец, содержащий последовательность разделенных символом «;» (точка с запятой) значений
всех столбцов этой таблицы, и при этом текстовые значения должны отображаться прописными символами (верхний регистр),
то есть быть представленными в следующем виде: 10;КУЗНЕЦОВ;БОРИС;0;БРЯНСК;8/12/1981;10.


2. Составьте запрос для таблицы STUDENT таким образом, чтобы выходная таблица содержала всего один столбец в следующем виде:
б.кузнецов;место жительства-брянск;родился:8-дек-1981.


3. Вывести фамилии, имена студентов и величину получаемых ими
стипендий, при этом значения стипендий должны быть увеличены
в 100 раз.


4. Составьте запрос для таблицы UNIVERSITY таким образом, чтобы
выходная таблица содержала всего один столбец в следующем виде: Код-10;ВГУ-г. ВОРОНЕЖ;Рейтинг=296.


*Агрегированные запросы*


Протокол HTTP 1.0 на практике


Броузер шлет обычно запрос по по версии 1.1, но отвечать ему можно и нужно по протоколу 1.0.


0. Prerequisites
Практика:
Клиент – putty
a) Открыть серверный сокет,
передать клиенту строку символов,
забрать от клиента строку символов
b) То же, несколько строк.
с) Переподключение: сделать так, чтобы несколько клиентов могли подключаться последовательно.


1. Основы HTTP
a) Основные ссылки по HTTP-протоколу
b) Виды запросов
c) Синтаксис GET-запроса
d) Структура ответа, основные коды ответа
e) Значимые заголовки


2. Практика. Простой GET-запрос
a) Получение браузером от сервера простой статичной Web-страницы


3. Практика. Работа с файлами
a) Вывод содержимого файла из текущего каталога в консоль
б) То же из подкаталога текущего каталога
в) Скопировать бинарный, например, графический файл.


4. Практика. Передача файлов по HTTP
a) Получение браузером конкретного HTML-файла, путь которого жестко прописан в коде сервера
b) Получение браузером картинки, путь которой жестко прописан в коде сервера.


5. Практика. GET-запрос
a) Выделить путь из GET-запроса – отдать браузеру требуемый файл с правильным Content-type
b) Обработать ошибку 404.


6. Теория. Web-формы HTML
a) Устройство HTML формы (тег FORM атрибут ACTION, атрибут METHOD, Submit)
b) Пользовательский ввод (поле ввода, поле для ввода пароля, checkbox, radiobutton, выпадающий список)


7. Практика. Web-формы HTML
a) Создать форму со всеми элементами с GET запросом на localhost


8. Практика. Web-формы GET
a) Проанализировать получаемые данные браузера по GET запросу формы
б) Сформировать ответ браузеру, передав полученные данные в HTML


9. Практика. Web-формы POST
a) Проанализировать получаемые данные браузера по POST запросу формы
б) Сформировать ответ браузеру, передав полученные данные в HTML


Менеджеры компоновки
вторая ссылка


Java SDK
Инструкция по установке
Документация по строкам
1. Контесты по основам
2. Вывести в консоль ровный треугольник Паскаля