Размеры шкафа A × B × C. Возможно ли его пронести через дверной проем размерами X × Y? Входные данные
Даны целые числа A, B, C, X, Y (1 ≤ A, B, C, X, Y ≤ 100)
Выходные данные
Программа должна напечатать строку "YES" , если пронести возможно, "NO" – если нельзя.
Примечание:
1) Примените предыдущую задачу, как вс . То есть выполните сначала упорядочивание значений и только потом сравнивайте. Конечно, возможны другие решения.
2) Если дверной проём совпадает с размерами шкафа, то считается, что шкаф пронести можно.
Пусть ΔABC - равнобедренный, АВ = с - его основание, АС = ВС = b - боковые стороны. По условию треугольник симметричен относительно горизонтальной оси, так что его основание АВ должно быть перпендикулярно горизонтальной оси и при этом АО = ОВ, а вершина С попадет на горизонтальную ось. Разместим ΔABC так, чтобы основание попало на вертикальную ось.
Окружность, описанная вокруг треугольника, пройдет через все три его вершины. Точка М - центр описанной окружности, - лежит на пересечении перпендикуляров, проведенных из середин сторон треугольника. Поскольку ΔABC равнобедренный, то ОС - его высота и отрезок МС, равный радиусу окружности R, также лежит на горизонтальной оси.
Найдем высоту ОС, обозначив её через h, по теореме Пифагора.
ОС - это катет ΔAOC, AO ⊥ OC.
Площадь ΔABC находим по формуле
Для нахождения радиуса R = MC рассмотрим прямоугольные ΔAOC и ΔMDC, имеющие общий угол АСО = α
Теперь легко сделать необходимое построение.
Для этого откладываем от начала координат по горизонтальной оси отрезок ОМ и проводим из него, как из центра, окружность радиуса R. Соединяем между собой три точки пересечения окружностью осей координат и получаем треугольник с длинами сторон, равными заданным.
Ниже приводится программа на языке Microsoft QBasic, позволяющая рассчитать длину отрезка ОМ (Mx - координату х точки М) и радиус описанной окружности R по заданной длине основания с и длине боковой стороны b.
INPUT "Основание: ", c
INPUT "Боковая сторона: ", b
h = SQR(b ^ 2 - (c / 2) ^ 2)
R = b ^ 2 / (2 * h)
Mx = h - R
PRINT "Радиус равен "; R, "Координата центра равна "; Mx
Тестовое решение:
Y:\qbasic>QBASIC.EXE
Основание: 6
Боковая сторона: 5
Радиус равен 3.125 Координата центра равна .875
Чтобы продолжить, нажмите любую клавишу
import java.util.Scanner;
public class Authenticator {
public static void main(String[] args) {
String login;
String password;
Scanner scan = new Scanner(System.in);
System.out.println("login:");
login = scan.next();
System.out.println("password:");
password = scan.next();
if(login.equals("user") && password.equals("qwerty")){
System.out.println("Authentication completed");
}else{
System.out.println("Invalid login or password");
}
scan.close();
}
}
Объяснение:
Краткий алгоритм этой программы:Импортируем класс Scanner(для ввода текста);В методе main создаем две переменные типа String и одну типа Scanner;Вводим значения при а;Если логин и пароль верны,то выводим Authentication completed. Иначе выводим Invalid login or password;Закрываем Scanner;