Практикум по программированию. Основы. Ветвление

From AsIsWiki
Revision as of 11:20, 12 March 2016 by Alex (Talk | contribs)

Jump to: navigation, search

Назад · Оглавление · Дальше


Ветвление

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: 5
 Введите C: 1
------------------------------------------------
 X1 = -0,219
 X2 = -2,281

Решение: Java · C++ · Pascal


2. Ракета запускается с точки на экваторе и развивает скорость V км/с. Определить результат запуска.

Если V < 7.8 км/с, ракета упадет на Землю;
если 7.8 < V < 11.2, ракета станет спутником Земли;
если 11.2 < V < 16.4, ракета станет спутником Солнца;
если V > 16.4, ракета покинет Солнечную систему.

Решение: Java · C++ · Pascal


3. Автомат отпускает максимум N единиц товара. Известна стоимость одной единицы товара Z и сумма денег, имеющаяся у покупателя S.
Сколько единиц товара может получить покупатель и какова сдача?

Рассмотреть ситуации, 
когда ресурсы покупателя больше и меньше возможностей автомата.

Решение: Java · C++ · Pascal


4. Даны площадь круга Skr и площадь квадрата Skv. Определить, поместится ли квадрат в круг.

Поместится, если Skv < Skr / (2 * Pi)

Решение: Java · C++ · Pascal


5. Принадлежит ли точка M с координатами (X, Y) фигуре на плоскости, ограниченной линией проходящей через точки: (1, 0), (0, 1), (-1, 0), (0, -1)

Принадлежит, если |X| + |Y| <= 1

Решение: Java · C++ · Pascal


6. Заданы размеры A, B прямоугольного отверстия и размеры X, Y, Z кирпича. Определить, проходит ли кирпич через отверстие.

При решении задачи использовать вложенные условия.

Решение: Java · C++ · Pascal


7. Известна P - заработная плата сотрудника. Вычислить величину подоходного налога N.

Налог с зарплаты, не превышающей 850 руб. не взимается;
налог с зарплаты 2000 руб., составляет 8.2%;
если зарплата больше 2000 руб., то налог: 8.2 + 0.13 * (P - 2000)

Решение: Java · C++ · Pascal


8. Даны числа: A, B, C. Определить, являются ли они членами арифметической прогрессии.

Являются, если B - A = C - B

Решение: Java · C++ · Pascal


9. A, B, C, D - длины сторон выпуклого четырехугольника. Можно ли в него вписать окружность.

Можно, если A + C = B + D

Решение: Java · C++ · Pascal


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)

Решение: Java · C++ · Pascal


11. Заданы координаты вершин прямоугольника: (X1, Y1), (X2, Y2), (X3, Y3), (X4, Y4).
Определить площадь части прямоугольника, расположенной в первой координатной четверти.

Задачу решать в предположении: X1 < X2, Y1 < Y2

Решение: Java · C++ · Pascal


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

Решение: Java · C++ · Pascal


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++ · Pascal


14. Найти координаты точек пересечения прямой Y = K * X + B и окружности радиуса R c центром в начале координат.
Сколько точек пересечения расположено в координатной четверти?

Необходимо решить систему уравнений:
 X2 + Y2 = R2 и Y = K * X + B

Решение: Java · C++ · Pascal


15. Известен шестизначный номер автобусного билета. Определить, является ли билет счастливым.
Билет счастливый, если сумма первых трех чисел номера равна сумме трех его последних цифр.

Необходимо выделить из номера все шесть цифр;
сформировать сумму из трех старших цифр и сумму из трех младших цифр;
если полученные суммы равны, то билет счастливый.

Решение: Java · C++ · Pascal


16. Определить, является ли год високосным.

Год високосный если:
он не кратен 100 и число, изображаемое двумя его младшими цифрами кратно 4
если год кратен 100, то он високосный при условии, что кратен еще и 400

Решение: Java · C++ · Pascal


17. Заряд Q равномерно распределен на сфере радиуса R. Найти напряженность электростатического поля сферы.

Если L >= R то E = Q / (E0 * L2) иначе E = 0,
где L - расстояние от центра сферы до исследуемой точки,
E0 - диэлектрическая проницаемость среды (для вакуума E0 = 1)

Решение: Java · C++ · Pascal



Назад · Оглавление · Дальше

Personal tools
Namespaces

Variants
Actions
Navigation
Tools