Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <windows.h>
- #define _USE_MATH_DEFINES
- #include <math.h>
- using namespace std;
- int main()
- {
- SetConsoleOutputCP(1251);
- double a{}, b{}, c{}, angle_a{}, angle_b{}, angle_c{};
- double *pa{ &a }, *pb{ &b }, *pc{ &c }, *pangle_a{ &angle_a }, *pangle_b{ &angle_b }, *pangle_c{ &angle_c };
- while (true) {
- cout << "Введіть першу сторону трикутника: ";
- cin >> *pa;
- if (cin.fail() || *pa <= 0) {
- cin.clear();
- cin.ignore(32767, '\n');
- cout << "Введена сторона не може існувати. Спробуйте ввести іншу!" << endl;
- continue;
- }
- else {
- break;
- }
- }
- while (true) {
- cout << "Введіть другу сторону трикутника: ";
- cin >> *pb;
- if (cin.fail() || *pb <= 0) {
- cin.clear();
- cin.ignore(32767, '\n');
- cout << "Введена сторона не може існувати. Спробуйте ввести іншу!" << endl;
- continue;
- }
- else {
- break;
- }
- }
- while (true) {
- cout << "Введіть третю сторону трикутника: ";
- cin >> *pc;
- if (cin.fail() || *pc <= 0) {
- cin.clear();
- cin.ignore(32767, '\n');
- cout << "Введена сторона не може існувати. Спробуйте ввести іншу!" << endl;
- continue;
- }
- else {
- break;
- }
- }
- if (*pa + *pb <= *pc || *pa + *pc <= *pb || *pb + *pc <= *pa) {
- cout << "Заданий трикутник не існує!" << endl;
- return 0;
- }
- *pangle_a = acos((*pb * *pb + *pc * *pc - *pa * *pa) / (2 * *pb * *pc)) * 180 / M_PI;
- *pangle_b = acos((*pa * *pa + *pc * *pc - *pb * *pb) / (2 * *pa * *pc)) * 180 / M_PI;
- *pangle_c = acos((*pa * *pa + *pb * *pb - *pc * *pc) / (2 * *pa * *pb)) * 180 / M_PI;
- cout << "Кут при стороні a - " << *pangle_a << " градусів" << endl;
- cout << "Кут при стороні b - " << *pangle_b << " градусів" << endl;
- cout << "Кут при стороні c - " << *pangle_c << " градусів" << endl;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement