С Новым годом! Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.96/47: Рейтинг темы: голосов - 47, средняя оценка - 4.96
0 / 0 / 0
Регистрация: 16.09.2017
Сообщений: 16

Определить номер N области, в которой находится точка М(х,у) с заданными координатами

25.09.2018, 18:37. Показов 8866. Ответов 10
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Определить номер N области, в которой находится точка М(х,у) с заданными координатами. Границы области относить к области с наибольшим номером. Написать код без использования "if", и с комментариями
Миниатюры
Определить номер N области, в которой находится точка М(х,у) с заданными координатами  
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
25.09.2018, 18:37
Ответы с готовыми решениями:

Определить номер области N в которой находится точка М(х,у) с заданными координатами

Определить номер N области, в которой находиться точка M(x,y) с заданными координатами
Определить номер N области, в которой находиться точка M(x,y) с заданными координатами. Границы области относить к области с наибольшим...

Определить для своего варианта номер N области, в которой находиться точка М (х, у) c заданными координатами
Определить для своего варианта номер N области, в которой находиться точка М (х, у) c заданными координатами. Границы области относить к...

10
 Аватар для V_Monomax
1406 / 1260 / 20
Регистрация: 09.08.2011
Сообщений: 2,319
Записей в блоге: 1
25.09.2018, 18:51
и что вы сделали, для этого? Для начала вам надо понять как конструировать каждую из областей!
0
315 / 244 / 149
Регистрация: 03.10.2017
Сообщений: 886
Записей в блоге: 1
25.09.2018, 20:57
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
if (y<0)
{
    if(x>0) Console.WriteLine("N=4");
    else Console.WriteLine("N=3");
}
else
{
    if(x>0)
    { 
        if(y>=x*x) Console.WriteLine("N=2");
        else Console.WriteLine("N=3");
    }
    else
    {
        if(y>=x*x) Console.WriteLine("N=1");
        else Console.WriteLine("N=4");
    }
}
0
Модератор
Эксперт .NET
 Аватар для Элд Хасп
16118 / 11239 / 2887
Регистрация: 21.04.2018
Сообщений: 33,040
Записей в блоге: 2
25.09.2018, 21:07
Masson1848, у Вас ошибка. Для точки (-1, -1) должен выдать 3, у Вас выдаст 1.
0
315 / 244 / 149
Регистрация: 03.10.2017
Сообщений: 886
Записей в блоге: 1
25.09.2018, 21:12
Элд Хасп, Каким образом оно выдаст 1, если y<0 он уйдёт в первую ветку и там выдаст три. Где собственно ошиба?
0
18 / 15 / 8
Регистрация: 24.02.2013
Сообщений: 47
25.09.2018, 21:15
Напишите 4 делегата, в каждый из которых поместите формулу, которая реализует условие для своей области и возвращает номер этой области, либо ноль, если не принадлежит. Это и без If можно сделать. Затем суммируйте результаты выполнения делегатов и на выходе будет как раз номер области.
Возможно, на лекции более изящное решение рассказывали, но я там не был.
0
Модератор
Эксперт .NET
 Аватар для Элд Хасп
16118 / 11239 / 2887
Регистрация: 21.04.2018
Сообщений: 33,040
Записей в блоге: 2
25.09.2018, 21:33
Цитата Сообщение от Masson1848 Посмотреть сообщение
Каким образом оно выдаст 1, если....
Извиняюсь - невнимательность.
0
 Аватар для V_Monomax
1406 / 1260 / 20
Регистрация: 09.08.2011
Сообщений: 2,319
Записей в блоге: 1
26.09.2018, 09:08
Masson1848, if - под запретом!
А я бы пошел по другому:
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
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
public abstract class Area
{
public int AreaId {get;}
public bool Сontains(int X, int Y);
}
 
class FirstArea : Area
{
int id =1;
 
public overide int  AreaId {get{return  id;}}
public overide bool Сontains(int X, int Y)
{
  return X<0 && Y>=X*X;
}
 
class SecondArea : Area
{
...
}
...
class programm
{ 
   void Main()
   {
     WhatAArea();
      Repeat();
    }
   private void WhatAArea()
   {
      Console.WriteLine("Введите значение X /n(целое число, если введете что-то кроме целого числа программа перестанет работать)");
      int X=Convert.Int32(Console.Read());
Console.WriteLine("Введите значение Y /n(целое число, если введете что-то кроме целого числа программа перестанет работать)");
      int Y=Convert.Int32(Console.Read());
      var Anumber =0;
     var Areas = new Area[] {new FirstArea(), new SecondArea(), ...};
     foreach(var a in Areas)
     {
        Anumber =a.Сontains(X,Y)? a.AreaId : Anumber;
     }
       Console.WriteLine("Точка попадает в область {0}",Anumber);
   }
 
  private void Repeat()
  {
    Console.WriteLine("Повторить? y/n");
    var key =Console.Read();
    switch(key.ToLower())
    {
       case "y":
       case "yes":WhatAArea(); break;
      
       default: break;
    }
  } 
}
}
0
204 / 67 / 41
Регистрация: 15.09.2018
Сообщений: 197
27.09.2018, 16:43
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
using System;
 
 
public class Program{
 
    public static void Main(){
 
        double x = -3;
        double y = 3;
        
        double yy = Math.Pow(x,2);
        bool n1 = (y >= yy) && (x <= 0);
        bool n2 = (y >= yy) && !n1;
        bool n3 = (x*y >=0) && !n2;
        bool n4 = !n1 && !n2 && !n3;
        
        int nn1 = BitConverter.GetBytes(n1)[0];
        int nn2 = BitConverter.GetBytes(n2)[0];
        int nn3 = BitConverter.GetBytes(n3)[0];
        int nn4 = BitConverter.GetBytes(n4)[0];
        
        int nn = 1*nn1 + 2*nn2 + 3*nn3 + 4*nn4;
        
        Console.WriteLine(nn);
        
    }
 
}
0
1 / 1 / 0
Регистрация: 25.12.2017
Сообщений: 40
01.11.2018, 13:11
А если такой график?
0
 Аватар для V_Monomax
1406 / 1260 / 20
Регистрация: 09.08.2011
Сообщений: 2,319
Записей в блоге: 1
01.11.2018, 13:54
Цитата Сообщение от Lidasag Посмотреть сообщение
А если такой график?
А если свою ветку создать?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
01.11.2018, 13:54
Помогаю со студенческими работами здесь

Определить номер N области в которой находится точка
Определить для своего варианта номер N области в которой находится точка М (х,у) с заданными координатами. Границы области относить к...

Определить номер области в которой находится точка M(x,y)
В общем сделал я, только не правильно. Помогите исправить ошибки, пожалуйста. using System; using System.Collections.Generic; using...

Определить номер N области в которой находится точка
Определить для своего варианта номер N области в которой находится точка М (х,у) с заданными координатами. Границы области относить к...

Определить для своего варианта номер N области, в которой находится точка M
Определить для своего варианта номер N области, в которой находится точка M(x,y) с заданными координатами. Границы области относить к...

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


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

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Новые блоги и статьи
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru