Форум программистов, компьютерный форум CyberForum.ru

Определите номер квадранта, в котором находится точка с заданными координатами х,у - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ отсутствуют данные после присваивания(парсер) http://www.cyberforum.ru/cpp-beginners/thread831985.html
Добрый день! Имеется такая вот проблема, отстуствуют данные после присваивания. int SubString(char *buff,char *r_buff, int pos1,int pos2) { /*char *buff - указатель на массив входящего буффера. с которым предстоит работать. char *r_buff - указатель на возвращаемый массив, память для него выделяется в этой функции. int pos1 - Индекс первого элемента с которого нужно начать вырезку. int pos2...
C++ И снова LPT порт и все вытекающие Собственно, проблема: на компе нужно заюзать LPT-порт в качестве банального IO. Грубо говоря: управление схемой (всякие там светодиоды, кнопки, куча всякого прочего железа типа триггеров и т.п.) через этот самый порт. Вроде уже было, но толкового ничего я так и не нашел. Если бы была какая то возможность использования вроде lptwritepin(15,true); lptwritepin(18, false); bool x=lptreadpin(16);... http://www.cyberforum.ru/cpp-beginners/thread831958.html
Необходимо разобраться с FAT. И ее размещением C++
Задали мне написать файловую систему. Задали задание на C++ что меня повергло в ступор, так как вроде бы это дело "глубокого" проганья, да и вообще преподаватель из категории: "FAT32 - не файловая система". Вообщем, ничего конкретного я так и не понял, даже не понял, что же он все-таки хочет, у нас даже лекций углубленных в эту тему не было. Изначальное задание звучало так: "Разработать...
Как объявить функцию, которая имеет место быть только в некоторых дочерних классах, а базовый класс абстрактный? C++
Как объявить функцию, которая имеет место быть только в некоторых дочерних классах? Например //Абстрактный базовый класс class Base{ public: // Возвращаем а_ int getA() {return a_};
C++ Множественное наследование классов http://www.cyberforum.ru/cpp-beginners/thread831935.html
Продемонстрировать множественное наследование при вводе значений переменных различных типов (строкового, целого без знака, целого со знаком, вещественного) с контролем правильности ввода.
C++ Проблемы с наследованием подскажите пожалуйста пишу код, возникла проблема, получается в данном моем коде есть трехмерный масив в базовом класе и есть одномерный массив в класе производном который заполняется произвольным образом и я хочу зделать так что бы трехмерный массив из базового класа заполнялся значениями из одномерного масива производного класа, что-то писал, вот мой код, как его можно подисправить что бы... подробнее

Показать сообщение отдельно
kuli4ok
31 / 31 / 3
Регистрация: 10.10.2012
Сообщений: 88
09.04.2013, 22:23     Определите номер квадранта, в котором находится точка с заданными координатами х,у
Прошу прощения что так поздно ответил, но от работы никуда не деться.
В условиях:
C++
1
2
3
cout << ((X>0&Y>0) ? "2 kvadrant" : "3 kvadrant") << endl;
...
cout << ((X>0&Y<0) ? "2 kvadrant" : "3 kvadrant") << endl;
Допущена ошибка. & - битовый оператор (логическое И).

Вот список операторов отношения и логических операторов (на будущее):
< - меньше
> - больше
<= - меньше или равно
>= - больше или равно
!= - не равно
== - равно (часто забывают. К примеру: if(a=b) сложно заметить в большом коде. Здесь в результате всегда будет true, т.к. выполняется присвоение)
&& - логическое И
|| - логическое ИЛИ
! - логическое НЕ

Так же, если я правильно понял задание, здесь неправильное условие. Это логическая ошибка.
Вы либо ошиблись в условии, либо в выводе, т.к. программа неправильно определяет квадрант. (если речь идет о координатной плоскости)

И еще один нюанс. Если программу будут компилировать в Linux, то компилятор будет ругаться на функцию system(), т.к. она находится в библиотеке stdlib.h. Но, насколько мне известно, эту библиотеку надо подключать только в Linux, т.к. в Windows она подключается автоматически.

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

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <iostream>
#include <stdlib.h>
using namespace std;
 
int main() {
  int X, Y;
   cout << "VVOD KOORDINAT 4ePe3 Probel - X Y: ";
   cin >> X >> Y;
      if ((X*Y>0))  {                                                                                                                          
            cout << ((X>0&&Y>0) ? "1 kvadrant" : "3 kvadrant") << endl;
      } else {
            cout << ((X>0&&Y<0) ? "4 kvadrant" : "2 kvadrant") << endl;
      }
   system("pause>>void");
   return 0;
}
 
Текущее время: 06:47. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru