Практикум по программированию. Основы. Ветвление
(Created page with "<div style='max-width:700px;text-align:justify;'> Назад | [[Практ...") |
|||
(18 intermediate revisions by one user not shown) | |||
Line 1: | Line 1: | ||
<div style='max-width:700px;text-align:justify;'> | <div style='max-width:700px;text-align:justify;'> | ||
− | [[Практикум по программированию. Основы. Ввод и вывод|Назад]] | + | [[Практикум по программированию. Основы. Ввод и вывод|Назад]] · |
+ | [[Практикум по программированию. Основы|Оглавление]] · | ||
+ | [[Практикум по программированию. Основы. Циклы|Дальше]] | ||
Line 10: | Line 12: | ||
если D = 0, то X = -B / (2 * A) | если D = 0, то X = -B / (2 * A) | ||
если D > 0: | если D > 0: | ||
− | + | X1 = (-B + SQRT(D)) / (2 * A) | |
− | + | X2 = (-B - SQRT(D)) / (2 * A) | |
+ | | ||
+ | Пример интерфейса: | ||
+ | | ||
+ | Поиск корней уравнения A * X^2 + B * X + C = 0 | ||
+ | ------------------------------------------------ | ||
+ | Введите A: 2 | ||
+ | Введите B: 4 | ||
+ | Введите C: 1 | ||
+ | ------------------------------------------------ | ||
+ | X1 = -0,293 | ||
+ | X2 = -1,707 | ||
Решение: | Решение: | ||
− | [[Практикум по программированию. Основы. Ветвление. Корни уравнения|Java]] | + | [[Практикум по программированию. Основы. Ветвление. Корни уравнения#Java|Java]] · |
− | [[Практикум по программированию. Основы. Ветвление. Корни уравнения|C++]] | | + | [[Практикум по программированию. Основы. Ветвление. Корни уравнения#C++|C++]] · |
− | [[Практикум по программированию. Основы. Ветвление. Корни уравнения|Pascal]] | + | [[Практикум по программированию. Основы. Ветвление. Корни уравнения#Python|Python]] · |
+ | [[Практикум по программированию. Основы. Ветвление. Корни уравнения#Pascal|Pascal]] · | ||
+ | [[Практикум по программированию. Основы. Ветвление. Корни уравнения#JavaScript|JavaScript]] | ||
2. Ракета запускается с точки на экваторе и развивает скорость V км/с. Определить результат запуска. | 2. Ракета запускается с точки на экваторе и развивает скорость V км/с. Определить результат запуска. | ||
− | + | <pre> | |
− | + | Если V < 7.8 км/с, ракета упадет на Землю; | |
− | + | если 7.8 < V < 11.2, ракета станет спутником Земли; | |
− | + | если 11.2 < V < 16.4, ракета станет спутником Солнца; | |
+ | если V > 16.4, ракета покинет Солнечную систему. | ||
+ | |||
+ | Пример интерфейса: | ||
+ | |||
+ | Определение результата запуска ракеты | ||
+ | --------------------------------------- | ||
+ | После запуска, ракета развивает скорость: 12 | ||
+ | --------------------------------------- | ||
+ | Ракета станет спутником Солнца | ||
+ | </pre> | ||
Решение: | Решение: | ||
− | [[Практикум по программированию. Основы. Ветвление. Запуск ракеты|Java]] | + | [[Практикум по программированию. Основы. Ветвление. Запуск ракеты#Java|Java]] · |
− | [[Практикум по программированию. Основы. Ветвление. Запуск ракеты|C++]] | | + | [[Практикум по программированию. Основы. Ветвление. Запуск ракеты#C++|C++]] · |
− | [[Практикум по программированию. Основы. Ветвление. Запуск ракеты|Pascal]] | + | [[Практикум по программированию. Основы. Ветвление. Запуск ракеты#Python|Python]] · |
+ | [[Практикум по программированию. Основы. Ветвление. Запуск ракеты#Pascal|Pascal]] · | ||
+ | [[Практикум по программированию. Основы. Ветвление. Запуск ракеты#JavaScript|JavaScript]] | ||
+ | |||
+ | |||
+ | 3. Автомат отпускает максимум N единиц товара. Известна стоимость одной единицы товара Z и сумма денег, имеющаяся у покупателя S. Сколько единиц товара может получить покупатель и какова сдача? | ||
+ | <pre> | ||
+ | Рассмотреть ситуации, | ||
+ | когда ресурсы покупателя больше и меньше возможностей автомата. | ||
+ | Пример интерфейса: | ||
− | + | Расчет количества единиц товара и сдачи | |
− | + | ----------------------------------------- | |
− | + | Введите общее количество единиц товара: 30 | |
− | + | Введите стоимость одной единицы товара: 110,50 | |
+ | Введите сумму денег у покупателя: 1000 | ||
+ | ----------------------------------------- | ||
+ | Покупаем 9 единиц товара | ||
+ | Сдача: 5,50 руб. | ||
+ | У автомата остается 21 единиц товара | ||
+ | </pre> | ||
Решение: | Решение: | ||
− | [[Практикум по программированию. Основы. Ветвление. Автомат-продавец|Java]] | + | [[Практикум по программированию. Основы. Ветвление. Автомат-продавец#Java|Java]] · |
− | [[Практикум по программированию. Основы. Ветвление. Автомат-продавец|C++]] | | + | [[Практикум по программированию. Основы. Ветвление. Автомат-продавец#C++|C++]] · |
− | [[Практикум по программированию. Основы. Ветвление. Автомат-продавец|Pascal]] | + | [[Практикум по программированию. Основы. Ветвление. Автомат-продавец#Python|Python]] · |
+ | [[Практикум по программированию. Основы. Ветвление. Автомат-продавец#Pascal|Pascal]] · | ||
+ | [[Практикум по программированию. Основы. Ветвление. Автомат-продавец#JavaScript|JavaScript]] | ||
4. Даны площадь круга Skr и площадь квадрата Skv. Определить, поместится ли квадрат в круг. | 4. Даны площадь круга Skr и площадь квадрата Skv. Определить, поместится ли квадрат в круг. | ||
− | + | <pre> | |
+ | Поместится, если Skr >= Skv * Pi / 2 | ||
+ | |||
+ | Пример интерфейса: | ||
+ | |||
+ | Поместится ли квадрат в круг? | ||
+ | ------------------------------- | ||
+ | Введите площадь круга: 1,58 | ||
+ | Введите площадь квадрата: 1 | ||
+ | ------------------------------- | ||
+ | Квадрат поместится в круг | ||
+ | </pre> | ||
Решение: | Решение: | ||
− | [[Практикум по программированию. Основы. Ветвление. Квадрат в круге|Java]] | + | [[Практикум по программированию. Основы. Ветвление. Квадрат в круге#Java|Java]] · |
− | [[Практикум по программированию. Основы. Ветвление. Квадрат в круге|C++]] | | + | [[Практикум по программированию. Основы. Ветвление. Квадрат в круге#C++|C++]] · |
− | [[Практикум по программированию. Основы. Ветвление. Квадрат в круге|Pascal]] | + | [[Практикум по программированию. Основы. Ветвление. Квадрат в круге#Python|Python]] · |
+ | [[Практикум по программированию. Основы. Ветвление. Квадрат в круге#Pascal|Pascal]] · | ||
+ | [[Практикум по программированию. Основы. Ветвление. Квадрат в круге#JavaScript|JavaScript]] | ||
5. Принадлежит ли точка M с координатами (X, Y) фигуре на плоскости, ограниченной линией проходящей через точки: (1, 0), (0, 1), (-1, 0), (0, -1) | 5. Принадлежит ли точка M с координатами (X, Y) фигуре на плоскости, ограниченной линией проходящей через точки: (1, 0), (0, 1), (-1, 0), (0, -1) | ||
− | + | <pre> | |
+ | Принадлежит, если |X| + |Y| <= 1 | ||
+ | |||
+ | Пример интерфейса: | ||
+ | |||
+ | Принадлежит ли точка фигуре на плоскости | ||
+ | ограниченной линией проходящей через точки | ||
+ | (1, 0), (0, 1), (-1, 0), (0, -1) | ||
+ | -------------------------------------------- | ||
+ | Введите координату X точки: 1 | ||
+ | Введите координату Y точки: 1 | ||
+ | -------------------------------------------- | ||
+ | Точка M(1,00; 1,00) не принадлежит этой фигуре | ||
+ | </pre> | ||
Решение: | Решение: | ||
− | [[Практикум по программированию. Основы. Ветвление. Точка и ромб|Java]] | + | [[Практикум по программированию. Основы. Ветвление. Точка и ромб#Java|Java]] · |
− | [[Практикум по программированию. Основы. Ветвление. Точка и ромб|C++]] | | + | [[Практикум по программированию. Основы. Ветвление. Точка и ромб#C++|C++]] · |
− | [[Практикум по программированию. Основы. Ветвление. Точка и ромб|Pascal]] | + | [[Практикум по программированию. Основы. Ветвление. Точка и ромб#Python|Python]] · |
+ | [[Практикум по программированию. Основы. Ветвление. Точка и ромб#Pascal|Pascal]] · | ||
+ | [[Практикум по программированию. Основы. Ветвление. Точка и ромб#JavaScript|JavaScript]] | ||
6. Заданы размеры A, B прямоугольного отверстия и размеры X, Y, Z кирпича. Определить, проходит ли кирпич через отверстие. | 6. Заданы размеры A, B прямоугольного отверстия и размеры X, Y, Z кирпича. Определить, проходит ли кирпич через отверстие. | ||
− | + | <pre> | |
+ | Пример интерфейса: | ||
+ | |||
+ | Определить, проходит ли кирпич | ||
+ | через прямоугольное отверстие | ||
+ | -------------------------------- | ||
+ | Введите размеры A и B отверстия: 2 3 | ||
+ | Введите размеры X, Y, Z кирпича: 4 3 2 | ||
+ | -------------------------------- | ||
+ | Кирпич размером 4,00 x 3,00 x 2,00 входит в отверстие 2,00 x 3,00 | ||
+ | </pre> | ||
Решение: | Решение: | ||
− | [[Практикум по программированию. Основы. Ветвление. Кирпич и отверстие|Java]] | + | [[Практикум по программированию. Основы. Ветвление. Кирпич и отверстие#Java|Java]] · |
− | [[Практикум по программированию. Основы. Ветвление. Кирпич и отверстие|C++]] | | + | [[Практикум по программированию. Основы. Ветвление. Кирпич и отверстие#C++|C++]] · |
− | [[Практикум по программированию. Основы. Ветвление. Кирпич и отверстие|Pascal]] | + | [[Практикум по программированию. Основы. Ветвление. Кирпич и отверстие#Python|Python]] · |
+ | [[Практикум по программированию. Основы. Ветвление. Кирпич и отверстие#Pascal|Pascal]] · | ||
+ | [[Практикум по программированию. Основы. Ветвление. Кирпич и отверстие#JavaScript|JavaScript]] | ||
7. Известна P - заработная плата сотрудника. Вычислить величину подоходного налога N. | 7. Известна P - заработная плата сотрудника. Вычислить величину подоходного налога N. | ||
− | + | <pre> | |
− | + | Налог с зарплаты, не превышающей 8500 руб. не взимается; | |
− | + | налог с зарплаты 20000 руб., составляет 8.2%; | |
+ | если зарплата больше 20000 руб., то налог: (8.2 + 0.13 * (p - 20000) / 1000)% | ||
+ | |||
+ | Пример интерфейса: | ||
+ | |||
+ | Расчет подоходного налога | ||
+ | --------------------------- | ||
+ | Введите зарплату сотрудника: 50000 | ||
+ | --------------------------- | ||
+ | Подоходный налог с зарплаты 50000,00 руб - составляет 6050,00 руб | ||
+ | </pre> | ||
Решение: | Решение: | ||
− | [[Практикум по программированию. Основы. Ветвление. Подоходный налог|Java]] | + | [[Практикум по программированию. Основы. Ветвление. Подоходный налог#Java|Java]] · |
− | [[Практикум по программированию. Основы. Ветвление. Подоходный налог|C++]] | | + | [[Практикум по программированию. Основы. Ветвление. Подоходный налог#C++|C++]] · |
− | [[Практикум по программированию. Основы. Ветвление. Подоходный налог|Pascal]] | + | [[Практикум по программированию. Основы. Ветвление. Подоходный налог#Python|Python]] · |
+ | [[Практикум по программированию. Основы. Ветвление. Подоходный налог#Pascal|Pascal]] · | ||
+ | [[Практикум по программированию. Основы. Ветвление. Подоходный налог#JavaScript|JavaScript]] | ||
8. Даны числа: A, B, C. Определить, являются ли они членами арифметической прогрессии. | 8. Даны числа: A, B, C. Определить, являются ли они членами арифметической прогрессии. | ||
− | + | <pre> | |
+ | Являются, если B - A = C - B | ||
+ | |||
+ | Пример интерфейса: | ||
+ | |||
+ | Определить, являются ли числа A, B, C | ||
+ | членами арифметической прогрессии | ||
+ | --------------------------------------- | ||
+ | Введите числа A B C (через пробел): 2 4 8 | ||
+ | --------------------------------------- | ||
+ | Числа 2,00, 4,00, 8,00 - не являются членами арифметической прогрессии | ||
+ | </pre> | ||
Решение: | Решение: | ||
− | [[Практикум по программированию. Основы. Ветвление. Арифметическая прогрессия|Java]] | + | [[Практикум по программированию. Основы. Ветвление. Арифметическая прогрессия#Java|Java]] · |
− | [[Практикум по программированию. Основы. Ветвление. Арифметическая прогрессия|C++]] | | + | [[Практикум по программированию. Основы. Ветвление. Арифметическая прогрессия#C++|C++]] · |
− | [[Практикум по программированию. Основы. Ветвление. Арифметическая прогрессия|Pascal]] | + | [[Практикум по программированию. Основы. Ветвление. Арифметическая прогрессия#Python|Python]] · |
+ | [[Практикум по программированию. Основы. Ветвление. Арифметическая прогрессия#Pascal|Pascal]] · | ||
+ | [[Практикум по программированию. Основы. Ветвление. Арифметическая прогрессия#JavaScript|JavaScript]] | ||
9. A, B, C, D - длины сторон выпуклого четырехугольника. Можно ли в него вписать окружность. | 9. A, B, C, D - длины сторон выпуклого четырехугольника. Можно ли в него вписать окружность. | ||
− | + | <pre> | |
+ | Можно, если A + C = B + D | ||
+ | |||
+ | Пример интерфейса: | ||
+ | |||
+ | Определить, можно ли вписать окружность | ||
+ | в выпуклый четырехугольник | ||
+ | ----------------------------------------- | ||
+ | Введите стороны четырехугольника A B C D: 2 1 3 4 | ||
+ | ----------------------------------------- | ||
+ | В четырехугольник со сторонами 2,00, 1,00, 3,00, 4,00 - можно вписать окружность | ||
+ | </pre> | ||
Решение: | Решение: | ||
− | [[Практикум по программированию. Основы. Ветвление. Вписанная окружность|Java]] | + | [[Практикум по программированию. Основы. Ветвление. Вписанная окружность#Java|Java]] · |
− | [[Практикум по программированию. Основы. Ветвление. Вписанная окружность|C++]] | | + | [[Практикум по программированию. Основы. Ветвление. Вписанная окружность#C++|C++]] · |
− | [[Практикум по программированию. Основы. Ветвление. Вписанная окружность|Pascal]] | + | [[Практикум по программированию. Основы. Ветвление. Вписанная окружность#Python|Python]] · |
+ | [[Практикум по программированию. Основы. Ветвление. Вписанная окружность#Pascal|Pascal]] · | ||
+ | [[Практикум по программированию. Основы. Ветвление. Вписанная окружность#JavaScript|JavaScript]] | ||
+ | |||
+ | |||
+ | 10. A, B, C - длины трех отрезков. Если отрезки могут быть сторонами треугольника, то найти: его периметр и площадь; радиус вписанной в треугольник и описанной около него окружности. | ||
+ | <pre> | ||
+ | Если P * (P - A) * (P - B) * (P - C) > 0, то ABC – треугольник | ||
+ | P = (A + B + C) / 2 | ||
+ | S = sqrt(P * (P - A) * (P - B) * (P - C)) | ||
+ | R(впис) = S / P | ||
+ | R(опис) = A * B * C / (4 * S) | ||
+ | Пример интерфейса: | ||
− | + | Расчет: периметра и площади треугольника; | |
− | + | радиуса вписанной в треугольник окружности; | |
− | + | радиуса окружности, описанной около него. | |
− | + | --------------------------------------------- | |
− | + | Введите длины трех отрезков A B C: 1 1 1 | |
− | + | --------------------------------------------- | |
− | + | Периметр треугольника: 3,00 | |
+ | Площадь треугольника: 0,43 | ||
+ | Радиус вписанной окружности: 0,29 | ||
+ | Радиус описанной окружности: 0,58 | ||
+ | </pre> | ||
Решение: | Решение: | ||
− | [[Практикум по программированию. Основы. Ветвление. Проверка треугольника|Java]] | + | [[Практикум по программированию. Основы. Ветвление. Проверка треугольника#Java|Java]] · |
− | [[Практикум по программированию. Основы. Ветвление. Проверка треугольника|C++]] | | + | [[Практикум по программированию. Основы. Ветвление. Проверка треугольника#C++|C++]] · |
− | [[Практикум по программированию. Основы. Ветвление. Проверка треугольника|Pascal]] | + | [[Практикум по программированию. Основы. Ветвление. Проверка треугольника#Python|Python]] · |
+ | [[Практикум по программированию. Основы. Ветвление. Проверка треугольника#Pascal|Pascal]] · | ||
+ | [[Практикум по программированию. Основы. Ветвление. Проверка треугольника#JavaScript|JavaScript]] | ||
− | 11. | + | 11. Прямоугольник задан диагональю: (X1, Y1), (X2, Y2). Определить площадь части прямоугольника, расположенной в первой координатной четверти. |
− | Определить площадь части прямоугольника, расположенной в первой координатной четверти. | + | <pre> |
− | + | Задачу решать в предположении: X1 < X2, Y1 < Y2 | |
+ | |||
+ | Пример интерфейса: | ||
+ | |||
+ | Определение площади фрагмента прямоугольника | ||
+ | расположенного в первой координатной четверти | ||
+ | ----------------------------------------------- | ||
+ | Координаты левой нижей вершины X1 Y1: -2 1 | ||
+ | Координаты правой верхней вершины X2 Y2: 2 2 | ||
+ | ----------------------------------------------- | ||
+ | Искомая плошадь S = 2,00 | ||
+ | </pre> | ||
Решение: | Решение: | ||
− | [[Практикум по программированию. Основы. Ветвление. Площадь фрагмента|Java]] | + | [[Практикум по программированию. Основы. Ветвление. Площадь фрагмента#Java|Java]] · |
− | [[Практикум по программированию. Основы. Ветвление. Площадь фрагмента|C++]] | | + | [[Практикум по программированию. Основы. Ветвление. Площадь фрагмента#C++|C++]] · |
− | [[Практикум по программированию. Основы. Ветвление. Площадь фрагмента|Pascal]] | + | [[Практикум по программированию. Основы. Ветвление. Площадь фрагмента#Python|Python]] · |
+ | [[Практикум по программированию. Основы. Ветвление. Площадь фрагмента#Pascal|Pascal]] · | ||
+ | [[Практикум по программированию. Основы. Ветвление. Площадь фрагмента#JavaScript|JavaScript]] | ||
+ | |||
+ | |||
+ | 12. Найти решение системы уравнений:<br> | ||
+ | A * X + B * Y = C<br> | ||
+ | D * X + E * Y = F | ||
+ | <pre> | ||
+ | Система имеет единственное решение, если: | ||
+ | A / D <> B / E (прямые A * X + B * Y = C и D * X + E * Y = F пересекаются); | ||
+ | имеет бесконечно много решений, если: | ||
+ | A / D = B / E = C / F (прямые сливаются); | ||
+ | система не имеет решений, если: | ||
+ | A / D = B / E, но A / D <> C / F | ||
+ | Пример интерфейса: | ||
− | + | Решение системы уравнений: | |
− | + | A * X + B * Y = C и D * X + E * Y = F | |
− | + | ----------------------------------------- | |
− | имеет | + | Введите A B C D E F: 1 1 1 2 3 4 |
− | + | ----------------------------------------- | |
− | + | Система имеет единственное решение: X = -1,00, Y = 2,00 | |
− | + | </pre> | |
Решение: | Решение: | ||
− | [[Практикум по программированию. Основы. Ветвление. Система уравнений|Java]] | + | [[Практикум по программированию. Основы. Ветвление. Система уравнений#Java|Java]] · |
− | [[Практикум по программированию. Основы. Ветвление. Система уравнений|C++]] | | + | [[Практикум по программированию. Основы. Ветвление. Система уравнений#C++|C++]] · |
− | [[Практикум по программированию. Основы. Ветвление. Система уравнений|Pascal]] | + | [[Практикум по программированию. Основы. Ветвление. Система уравнений#Python|Python]] · |
+ | [[Практикум по программированию. Основы. Ветвление. Система уравнений#Pascal|Pascal]] · | ||
+ | [[Практикум по программированию. Основы. Ветвление. Система уравнений#JavaScript|JavaScript]] | ||
− | 13. На плоскости заданы точки M1(X1, Y1), M2(X2, Y2), N1(X3, Y3), N2(X4, Y4) | + | 13. На плоскости заданы точки M1(X1, Y1), M2(X2, Y2), N1(X3, Y3), N2(X4, Y4). Проверить, являются ли параллельными прямые, одна из которых проходит через точки M1, M2, другая - через точки N1, N2. Если прямые пересекаются, найти точки пересечения. |
− | Проверить, являются ли параллельными прямые, | + | <pre> |
− | одна из которых проходит через точки M1, M2, другая - через точки N1, N2 | + | Условие параллельности: |
− | Если прямые пересекаются, найти точки пересечения. | + | A = C, при A = (Y2 - Y1) / (X2 - X1) и C = (Y4 - Y3) / (X4 - X3) |
− | + | Если прямые пересекаются, то: | |
− | + | X = (E - F) / (C - A) + 1 и Y = B + A * X, | |
− | + | где E = Y1 + A * X1, F = Y3 + A * X3, B = Y1 - A * X1 | |
− | + | ||
− | + | Пример интерфейса: | |
+ | |||
+ | </pre> | ||
Решение: | Решение: | ||
− | [[Практикум по программированию. Основы. Ветвление. Параллельность прямых|Java]] | + | [[Практикум по программированию. Основы. Ветвление. Параллельность прямых#Java|Java]] · |
− | [[Практикум по программированию. Основы. Ветвление. Параллельность прямых|C++]] | | + | [[Практикум по программированию. Основы. Ветвление. Параллельность прямых#C++|C++]] · |
− | [[Практикум по программированию. Основы. Ветвление. Параллельность прямых|Pascal]] | + | [[Практикум по программированию. Основы. Ветвление. Параллельность прямых#Python|Python]] · |
+ | [[Практикум по программированию. Основы. Ветвление. Параллельность прямых#Pascal|Pascal]] · | ||
+ | [[Практикум по программированию. Основы. Ветвление. Параллельность прямых#JavaScript|JavaScript]] | ||
− | 14. Найти | + | 14. Найти точки пересечения прямой Y = K * X + B и окружности радиуса R с центром в начале координат. |
− | + | ||
Необходимо решить систему уравнений: | Необходимо решить систему уравнений: | ||
X<sup>2</sup> + Y<sup>2</sup> = R<sup>2</sup> и Y = K * X + B | X<sup>2</sup> + Y<sup>2</sup> = R<sup>2</sup> и Y = K * X + B | ||
+ | | ||
+ | Пример интерфейса: | ||
+ | | ||
+ | Поиск точек пересечения прямой Y = K * X + B | ||
+ | и окружности с центром в начале координат | ||
+ | ---------------------------------------------- | ||
+ | Введите коэффициент K: 1 | ||
+ | Введите коэффициент B: 1 | ||
+ | Радиус окружности R: 2 | ||
+ | ---------------------------------------------- | ||
+ | Прямая Y = 1,00 * X + 1,00 с окружностью радиусом R = 2,00 | ||
+ | пересекается в точках: | ||
+ | X1 = -1,82; Y1 = -0,82 | ||
+ | X2 = 0,82; Y2 = 1,82 | ||
Решение: | Решение: | ||
− | [[Практикум по программированию. Основы. Ветвление. Прямая и окружность|Java]] | + | [[Практикум по программированию. Основы. Ветвление. Прямая и окружность#Java|Java]] · |
− | [[Практикум по программированию. Основы. Ветвление. Прямая и окружность|C++]] | | + | [[Практикум по программированию. Основы. Ветвление. Прямая и окружность#C++|C++]] · |
− | [[Практикум по программированию. Основы. Ветвление. Прямая и окружность|Pascal]] | + | [[Практикум по программированию. Основы. Ветвление. Прямая и окружность#Python|Python]] · |
+ | [[Практикум по программированию. Основы. Ветвление. Прямая и окружность#Pascal|Pascal]] · | ||
+ | [[Практикум по программированию. Основы. Ветвление. Прямая и окружность#JavaScript|JavaScript]] | ||
− | 15. Известен шестизначный номер автобусного билета. Определить, является ли билет счастливым | + | 15. Известен шестизначный номер автобусного билета. Определить, является ли билет счастливым (сумма трех первых цифр номера равна сумме трех его последних цифр). |
− | + | <pre> | |
− | + | Необходимо 'разобрать' номер на цифры, | |
− | + | сформировать суммы из трех старших и трех младших цифр, | |
− | + | если полученные суммы равны, то билет счастливый. | |
+ | |||
+ | Пример интерфейса: | ||
+ | |||
+ | Проверка 'Счастливого' билета | ||
+ | ------------------------------- | ||
+ | Введите шестизначный номер: 123312 | ||
+ | ------------------------------- | ||
+ | Билет 123312 счастливый | ||
+ | </pre> | ||
Решение: | Решение: | ||
− | [[Практикум по программированию. Основы. Ветвление. Счастливый билет|Java]] | + | [[Практикум по программированию. Основы. Ветвление. Счастливый билет#Java|Java]] · |
− | [[Практикум по программированию. Основы. Ветвление. Счастливый билет|C++]] | | + | [[Практикум по программированию. Основы. Ветвление. Счастливый билет#C++|C++]] · |
− | [[Практикум по программированию. Основы. Ветвление. Счастливый билет|Pascal]] | + | [[Практикум по программированию. Основы. Ветвление. Счастливый билет#Python|Python]] · |
+ | [[Практикум по программированию. Основы. Ветвление. Счастливый билет#Pascal|Pascal]] · | ||
+ | [[Практикум по программированию. Основы. Ветвление. Счастливый билет#JavaScript|JavaScript]] | ||
16. Определить, является ли год високосным. | 16. Определить, является ли год високосным. | ||
− | + | <pre> | |
− | + | Год не является високосным, если: | |
− | + | он не кратен 4, либо он кратен 100, но при этом не кратен 400 | |
+ | |||
+ | Пример интерфейса: | ||
+ | |||
+ | Проверка года на високосность | ||
+ | ------------------------------- | ||
+ | Введите год (2017): 2016 | ||
+ | ------------------------------- | ||
+ | Год високосный | ||
+ | </pre> | ||
Решение: | Решение: | ||
− | [[Практикум по программированию. Основы. Ветвление. Високосный год|Java]] | + | [[Практикум по программированию. Основы. Ветвление. Високосный год#Java|Java]] · |
− | [[Практикум по программированию. Основы. Ветвление. Високосный год|C++]] | | + | [[Практикум по программированию. Основы. Ветвление. Високосный год#C++|C++]] · |
− | [[Практикум по программированию. Основы. Ветвление. Високосный год|Pascal]] | + | [[Практикум по программированию. Основы. Ветвление. Високосный год#Python|Python]] · |
+ | [[Практикум по программированию. Основы. Ветвление. Високосный год#Pascal|Pascal]] · | ||
+ | [[Практикум по программированию. Основы. Ветвление. Високосный год#JavaScript|JavaScript]] | ||
Line 174: | Line 379: | ||
где L - расстояние от центра сферы до исследуемой точки, | где L - расстояние от центра сферы до исследуемой точки, | ||
E0 - диэлектрическая проницаемость среды (для вакуума E0 = 1) | E0 - диэлектрическая проницаемость среды (для вакуума E0 = 1) | ||
+ | | ||
+ | Пример интерфейса: | ||
+ | | ||
+ | Расчет напряженности электростатического поля сферы | ||
+ | --------------------------------------------------- | ||
+ | Введите заряд сферы: 1 | ||
+ | Введите радиус сферы: 1 | ||
+ | Расстояние от центра сферы до исследуемой точки: 2 | ||
+ | --------------------------------------------------- | ||
+ | Напряженность поля E = 0,25 в/м | ||
Решение: | Решение: | ||
− | [[Практикум по программированию. Основы. Ветвление. Поле сферы|Java]] | + | [[Практикум по программированию. Основы. Ветвление. Поле сферы#Java|Java]] · |
− | [[Практикум по программированию. Основы. Ветвление. Поле сферы|C++]] | | + | [[Практикум по программированию. Основы. Ветвление. Поле сферы#C++|C++]] · |
− | [[Практикум по программированию. Основы. Ветвление. Поле сферы|Pascal]] | + | [[Практикум по программированию. Основы. Ветвление. Поле сферы#Python|Python]] · |
+ | [[Практикум по программированию. Основы. Ветвление. Поле сферы#Pascal|Pascal]] · | ||
+ | [[Практикум по программированию. Основы. Ветвление. Поле сферы#JavaScript|JavaScript]] | ||
---- | ---- | ||
− | [[Практикум по программированию. Основы. Ввод и вывод|Назад]] | + | [[Практикум по программированию. Основы. Ввод и вывод|Назад]] · |
+ | [[Практикум по программированию. Основы|Оглавление]] · | ||
+ | [[Практикум по программированию. Основы. Циклы|Дальше]] | ||
</div> | </div> |
Latest revision as of 20:07, 19 November 2017
Назад · Оглавление · Дальше
[edit] Ветвление
1. Найти корни уравнения A * X2 + B * X + C = 0
Вычислить дискриминант D = B2 - 4 * A * C если D < 0, то уравнение корней не имеет; если D = 0, то X = -B / (2 * A) если D > 0: X1 = (-B + SQRT(D)) / (2 * A) X2 = (-B - SQRT(D)) / (2 * A) Пример интерфейса: Поиск корней уравнения A * X^2 + B * X + C = 0 ------------------------------------------------ Введите A: 2 Введите B: 4 Введите C: 1 ------------------------------------------------ X1 = -0,293 X2 = -1,707
Решение: Java · C++ · Python · Pascal · JavaScript
2. Ракета запускается с точки на экваторе и развивает скорость V км/с. Определить результат запуска.
Если V < 7.8 км/с, ракета упадет на Землю; если 7.8 < V < 11.2, ракета станет спутником Земли; если 11.2 < V < 16.4, ракета станет спутником Солнца; если V > 16.4, ракета покинет Солнечную систему. Пример интерфейса: Определение результата запуска ракеты --------------------------------------- После запуска, ракета развивает скорость: 12 --------------------------------------- Ракета станет спутником Солнца
Решение: Java · C++ · Python · Pascal · JavaScript
3. Автомат отпускает максимум N единиц товара. Известна стоимость одной единицы товара Z и сумма денег, имеющаяся у покупателя S. Сколько единиц товара может получить покупатель и какова сдача?
Рассмотреть ситуации, когда ресурсы покупателя больше и меньше возможностей автомата. Пример интерфейса: Расчет количества единиц товара и сдачи ----------------------------------------- Введите общее количество единиц товара: 30 Введите стоимость одной единицы товара: 110,50 Введите сумму денег у покупателя: 1000 ----------------------------------------- Покупаем 9 единиц товара Сдача: 5,50 руб. У автомата остается 21 единиц товара
Решение: Java · C++ · Python · Pascal · JavaScript
4. Даны площадь круга Skr и площадь квадрата Skv. Определить, поместится ли квадрат в круг.
Поместится, если Skr >= Skv * Pi / 2 Пример интерфейса: Поместится ли квадрат в круг? ------------------------------- Введите площадь круга: 1,58 Введите площадь квадрата: 1 ------------------------------- Квадрат поместится в круг
Решение: Java · C++ · Python · Pascal · JavaScript
5. Принадлежит ли точка M с координатами (X, Y) фигуре на плоскости, ограниченной линией проходящей через точки: (1, 0), (0, 1), (-1, 0), (0, -1)
Принадлежит, если |X| + |Y| <= 1 Пример интерфейса: Принадлежит ли точка фигуре на плоскости ограниченной линией проходящей через точки (1, 0), (0, 1), (-1, 0), (0, -1) -------------------------------------------- Введите координату X точки: 1 Введите координату Y точки: 1 -------------------------------------------- Точка M(1,00; 1,00) не принадлежит этой фигуре
Решение: Java · C++ · Python · Pascal · JavaScript
6. Заданы размеры A, B прямоугольного отверстия и размеры X, Y, Z кирпича. Определить, проходит ли кирпич через отверстие.
Пример интерфейса: Определить, проходит ли кирпич через прямоугольное отверстие -------------------------------- Введите размеры A и B отверстия: 2 3 Введите размеры X, Y, Z кирпича: 4 3 2 -------------------------------- Кирпич размером 4,00 x 3,00 x 2,00 входит в отверстие 2,00 x 3,00
Решение: Java · C++ · Python · Pascal · JavaScript
7. Известна P - заработная плата сотрудника. Вычислить величину подоходного налога N.
Налог с зарплаты, не превышающей 8500 руб. не взимается; налог с зарплаты 20000 руб., составляет 8.2%; если зарплата больше 20000 руб., то налог: (8.2 + 0.13 * (p - 20000) / 1000)% Пример интерфейса: Расчет подоходного налога --------------------------- Введите зарплату сотрудника: 50000 --------------------------- Подоходный налог с зарплаты 50000,00 руб - составляет 6050,00 руб
Решение: Java · C++ · Python · Pascal · JavaScript
8. Даны числа: A, B, C. Определить, являются ли они членами арифметической прогрессии.
Являются, если B - A = C - B Пример интерфейса: Определить, являются ли числа A, B, C членами арифметической прогрессии --------------------------------------- Введите числа A B C (через пробел): 2 4 8 --------------------------------------- Числа 2,00, 4,00, 8,00 - не являются членами арифметической прогрессии
Решение: Java · C++ · Python · Pascal · JavaScript
9. A, B, C, D - длины сторон выпуклого четырехугольника. Можно ли в него вписать окружность.
Можно, если A + C = B + D Пример интерфейса: Определить, можно ли вписать окружность в выпуклый четырехугольник ----------------------------------------- Введите стороны четырехугольника A B C D: 2 1 3 4 ----------------------------------------- В четырехугольник со сторонами 2,00, 1,00, 3,00, 4,00 - можно вписать окружность
Решение: Java · C++ · Python · Pascal · JavaScript
10. A, B, C - длины трех отрезков. Если отрезки могут быть сторонами треугольника, то найти: его периметр и площадь; радиус вписанной в треугольник и описанной около него окружности.
Если P * (P - A) * (P - B) * (P - C) > 0, то ABC – треугольник P = (A + B + C) / 2 S = sqrt(P * (P - A) * (P - B) * (P - C)) R(впис) = S / P R(опис) = A * B * C / (4 * S) Пример интерфейса: Расчет: периметра и площади треугольника; радиуса вписанной в треугольник окружности; радиуса окружности, описанной около него. --------------------------------------------- Введите длины трех отрезков A B C: 1 1 1 --------------------------------------------- Периметр треугольника: 3,00 Площадь треугольника: 0,43 Радиус вписанной окружности: 0,29 Радиус описанной окружности: 0,58
Решение: Java · C++ · Python · Pascal · JavaScript
11. Прямоугольник задан диагональю: (X1, Y1), (X2, Y2). Определить площадь части прямоугольника, расположенной в первой координатной четверти.
Задачу решать в предположении: X1 < X2, Y1 < Y2 Пример интерфейса: Определение площади фрагмента прямоугольника расположенного в первой координатной четверти ----------------------------------------------- Координаты левой нижей вершины X1 Y1: -2 1 Координаты правой верхней вершины X2 Y2: 2 2 ----------------------------------------------- Искомая плошадь S = 2,00
Решение: Java · C++ · Python · Pascal · JavaScript
12. Найти решение системы уравнений:
A * X + B * Y = C
D * X + E * Y = F
Система имеет единственное решение, если: A / D <> B / E (прямые A * X + B * Y = C и D * X + E * Y = F пересекаются); имеет бесконечно много решений, если: A / D = B / E = C / F (прямые сливаются); система не имеет решений, если: A / D = B / E, но A / D <> C / F Пример интерфейса: Решение системы уравнений: A * X + B * Y = C и D * X + E * Y = F ----------------------------------------- Введите A B C D E F: 1 1 1 2 3 4 ----------------------------------------- Система имеет единственное решение: X = -1,00, Y = 2,00
Решение: Java · C++ · Python · Pascal · JavaScript
13. На плоскости заданы точки M1(X1, Y1), M2(X2, Y2), N1(X3, Y3), N2(X4, Y4). Проверить, являются ли параллельными прямые, одна из которых проходит через точки M1, M2, другая - через точки N1, N2. Если прямые пересекаются, найти точки пересечения.
Условие параллельности: A = C, при A = (Y2 - Y1) / (X2 - X1) и C = (Y4 - Y3) / (X4 - X3) Если прямые пересекаются, то: X = (E - F) / (C - A) + 1 и Y = B + A * X, где E = Y1 + A * X1, F = Y3 + A * X3, B = Y1 - A * X1 Пример интерфейса:
Решение: Java · C++ · Python · Pascal · JavaScript
14. Найти точки пересечения прямой Y = K * X + B и окружности радиуса R с центром в начале координат.
Необходимо решить систему уравнений: X2 + Y2 = R2 и Y = K * X + B Пример интерфейса: Поиск точек пересечения прямой Y = K * X + B и окружности с центром в начале координат ---------------------------------------------- Введите коэффициент K: 1 Введите коэффициент B: 1 Радиус окружности R: 2 ---------------------------------------------- Прямая Y = 1,00 * X + 1,00 с окружностью радиусом R = 2,00 пересекается в точках: X1 = -1,82; Y1 = -0,82 X2 = 0,82; Y2 = 1,82
Решение: Java · C++ · Python · Pascal · JavaScript
15. Известен шестизначный номер автобусного билета. Определить, является ли билет счастливым (сумма трех первых цифр номера равна сумме трех его последних цифр).
Необходимо 'разобрать' номер на цифры, сформировать суммы из трех старших и трех младших цифр, если полученные суммы равны, то билет счастливый. Пример интерфейса: Проверка 'Счастливого' билета ------------------------------- Введите шестизначный номер: 123312 ------------------------------- Билет 123312 счастливый
Решение: Java · C++ · Python · Pascal · JavaScript
16. Определить, является ли год високосным.
Год не является високосным, если: он не кратен 4, либо он кратен 100, но при этом не кратен 400 Пример интерфейса: Проверка года на високосность ------------------------------- Введите год (2017): 2016 ------------------------------- Год високосный
Решение: Java · C++ · Python · Pascal · JavaScript
17. Заряд Q равномерно распределен на сфере радиуса R. Найти напряженность электростатического поля сферы.
Если L >= R то E = Q / (E0 * L2) иначе E = 0, где L - расстояние от центра сферы до исследуемой точки, E0 - диэлектрическая проницаемость среды (для вакуума E0 = 1) Пример интерфейса: Расчет напряженности электростатического поля сферы --------------------------------------------------- Введите заряд сферы: 1 Введите радиус сферы: 1 Расстояние от центра сферы до исследуемой точки: 2 --------------------------------------------------- Напряженность поля E = 0,25 в/м
Решение: Java · C++ · Python · Pascal · JavaScript
Назад · Оглавление · Дальше