Задача. Даны действительные числа [latex]x, y[/latex]. Определить, принадлежит ли точка с координатам [latex]x, y[/latex] заштрихованной части плоскости (рис. ниже).
1 2 3 4 5 6 7 8 9 10 11 12 13 |
#include <iostream> #include <math.h> using namespace std; int main() { double x,y; cin >> x >> y; if(y>=(-2)&&fabs(x)<=1&&y<=fabs(x))//проверяем лежит ли у выше нижней линии,потом ограничен ли х он прямыми 1 и -1,потом диагонали-это функция у=|x| cout << "Yes" << endl; else cout << "No" << endl; return 0; } |
Объявляем две переменные [latex]x,y[/latex] типа [latex]double[/latex] (точки могут иметь дробные координаты). Читаем координаты точки. В условии проверяем три пункта:
- Лежит ли [latex]y[/latex] выше [latex]-2[/latex] [latex](y>=-2)[/latex].
- Находится ли точка между двумя прямыми [latex](|x|<=1)[/latex].
- Лежит ли точка ниже диагоналей,описанных функцией [latex]y=|x|[/latex].
Если все эти три условия соблюдены, то точка находится в закрашенной области, иначе вне этой области.
Реализация на Java:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
/* package whatever; // don't place package name! */ import java.util.*; import java.lang.*; import java.io.*; /* Name of the class has to be "Main" only if the class is public. */ class Ideone{ static double fabs(double x){ return x > 0? x:-x; } public static void main (String[] args) { double d1, d2;//переменные для определения длинны до центра круга при радиусе r Scanner in = new Scanner(System.in); double x = in.nextDouble(),y = in.nextDouble(); if(y >= (-2) && fabs(x) <= 1 && y <= fabs(x))//проверяем лежит ли у выше нижней линии,потом ограничен ли х он прямыми 1 и -1,потом диагонали-это функция у=|x| System.out.println("Yes"); else System.out.println("No"); } } |
— Нет меток (ключевых слов). Посмотрите у кого-нибудь из успевающих студентов, как это может выглядеть.
— Уберите повтор названия задачи «А59з» в тексте.
— Исправьте, пожалуйста, кодирование списка в отчёте. Для списков есть кнопки (и соответствующие теги html)
— Посмотрите, пожалуйста, этот материал и внесите исправления во ВСЕ свои работы. Эта проблема встречается у Вас часто.
Исправил.
Нет
Поставьте пробелы и подберите ключевые слова, пожалуйста.
«(рис ниже (сам рисовал) )» — уберите, пожалуйста этот текст. Если рисунок в SVG закодирован, то можно мне написать и я учту это оценке работы. У Вас обычный растр. Его лучше было скопировать из задачника. Там крупнее и аккуратнее. Но можно оставить и так. Только без детского текста.
Засчитано. Молодец.
Поправьте только отступ в 10-й строке.
Java-версия засчитана, 5 баллов. Только зачем описывать fabs, чем Math.abs не угодило?