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

Ребят что означаеют две звездочки в самом начале когда объявляем массив - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Из строки получить новую, выбросив все вхождения заданного символа (Работа со строками) http://www.cyberforum.ru/cpp-beginners/thread1083642.html
Доброго времени суток =) Нужна помощь с заданием: "Из заданной строки получить новую, выбросив из нее все вхождения заданного символа".
C++ Вычислить интеграл при двух значениях шага интегрирования (h=0.1 и h=0.01). Вычислить интеграл \int_{a}^{b}({x}^{3}-8*x)dx при двух значениях шага интегрирования (h=0.1 и h=0.01). нужно тремя способами решить : 1.Метод прямоугольников 2.Метод трапеции 3.Метод симпсона http://www.cyberforum.ru/cpp-beginners/thread1083639.html
В работе необходимо организовать однонапрямлений список структурой с именем AEROFLOT, что содержит следующие поля: C++
помогите переделать задачу. вот условие. В работе необходимо организовать однонапрямлений список структурой с именем AEROFLOT, что содержит следующие поля: CITY - название населенного пункта...
C++ короткие коды с ********
всем привет я решил создать общую тему по сокращению кодов (если у кого есть по короче по желанию напишите на форум нужно писать так № (номер задачи с ********) код размер
C++ Будет ли работать данная конструкция? http://www.cyberforum.ru/cpp-beginners/thread1083612.html
for (x=0; x!=123; ) -будет ли работать и сколько раз повторится?
C++ Где инициализировать переменные класса? Почему я не могу инициализировать переменную непосредственно в описании класса? class Primer { publuc: Metod1() {...}; private: WCHAR name = L"name_name"; */ошибка data member... подробнее

Показать сообщение отдельно
ЕвгенийГусев
1 / 1 / 0
Регистрация: 17.01.2013
Сообщений: 47

Ребят что означаеют две звездочки в самом начале когда объявляем массив - C++

28.01.2014, 14:54. Просмотров 911. Ответов 3
Метки (Все метки)

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
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
#include <iostream>
 
 
int main()
{
 
    float *arr1, **arr2; // массив точек
    float **kb1, **kb2; // массивы в которых храняться k и b и знак неравенства
    float area1, area2; // переменные для хранения значения площади
    int n1, n2; // количество вершин в фигурах
 
    std::cout<<"Vvedite kolichestvo vershin pervogo mnogoug\n";
    std::cin>>n1;   // считываем кол вершин первой фигуры
    kb1 = new float*[n1];   //выделяем память для массив kb
    for (int i = 0; i < n1; ++i)
        kb1[i] = new float[3];
 
    arr1 = new float[n1+ 2];   //выделяем память для массива 5точек
    for (int i = 0; i < n1 + 2; ++i)
        arr1[i] = new float*[2];
 
    std::cout<<"Vvedite koordinaty pervoi figuri\n";
    for ( int i = 0; i < n1; ++i)
        std::cin>>arr1[i][0]>>arr1[i][1];
 
    arr1[n1][0] = arr1[0][0];
    arr1[n1][1] = arr1[0][1];
    arr1[n1 + 1][0] = arr1[1][0];
    arr1[n1 + 1][1] = arr1[1][1];
 
    for (int i = 0; i < n1; ++i){
        kb1[i][0] = (arr1[i][1] - arr1[i+1][1]) / (arr1[i][0] - arr1[i+1][0]);
        kb1[i][1] = (arr1[i+1][1] * arr1[i][0] - arr1[i][1] * arr1[i+1][0]) / (arr1[i][0] - arr1[i+1][0]);
    }
 
    for (int i = 0; i < n1; ++i)
 
        if (arr1[i + 2][1] > arr1[i + 2][0] * kb1[i][0] + kb1[i][1])
            kb1[i][2] = -1;
        else
            kb1[i][2] = 1;
 
    float s1 = 0;
    for (int i = 0; i < n1; ++i)
        s1 = (arr1[i][0] + arr1[0][0]) * (arr1[i][1] - arr1[0][1]) + s1;
    if (s1 < 0) s1 = s1 * (-1);
    s1 = s1 * 1/2;
 
 
 
    std::cout<<"Vvedite kolichestvo vershin vtorogo mnogoug\n";
    std::cin>>n2;
 
    kb2 = new float*[n2];
    for (int i = 0; i < n2; ++i)
        kb2[i] = new float[3];
 
    arr2 = new float*[n2 + 2];
    for (int i = 0; i < n2 + 2; ++i)
        arr2[i] = new float[2];
 
 
    std::cout<<"Vvedite koordinaty vtoroy figuri\n";
    for (int i = 0; i < n2; ++i)
        std::cin>>arr2[i][0]>>arr2[i][1];
    arr2[n2][0] = arr2[0][0];
    arr2[n2][1] = arr2[0][1];
    arr2[n2 + 1][0] = arr2[1][0];
    arr2[n2 + 1][1] = arr2[1][1];
 
    for (int i = 0; i < n2; ++i){
        kb2[i][0] = (arr2[i][1] - arr2[i+1][1]) / (arr2[i][0] - arr2[i+1][0]);
        kb2[i][1] = (arr2[i+1][1] * arr2[i][0] - arr2[i][1] * arr2[i+1][0]) / (arr2[i][0] - arr2[i+1][0]);
    }
 
    for (int i = 0; i < n2; ++i)
 
        if (arr2[i + 2][1] > arr2[i + 2][0] * kb2[i][0] + kb2[i][1])
            kb2[i][2] = -1;
        else
            kb2[i][2] = 1;
 
    float s2 = 0;
    for (int i = 0; i < n2; ++i)
        s2 = (arr2[i][0] + arr2[0][0]) * (arr2[i][1] - arr2[0][1]) + s2;
    if (s2 < 0) s2 = s2 * (-1);
    s2 = s2 * 1/2;
 
 
    int check1 = 0;
    for (int j = 0; j < n1; ++j)
        for (size_t i = 0; i < n2; ++i)
            if (kb1[j][2] == -1)
                if (arr2[i][1] > (arr2[i][0] * kb1[j][0] + kb1[j][1])) check1 = check1 + 0;
                    else check1++;
            else
                if (arr2[i][1] < (arr2[i][0] * kb1[j][0] + kb1[j][1])) check1 = check1 + 0;
                    else check1++;
 
    if (check1 == 0 ) check1 = 1;
    else check1 = 0;
 
 
 
    int check2 = 0;
    for (int j = 0; j < n2; ++j)
        for (int i = 0; i < n1; ++i)
            if (kb2[j][2] == -1)
                if (arr1[i][1] > (arr1[i][0] * kb2[j][0] + kb2[j][1])) check2 = check2 + 0;
                    else check2++;
            else
                if (arr1[i][1] < (arr1[i][0] * kb2[j][0] + kb2[j][1])) check2 = check2 + 0;
                    else check2++;
 
    if (check2 == 0 ) check2 = 1;
    else check2 = 0;
 
    std::cout<<"Plosadi pervoi figuri = "<<s1<<"\n";
    std::cout<<"Plosadi vtoroi figuri = "<<s2<<"\n";
 
    if (check1 + check2 == 1)
        std::cout<<("Odna figura vnutri drugoi\n");
    else
        std::cout<<("Odna figura ne vnutri drugoi\n");
 
 
    int otv;
    std::cin>>otv;
    return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru