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

Определить, имеются ли три прямые, пересекающиеся в одной точке - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Реализовать функцию поиска по заданному полю в списке объектов типа "Собачий питомник" http://www.cyberforum.ru/cpp-beginners/thread1674106.html
Имеются сведения о собачьих питомниках: порода собак, фамилия владельца. Количество питомников неизвестно. В каждом питомнике имеется некоторое количество собак, в каждом питомнике разное. Для каждой собаки известно: кличка, возраст. Создать список, вывести его на экран, найти сведения о заданной собаке (известна кличка).
C++ Вывести название времени года по месяцу Написать программу, которая запрашивает у пользователя номер месяца и выводит соответствующее название времени года. В случае если пользователь укажет недопустимое число, программа должна вывести сообщение “Ошибка ввода данных”. http://www.cyberforum.ru/cpp-beginners/thread1674087.html
C++ Вывести на экран монитора число с наименованием "год","года", "лет"
Прошу прогу в С++. Дано натуральное число n (n<=100), определяющее в годах возраст человека. Составить программу, по которой на экран монитора выводится это число с наименованием "год","года", "лет".
Определить, сколько раз в последовательности меняется знак C++
Дана последовательность ненулевых целых чисел, оканчивающая нулем. Определить, сколько раз в этой последовательности меняется знак. C++, с оператором условия пжл
C++ Почему опытные программисты не определяют пространство имен std? http://www.cyberforum.ru/cpp-beginners/thread1674069.html
Все чаще замечаю в различных статьях, на сайтах, форумах, что опытные программисты не используют using namespace std; Почему? Стоит ли каждый раз новичку вписывать это пространство или лучше привыкать работать без него?
C++ Определить сколько раз в числе встречается заданная цифра Кто поможет. С++ Дано натуральное число. Определить:сколько раз в нем встречается цифра а; подробнее

Показать сообщение отдельно
yrceus
 Аватар для yrceus
80 / 80 / 54
Регистрация: 25.08.2013
Сообщений: 321
01.03.2016, 20:24     Определить, имеются ли три прямые, пересекающиеся в одной точке
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
58
59
60
61
#include <iostream>
#include <string>
#include <vector>
using namespace std;
struct straight {
    double a, b, c;
};
//----------------------------------------------------------------------------
    void initstr(straight &x) {
        cout << "Enter the  3 coefficients of equation: \n";
        for (;;) {
            if (cin >> x.a, cin >> x.b, cin >> x.c) {
                if (x.a || x.b)
                    break;
                else
                    cout << "A and B not zero.\n";
            }
            else {
                cout << "Incorrect input." << endl;
                cin.clear();
                while (cin.get() != '\n');
            }
        }
    }
//----------------------------------------------------------------------------
    void comparison(vector<straight> &lines) {
        int s = 0;
        for (auto x : lines) 
            for (auto y = lines.begin() + ++s; y < lines.end(); ++y) {
                double a, b, c;
                if (!x.a && !y->a || !x.b && !y->b)
                    continue;
                !x.a || !y->a ? a = 0 : a = x.a / y->a;
                !x.b || !y->b ? b = 0 : b = x.b / y->b;
                (!x.c || !y->c) && !(!x.c && y->c) ? c = a + 1 : !x.c && y->c ? c = a : c = x.c / y->c;
                if (abs(a - b) < 1E-4 && abs(a - c) < 1E-4)
                    cout << "Straight with coefficient \n" << x.a << ' ' << x.b << ' ' << x.c << " and\n"
                    << y->a << ' ' << y->b << ' ' << y->c << " equally.\n";
                else if (abs(a - b) < 1E-4 && abs(a - c) > 1E-4)
                    cout << "Straight with coefficient \n" << x.a << ' ' << x.b << ' ' << x.c << " and\n"
                    << y->a << ' ' << y->b << ' ' << y->c << " parallel.\n";
        }
    }
//-----------------------------------------------------------------------------
int main()
{
    size_t x;
    cout << "Enter lines: ";
    for (;;) {
        if (cin >> x)
            break;
        cout << "Incorrect input." << endl;
        cin.clear();
        while (cin.get() != '\n');
    }
    vector<straight> lines(x);
    while (x > 0) 
        initstr(lines[--x]);
    comparison(lines);  
    return 0;
}
Вроде не напутал
 
Текущее время: 18:08. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru