В
Все
М
Математика
О
ОБЖ
У
Українська мова
Д
Другие предметы
Х
Химия
М
Музыка
Н
Немецкий язык
Б
Беларуская мова
Э
Экономика
Ф
Физика
Б
Биология
О
Окружающий мир
Р
Русский язык
У
Українська література
Ф
Французский язык
П
Психология
А
Алгебра
О
Обществознание
М
МХК
В
Видео-ответы
Г
География
П
Право
Г
Геометрия
А
Английский язык
И
Информатика
Қ
Қазақ тiлi
Л
Литература
И
История

Изучите скрипт и составьте алгоритм интерфейс программы, скрипт словесный алгоритм с сором

Показать ответ
Ответ:
olesyapurzikova
olesyapurzikova
13.02.2020 05:21
Добрый день! Сегодня я буду играть роль школьного учителя и помогу вам решить задание к контрольной работе №4.

1. Начнем с первого задания: спроектировать и создать базу данных с информацией о результатах олимпиады, используя нормализацию.

Для этого создадим таблицы с соответствующими полями:

Таблица "Ученики":
- ID (идентификатор);
- Фамилия;
- Имя;
- Класс (9А, 9Б, 10А, 10Б).

Таблица "Предметы":
- ID (идентификатор);
- Название предмета (Физика, Математика, Химия, История).

Таблица "Учителя":
- ID (идентификатор);
- Фамилия;
- Имя;
- Предмет (Физика, Математика, Химия).

Таблица "Результаты":
- ID (идентификатор);
- ID_ученика (связь с таблицей "Ученики");
- ID_предмета (связь с таблицей "Предметы");
- ID_учителя (связь с таблицей "Учителя");
- Медаль (Да/Нет);
- Грамота (Да/Нет);
- Почетный_приз (Да/Нет).

Таблица "Возраст":
- ID (идентификатор);
- ID_ученика (связь с таблицей "Ученики");
- Возраст.

Таблица "Дипломы":
- ID (идентификатор);
- ID_учителя (связь с таблицей "Учителя").


2. Теперь перейдем ко второму заданию: обратиться к БД с результатами олимпиады и выполнить несколько запросов.

- Запрос 1: Получить список всех ребят, награжденных медалями, упорядоченный в алфавитном порядке по фамилиям.

Решение:
```sql
SELECT Ученики.Фамилия, Ученики.Имя, Ученики.Класс, Предметы.Название_предмета
FROM Ученики
JOIN Результаты ON Ученики.ID = Результаты.ID_ученика
JOIN Предметы ON Результаты.ID_предмета = Предметы.ID
WHERE Результаты.Медаль = 'Да'
ORDER BY Ученики.Фамилия;
```

- Запрос 2: Получить список всех награжденных десятиклассников, упорядоченный по убыванию возраста.

Решение:
```sql
SELECT Ученики.Фамилия, Ученики.Класс, Учителя.Фамилия AS Классный_руководитель, Предметы.Название_предмета,
CASE
WHEN Результаты.Медаль = 'Да' THEN 'Медаль'
WHEN Результаты.Грамота = 'Да' THEN 'Грамота'
WHEN Результаты.Почетный_приз = 'Да' THEN 'Почетный приз'
END AS Награда,
Возраст.Возраст
FROM Ученики
JOIN Результаты ON Ученики.ID = Результаты.ID_ученика
JOIN Предметы ON Результаты.ID_предмета = Предметы.ID
JOIN Учителя ON Результаты.ID_учителя = Учителя.ID
JOIN Возраст ON Ученики.ID = Возраст.ID_ученика
WHERE Ученики.Класс LIKE '10%'
ORDER BY Возраст.Возраст DESC;
```

- Запрос 3: Получить список всех награжденных, классным руководителем которых является учитель математики, упорядоченный по фамилиям.

Решение:
```sql
SELECT Ученики.Фамилия, Ученики.Класс, Предметы.Название_предмета,
CASE
WHEN Результаты.Медаль = 'Да' THEN 'Медаль'
WHEN Результаты.Грамота = 'Да' THEN 'Грамота'
WHEN Результаты.Почетный_приз = 'Да' THEN 'Почетный приз'
END AS Награда
FROM Ученики
JOIN Результаты ON Ученики.ID = Результаты.ID_ученика
JOIN Предметы ON Результаты.ID_предмета = Предметы.ID
JOIN Учителя ON Результаты.ID_учителя = Учителя.ID
WHERE Учителя.Предмет = 'Математика'
ORDER BY Ученики.Фамилия;
```

- Запрос 4: Получить список всех награжденных девятиклассников, классные руководители которых получили дипломы, и возраст которых не превышает 16 лет, упорядоченный по фамилиям в алфавитном порядке.

Решение:
```sql
SELECT Ученики.Фамилия, Ученики.Имя, Возраст.Возраст
FROM Ученики
JOIN Результаты ON Ученики.ID = Результаты.ID_ученика
JOIN Возраст ON Ученики.ID = Возраст.ID_ученика
JOIN Учителя ON Результаты.ID_учителя = Учителя.ID
JOIN Дипломы ON Учителя.ID = Дипломы.ID_учителя
WHERE Учителя.Предмет = 'Математика' AND Ученики.Класс LIKE '9%' AND Возраст.Возраст <= 16
ORDER BY Ученики.Фамилия;
```

Это были пошаговые решения для каждого из запросов. Если у вас возникнут какие-либо дополнительные вопросы или нужна помощь с другими заданиями, обязательно спрашивайте!
0,0(0 оценок)
Ответ:
makar32ryc
makar32ryc
23.08.2022 10:03
Здравствуйте! Решим задачу по порядку, сначала с использованием цикла с параметром, а потом с использованием цикла с предусловием.

1. Цикл с параметром:
Для начала, нужно проанализировать задачу и понять, какие переменные и условия нам понадобятся. Дано натуральное число n, а нам нужно вычислить произведение (2n - 1) * (3n - 1) * ... * (10n - 1).

Для этой задачи можно использовать цикл с параметром. Поскольку нам нужно перемножить числа от 2n - 1 до 10n - 1, можно использовать счетчик цикла, который будет принимать значения от 2n - 1 до 10n - 1.

Пошаговое решение задачи с использованием цикла с параметром:
1. Задать значение n (натуральное число).
2. Инициализировать переменную произведение (например, product) со значением 1. Эта переменная будет хранить итоговый результат.
3. Задать счетчик цикла (например, i) значения от 2n - 1 до 10n - 1 (включительно).
4. Перед каждой итерацией цикла, умножать произведение на значение счетчика цикла.
5. Вывести произведение на экран.

Программа на Python, выполняющая данную задачу с использованием цикла с параметром, может выглядеть следующим образом:

n = int(input("Введите натуральное число n: "))

product = 1

for i in range(2 * n - 1, 10 * n, 1):
product *= i

print("Произведение равно:", product)

Блок-схема для решения данной задачи с использованием цикла с параметром будет представлять собой прямоугольник с одной входной точкой (ввод значения n) и одной выходной точкой (вывод произведения). Внутри прямоугольника будет нарисовано прямоугольник со стрелкой, представляющий цикл, и еще один прямоугольник с нарисованной стрелкой, представляющий операцию умножения.

2. Цикл с предусловием:
Альтернативный способ решения данной задачи - использование цикла с предусловием. В этом случае, мы будем выполнять операцию умножения до тех пор, пока счетчик цикла не достигнет значения 10n. Начальное значение счетчика должно быть установлено равным 2n - 1.

Пошаговое решение задачи с использованием цикла с предусловием:
1. Задать значение n (натуральное число).
2. Инициализировать переменную произведение (например, product) со значением 1. Эта переменная будет хранить итоговый результат.
3. Инициализировать счетчик цикла (например, i) значением 2n - 1.
4. В цикле, выполнять операцию умножения произведения на значение счетчика цикла.
5. Увеличить значение счетчика цикла на 1.
6. Повторять шаги 4-5, пока значение счетчика цикла не превысит значение 10n.
7. Вывести произведение на экран.

Программа на Python, выполняющая данную задачу с использованием цикла с предусловием, может выглядеть следующим образом:

n = int(input("Введите натуральное число n: "))

product = 1
i = 2 * n - 1

while i <= 10 * n:
product *= i
i += 1

print("Произведение равно:", product)

Блок-схема для решения данной задачи с использованием цикла с предусловием будет иметь ту же структуру, что и для цикла с параметром, но с использованием дополнительного ромбовидного блока, представляющего условие продолжения цикла.

Надеюсь, что данное пошаговое решение с обоснованием ответов и программами помогло вам лучше понять, как решить данную задачу! Если у вас возникнут еще какие-либо вопросы, не стесняйтесь задавать!
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота