Симметрия тапсырмасы Берілгені



Дата19.10.2023
өлшемі16,76 Kb.
#119654

Симметрия тапсырмасы
Берілгені:
Многие из вас, вероятно, знакомы с понятием симметрии относительно прямой. Пусть на плоскости расположена прямая L и точка A. Точка B называется симметричной точке A относительно прямой L, если отрезок АВ перпендикулярен прямой L и делится пополам точкой пересечения с ней. В частности, если точка А лежит на прямой L, то точка B совпадает с точкой А.
Задана прямая L, параллельная одной из осей координат, и точка А. Найдите точку В, симметричную А относительно L.
Входные данные
Первая строка входного файла INPUT.TXT содержит 4 числа: x1, y1, x2, y2 – координаты двух различных точек, через которые проходит прямая L. Вторая строка входного файла содержит 2 числа xA и yA – координаты точки А. Все числа во входном файле целые и не превосходят 108 по модулю.
Выходные данные
В выходной файл OUTPUT.TXT выведите числа xB и yB – координаты точки B.

Шығарылу жолы:
#include
using namespace std;
int main()
{
int long long x1, y1, x2, y2, xa, ya, xb, yb;
cin >> x1 >> y1 >> x2 >> y2 >> xa >> ya;
if (x1 == x2){
xb = 2 * x1 - xa;
yb = ya;
}
if (y1 == y2){
xb = xa;
yb = 2 * y1 - ya;
}
cout << xb << " " << yb;
return 0;
}


  1. #include : бұл жолда деректерді енгізу және шығару үшін стандартты C++ библиотека кітапханасы бар.

  2. using namespace std;: бұл жол STD имен кеңістігіндегі стандартты нысандар мен мүмкіндіктерге қол жеткізуді жеңілдетеді.

  3. Int main () функциясының ішінде код нүктелердің координаттарын сақтау үшін long long сияқты бірнеше бүтін айнымалыларды жариялаудан басталады: x1, y1, x2, y2, xa, ya, xb, және yb

  4. cin >> x1 >> y1 >> x2 >> y2 >> xa >> ya;: бұл оператор пернетақтадан X1, y1, x2, y2, xa және Ya координаталарының мәндерін оқиды. Олар C, A және B нүктелерінің координаттарын білдіреді.

  5. Келесі екі шартты if операторы. Олар X1-x2 және y1-y2 сызықтарының параллель екендігін тексереді.

  6. Егер x1 x2 болса, бұл сегменттің тік (у осіне параллель) екенін білдіреді, бұл жағдайда код В нүктесінің координаттарын А нүктесіне қатысты симметриялы деп есептейді.

  7. Егер y1 Y2 болса, бұл сегменттің көлденең (х осіне параллель) екенін білдіреді, бұл жағдайда код В нүктесінің координаттарын А нүктесіне қатысты симметриялы деп есептейді.

  8. Әрбір шартты оператордың ішінде XB және yb айнымалылары В нүктесінің жаңа координат мәндеріне орнатылады, содан кейін бағдарлама келесі қадамға өтеді.

  9. Соңында, код cout операторының көмегімен есептелген В нүктесінің координаттарын шығарады.

  10. return 0;: Код 0-ді қайтару арқылы аяқталады, бұл бағдарламаның сәтті аяқталуын білдіреді.


Бұл код айнымалы ток сегментіне қатысты симметриялы В нүктесін табу тапсырмасын орындайды.


Достарыңызбен бөлісу:




©emirsaba.org 2024
әкімшілігінің қараңыз

    Басты бет