Да се създаде библиотека за работа с точки (с файлове tochki.h и tochki.cpp), който съдържа следните функции:
- четене на координатите на точка от клавиатурата
- извеждане на координатите на точка на екрана
- проверка дали две точки съвпадат
- проверка дали дадена точка е на някоя от осите
- проверка в кой квадрант е дадена точка
Напишете програма, която демонстрира тази библиотека.
По желание: Добавете и други функции за работа с точки.


Ето примерния проект с реализирани първите две функции:
File: headers.zip
на Дарин и Мартин решението:
File: tochki.7z
main.cpp:
#include <cstdlib> #include <iostream> #include "tochki.h" using namespace std; int main(int argc, char *argv[]) { tochka a; vavedi(a); izvedi (a); kvadrant (a); system("PAUSE"); return EXIT_SUCCESS; }tochki.cpp:
#include <iostream> #include <cstdlib> #include "tochki.h" using namespace std; void vavedi(tochka &a) { cout<<"Vavedete X i Y na tochkata:"; cin>>a.x>>a.y; } void izvedi(tochka a) { cout<<"Tochkata ima koordinati ("<<a.x<<","<<a.y<<")\n"; } void kvadrant(tochka a) { if ((a.x>0)&&(a.y>0)) cout<<"parvi kvadrant"<<endl; if ((a.x<0)&&(a.y>0)) cout<<"vtori kvadrant"<<endl; if ((a.x<0)&&(a.y<0)) cout<<"treti kvadrant"<<endl; if ((a.x>0)&&(a.y<0)) cout<<"chetvurti kvadrant"<<endl; }tochki.h
#ifndef TOCHKI_HEADER #define TOCHKI_HEADER struct tochka { int x; int y; }; void vavedi(tochka &a); void izvedi(tochka a); void kvadrant (tochka a); #endif // TOCHKI_HEADERВярно! Само че по-универсално щеше да бъде функцията да връща като цяло число квадранта, в който е точката, вместо да го извежда на екрана.
File: tochki.zip
Решение от Николай и мен (Калоян).
tochka.h:
#ifndef TOCHKI_HEADER // служи за предпазване от повторно включване #define TOCHKI_HEADER // служи за предпазване от повторно включване struct tochka // декларираме структура с име tochka { int x; // поле на структура с име x int y; // поле на структура с име y }; void vavedi(tochka &a); // декларираме функция vavedi която не връща резултат и има параметър "a" void izvedi(tochka a); // декларираме функция izvedi която не връща резултат и има параметър "a" #endif // TOCHKI_HEADER // служи за предпазване от повторно включванеmain.cpp:
#include <cstdlib> #include <iostream> #include "tochki.h" using namespace std; int main(int argc, char *argv[]) { tochka a; // деклариране на променлива "а" от тип tochka vavedi(a); // извикваме функция vavedi izvedi (a); // извикваме на функция izvedi system("PAUSE"); return EXIT_SUCCESS; // край на програматаtochka.cpp:
#include <iostream> #include <cstdlib> #include "tochki.h" using namespace std; void vavedi(tochka &a) // декларираме функция vavedi която не връща резултат и има параметър "a" { cout<<"Vavedete X i Y na tochkata:"; // извеждаме на екрана Vavedete X i Y na tochkata cin>>a.x>>a.y; // въвеждаме от клавиатурата a.x въвеждаме a.y } void izvedi(tochka a)// декларираме функция vavedi която не връща резултат и има параметър "a" { cout<<"Tochkata ima koordinati ("<<a.x<<","<<a.y<<")\n"; // извеждаме Tochkata ima koordinatiЛора, tochka.cpp не си я копирала цялата…