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

Как убрать глобальные переменные в коде? - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Подсчитать, сколько пpошло воскpесений за период http://www.cyberforum.ru/cpp-beginners/thread1649327.html
Подсчитать, сколько пpошло воскpесений от начала текущего кваpтала до последнего пpаздничного дня этого кваpтала. Известна текущая дата d.m.g. STL и Boost не знаю не учил) Есть мысль проверять текущую дату на наличие воскресения, и по 7 дней отталкиваться. Посоветуйте что нибудь. Была еще мысль расписывать каждое воскресение с помощью switch ну она слишком сложна в реализации и не практично.
C++ Как программно запросить информацию с сайта? Подскажите как сделать взаимодействие c++ с браузером. Например,запускаем консольное приложение,вводим адрес страницы сайта, к примеру yandex.ru, и сохраняем весь код в текстовый документ для дальнейшего взаимодействия. Или 2 вариант , сразу взять с сайта интересующую нас информацию, к примеру курс доллара и так же записать это значение в текстовый документ. Если можно сделайте подробный... http://www.cyberforum.ru/cpp-beginners/thread1649324.html
Что не так в коде? Рассчитать значение у для значений х. Code::Blocks выдает ошибку. C++
рассчитать значение у для значений х, равных 4, 5, ..., 28,. на формулу не смотрите, фишка в том что код блокс выдает ошибку но в коде я уже проверял все вроде нормально #include<iostream> #include<cmath> using namespace std; int main() { int y,x,t; for(x=4;x<=28;x++) { t=x+2;
Выполняя задания из книги Стенли Липпмана допустил ошибку. Не могу понять где. C++
Выполняя задания из книги Стенли Липпмана не могу понять где ошибка в коде с оператором While /*#include<iostream> using namespace std; int main() { int sum = 0; // сложить числа от 1 до 10 включительно
C++ Вычислить значение площади по формуле http://www.cyberforum.ru/cpp-beginners/thread1649263.html
Вообщем, ни как не могу понять, как записать и вычислить значение площади в программе с помощью такой формулы. X и Y - координаты точек, я записал их в два отдельных массива - один masX, с координатой Х каждой точки по порядку, и второй masY соответственно. Вот сама формула: S=1/2*\left|\sum_{k=1}^{n}\left({X}_{k}+{X}_{k+1} \right)*\left({Y}_{k}-{Y}_{k+1} \right) \right| , где {X}_{0} , {Y}_{0}...
C++ Умножение комплексных чисел в алгебраическом ввиде Умножение комплексных чисел в алгебраическом ввиде Помогите с кодом на с++. Просьба в простом виде бы код, а не в сложном. подробнее

Показать сообщение отдельно
EVP
314 / 236 / 41
Регистрация: 14.12.2010
Сообщений: 457
28.01.2016, 20:02     Как убрать глобальные переменные в коде?
Цитата Сообщение от JohnDoe321 Посмотреть сообщение
Как может быть сделано со ссылками/указатели? Я изучал их.
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
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
#include "stdafx.h"
#include <stdio.h>
#include <string.h>
#include <malloc.h>
#include <stdlib.h>
#include <math.h>
#include <assert.h>
#include <iostream>
using namespace std;
 
//{{Class emulation
#define MAXROW (int)5
#define MAXCOL (int)5
#define DEF_CLASS_CONTEXT \
    int A[MAXROW][MAXCOL] = { 0 }; \
    int newarr[MAXROW + 1][MAXCOL + 1] = { 0 }
#define DECL_CLASS_CONTEXT \
    int (&A)[MAXROW][MAXCOL], \
    int (&newarr)[MAXROW + 1][MAXCOL + 1]
#define SEND_CLASS_CONTEXT A, newarr
 
void case1(DECL_CLASS_CONTEXT);
void case2(DECL_CLASS_CONTEXT);
void case3(DECL_CLASS_CONTEXT);
void case4(DECL_CLASS_CONTEXT);
void case5(DECL_CLASS_CONTEXT);
//}}Class emulation
 
int main()
{
    DEF_CLASS_CONTEXT;
    char da;
    do                                  //menu
    {
        cout << "\n\nMENU\n";
        cout << "1. : \n";
        cout << "2. : \n";
        cout << "3.: \n";
        cout << "4.  \n";
        cout << "5. \n";
        cout << "6.Exit.\n\n";
        cin >> da;
 
        switch (da)
        {
        case '1': {
            system("cls");
            case1(SEND_CLASS_CONTEXT);
        } break;
 
        case '2': {
            //system("cls"); 
            case2(SEND_CLASS_CONTEXT);
        } break;
 
        case '3': {
            //system("cls"); 
            case3(SEND_CLASS_CONTEXT);
        } break;
 
        case '4': {
            //system("cls"); 
            case4(SEND_CLASS_CONTEXT);
        } break;
 
        case '5': {
            //system("cls"); 
            case5(SEND_CLASS_CONTEXT);
        } break;
        }
 
    } while (da != '6');
 
    return 0;
 
}
 
void case1(DECL_CLASS_CONTEXT)
{
 
 
    for (int r = 0; r < MAXROW; ++r)
        for (int c = 0; c < MAXCOL; ++c) {
            cout << "\n A[" << r << "][" << c << "]= ";
            cin >> A[r][c];
        }
 
}
 
void case2(DECL_CLASS_CONTEXT)
{
 
    int max[MAXCOL] = { 0 };
 
    for (int r = 0; r < MAXROW; ++r) {
        int minr = A[r][0];
        for (int c = 0; c < MAXCOL; ++c) {
            newarr[r][c] = A[r][c];
            if (minr > A[r][c])
                minr = A[r][c];
 
            if (max[c] < A[r][c])
                max[c] = A[r][c];
        }
        newarr[r][MAXCOL] = minr;
    }
 
    for (int c = 0; c < MAXCOL; ++c)
        newarr[MAXROW][c] = max[c];
 
    for (int r = 0; r < MAXROW + 1; ++r) {
        for (int c = 0; c < MAXCOL + 1; ++c)
            newarr[r][c] ? cout << newarr[r][c] << "\t" : cout << " \t";
 
        cout << "\n";
    }
}
 
 
void case3(DECL_CLASS_CONTEXT)
{
    int negNumber = 0;
    double average = 0;
 
    for (int r = 0; r < 6; ++r) {
        for (int c = 0; c < 6; ++c) {
            if (newarr[r][c] < 0) {
                ++negNumber;
                average += newarr[r][c];
            }
 
        }
    }
    if (negNumber > 0) {
        average /= negNumber;
        cout << "Average of negatives: \n" << average;
    }
    else
        cout << "No negatives.\n";
 
 
}
 
void case4(DECL_CLASS_CONTEXT)
{//Find product of number different from 0
    int count = 0;
    int product = 1;
 
 
    for (int r = 0; r < 6; ++r)
        for (int c = 0; c < 6; ++c)
            if (newarr[r][c] != 0)
            {
                ++count;
                product *= newarr[r][c];
 
            }
 
 
    if (count != 0)
        cout << "\n Procut: \n" << product << endl;
    else
        cout << "All elements = 0";
 
}
 
void case5(DECL_CLASS_CONTEXT)
 
{
    for (int r = 0; r < MAXROW + 1; ++r) {
        for (int c = 0; c < MAXCOL + 1; ++c)
            newarr[r][c] ? cout << newarr[r][c] << "\t" : cout << " \t";
 
        cout << "\n";
    }
}
 
Текущее время: 09:18. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru