Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.94/18: Рейтинг темы: голосов - 18, средняя оценка - 4.94
0 / 0 / 0
Регистрация: 18.11.2017
Сообщений: 57
1

Квадрат

23.02.2019, 15:03. Показов 3354. Ответов 4
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
В декартовой системе координат нарисован квадрат со стороной А и центром в начале координат. Для заданных точек определите, лежат ли они внутри квадрата или на его границе.
Тестируется по пять точек.
Вот моё решение:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
#include <bits/stdc++.h>
 
 using namespace std;
int main()
{
    //freopen("input.txt","r",stdin);
    //freopen("output.txt","w",stdout);
    double x,y,st;
    string s,s1;
    s="YES";
    s1="NO";
 bool f;
    for (int i=0;i<5;i++)
    {
        cin >> x >> y;
    }
    cin >> st;
    st/=2;
    for (int i=0;i<5;i++)
    {
        if (abs(x)<=abs(st) &&abs(y)<=abs(st) )
        {
            f=true;
        }
 
        else
            {
                f=false;
            }
        if (f == true)
        {
            cout << s << endl;
        }
        else
         {
            cout << s1 << endl;
        }
    }
 
    return 0;
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
23.02.2019, 15:03
Ответы с готовыми решениями:

Класс «Квадрат»: можно ли вписать в объект-квадрат со стороной A окружность радиуса R
Люди помогите, сижу уже неделю, выходит какая-то фигня. Хочу научиться, но тяжеловато) Объясните...

Если квадрат числа меньше 100, напечатать число и его квадрат
Ввести с клавиатуры 10 чисел. Если квадрат числа меньше 100, напечатать число и его квадрат.

Нарисовать квадрат с одинокой звёздочкой в центре. Весь квадрат орисовывается плюсиками
Нарисовать квадрат с одинокой звёздочкой в центре. Весь квадрат орисовывается плюсиками. ...

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

4
Мозгоправ
1744 / 1038 / 468
Регистрация: 01.10.2018
Сообщений: 2,138
Записей в блоге: 2
23.02.2019, 15:38 2
Неправильное решение.
В цикле (строки 13-16) вы принимаете 5 пар значений координат, но записываете их в одни и те же переменные. В итоге в следующем цикле вы будете использовать 5 раз только последнюю пару координат.

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

Если сначала всегда идут 5 пар координат, а после длина стороны квадрата, то координаты придётся запоминать в двумерном массиве (или одномерном массиве структур). А потом, во втором цикле доставать координаты из массива и проверять принадлежность точки квадрату.

Два if, плюс булева переменная для проверки принадлежности точки квадрату явно много. В одном if проверяйте принадлежность и сразу выводите на консоль строку YES или NO.
0
0 / 0 / 0
Регистрация: 18.11.2017
Сообщений: 57
23.02.2019, 15:42  [ТС] 3
Я ещё не проходил двухмерные массивы...
Это значит что я не смогу решить эту задачу?
0
4 / 2 / 2
Регистрация: 23.10.2018
Сообщений: 61
23.02.2019, 17:14 4
Сможете, двумерные массивы это M[i][j] вам надо просто определить эти i и j, например строки:
C++
1
2
3
4
for (int i=0;i<5;i++)
    {
        cin >> x >> y;
    }
заменим переменные х и у на переменную j, то есть представим так:
C++
1
2
3
4
for (int i=0;i<5;i++)
    {
        cin >> M[i][1] >> M[i][2];
    }
Таким образом сможем потом обращаться к полученным массивам, как переделать проверку, поймёте сами)
0
Мозгоправ
1744 / 1038 / 468
Регистрация: 01.10.2018
Сообщений: 2,138
Записей в блоге: 2
23.02.2019, 17:17 5
Цитата Сообщение от MrBubonchik Посмотреть сообщение
Я ещё не проходил двухмерные массивы...
Пройдите. Кто вам мешает?
0
23.02.2019, 17:17
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
23.02.2019, 17:17
Помогаю со студенческими работами здесь

Умножить положительные элементы массива на квадрат наименьшего элемента, а отрицательные - на квадрат наибольшего
Код программы нужен, вот задача: Задано массив P . Умножить все положительные элементы массива на...

Вывести квадрат большего числа и квадрат меньшего
ошибка вывода и не правильный ответ #include &lt;iostream&gt; #include &lt;string&gt; using namespace std;...

Вывести квадрат самого большого из заданных чисел в первую строку, а квадрат самого маленького во вторую
Здравствуйте помогите решить задачу сама по себе задача очень легкая но как ее решить используя...

Магический квадрат (латинский квадрат)
Напишите в С++ программу составления магического квадрата (латинского квадрата) 200-го порядка


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru