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

Стек - C++

Восстановить пароль Регистрация
 
MagicianHarry
0 / 0 / 0
Регистрация: 23.09.2013
Сообщений: 21
24.09.2013, 19:02     Стек #1
Как сделать чтобы стек заполнялся в диапазоне -50..+50 , размерность вводится с клавиатуры? Помогите пожалуйста добавить в этот код.
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
#include <stdio.h>
#include <conio.h>
 
#define LEN 100
 
int g_count1 = 0;
int g_count2 = 0;
int* g_v = NULL;
int* g_v2 = NULL;
 
int n = 105;
 
void push(int* gv, int& g_count, int val)
{
    if (g_count >= LEN) return;
    gv[g_count++] = val;
}
 
bool pop(int* gv, int& g_count, int* pval)
{
    if (g_count <= 0 || pval == NULL) return 0;
    if (pval != NULL) *pval = gv[--g_count];
    return 1;
}
 
int main(int argc, char* argv[])
{
    if (g_v == NULL)
    {
        g_v = new int[LEN+1];
        g_v2 = new int[LEN+1];
    }
 
    int i = -50;
    while (i <= 50) push(g_v,g_count1,i++);
 
    int val = 0;
    while (pop(g_v,g_count1,&val))
    {
        if ((val % 2) == 0)
            push(g_v2, g_count2, val);
    }
    
    while (pop(g_v2,g_count2,&val))
        printf("%d\n",val);
 
    if (g_v != NULL && g_v2 != NULL) 
    {
        delete[] g_v;
        delete[] g_v2;
    }
 
    _getch();
 
    return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.09.2013, 19:02     Стек
Посмотрите здесь:

Стек C++
C++ Стек
C++ Стек
C++ Стек
C++ стек
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
VEINHORN
542 / 91 / 22
Регистрация: 16.12.2011
Сообщений: 317
24.09.2013, 20:30     Стек #2
MagicianHarry, вы хотите чтобы контроль за диапазоном был в main или в функциях push, pop?
MagicianHarry
0 / 0 / 0
Регистрация: 23.09.2013
Сообщений: 21
24.09.2013, 21:01  [ТС]     Стек #3
Цитата Сообщение от MCKLAS Посмотреть сообщение
MagicianHarry, вы хотите чтобы контроль за диапазоном был в main или в функциях push, pop?
В main.
DiffEreD
 Аватар для DiffEreD
1420 / 757 / 95
Регистрация: 21.06.2011
Сообщений: 1,740
Записей в блоге: 2
24.09.2013, 21:30     Стек #4
C++
1
2
srand(static_cast<unsigned>(std::time(nullptr)));
stk.push(-50 + rand()%101);
MagicianHarry
0 / 0 / 0
Регистрация: 23.09.2013
Сообщений: 21
25.09.2013, 18:19  [ТС]     Стек #5
Цитата Сообщение от DiffEreD Посмотреть сообщение
C++
1
2
srand(static_cast<unsigned>(std::time(nullptr)));
stk.push(-50 + rand()%101);
Спасибо, но куда именно вставить эти строки?

Добавлено через 19 часов 50 минут
DiffEreD, Куда именно вставить эти строки?
Yandex
Объявления
25.09.2013, 18:19     Стек
Ответ Создать тему
Опции темы

Текущее время: 03:42. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru