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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 27, средняя оценка - 4.74
andreevym
0 / 0 / 0
Регистрация: 26.03.2011
Сообщений: 3
#1

Класс стек, алгоритм решения - C++

27.03.2011, 01:14. Просмотров 3320. Ответов 7
Метки нет (Все метки)

Вот условие:
Описать класс, реализующий стек. Написать программу, использующую этот класс для моделирования Т-образного сортировочного узла на железной дороге. Программа должна разделять на два направления состав, состоящий из вагонов двух типов (на каждое направление формируется состав вагонов одного типа). Предусмотреть возможность формирования состава из файла и с клавиатуры.

Алгоритм работы
1) тип – чётные числа,2) тип – нечетные.
1. Заполнить стек из файла;
2. Заполнить с клавиатуры;
3. Просмотреть содержимое стека;
4. Разделение содержимого стека;
5. Просмотреть массив из четных данных;
6. Просмотреть массив из нечетных данных;
1. Создается файл. В него заносятся данные, сгенерированные случайным образом.
После генерации данные из файла записываются в стек.
2. Данные вводятся с клавиатуры и сразу записываются в стек.
3. Вывод на экран содержимого стека.
4. Разделение содержимого стека на два: chet и nechet. При этом записанный в какой-либо массив элемент из стека удаляется. После выполнения этой операции в стеке данных нет.
5. Вывод на экран данных массива chet.
6. Вывод на экран данных массива nechet.

Помогите пожалуйста её решить через Борланд

Добавлено через 1 час 23 минуты
я решил, но не знаю правильно или нет, т.к скомпилировать не могу
0
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.03.2011, 01:14
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Класс стек, алгоритм решения (C++):

Класс Стек Stack. не работает класс исключений - C++
Здравствуйте! Решил проверить код на пригодность, но почему то класс исключений выскакивает на ошибке. Я никак не могу понять такие вещи...

Класс стек - C++
Доброго времени! Читаю книгу Р. Лафоре - Объектно-ориентированное программирование С++. В теме: "Массивы как члены классов"...

Класс стек, рекурсия, - C++
задача - реализовать стек через класс, все основные функции со стеком, и самое главное, рекурсивную функцию, которая выводит стек в...

Стек через класс - C++
Не всекаю где проблема, после создания new_el, значения стека p по переменной fam меняются. Задача такова: создать отсортированный список...

Определить класс стек - C++
Определить класс стек. В класс включить два конструктора для определе-ния стека по его размеру и путем копирования другого стека. ...

Класс, реализующий стек - C++
Помогите девушке, только учусь программировать и чет пока не очень=( плиииииииииииииииииииииииииз кого не затруднит...... Задание 5....

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
silent_1991
Эксперт С++
4964 / 3040 / 149
Регистрация: 11.11.2009
Сообщений: 7,027
Завершенные тесты: 1
27.03.2011, 07:06 #2
Цитата Сообщение от andreevym Посмотреть сообщение
я решил, но не знаю правильно или нет
Как бы это дико не звучало, мы тоже не в курсе этого. Код в студию.

Не по теме:

Только, ради Бога, отформатируйте его по-человечески и оформите в теги!

0
Deviaphan
Делаю внезапно и красиво
Эксперт C++
1287 / 1221 / 50
Регистрация: 22.03.2011
Сообщений: 3,744
27.03.2011, 07:37 #3
Цитата Сообщение от andreevym Посмотреть сообщение
т.к скомпилировать не могу
Следовательно, не правильно решили.
0
andreevym
0 / 0 / 0
Регистрация: 26.03.2011
Сообщений: 3
28.03.2011, 01:38  [ТС] #4
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
#include<iostream.h>
#include <stdafx.h>
#include <malloc.h>
#include <stlexam.h>
#include <stack>
#include <vector>
#include <deque>
#include <string>
int main()
{
class Stack
{ 
private:
    char* _data;
    int _dataSize;
    int _count;
    void realocateIfNeeded(int _countNeeded)
    {
        if (_countNeeded>_dataSize)
        {
            if (_dataSize==0) { _dataSize = 1; }
            while (_dataSize<_countNeeded)
            {
                _dataSize *= 2;
            }
            _data = (char*)realloc(_data,_dataSize*sizeof(char));
        }
        if ((_countNeeded<=(_dataSize/2))&&(_dataSize>0))
        {
            while (((_dataSize/2)>=_countNeeded)&&(_dataSize>0))
            {
                _dataSize /= 2;
            }
            _data = (char*)realloc(_data,_dataSize*sizeof(char));
        }
    }
public:
    Stack()
    {
        _data = NULL;
        _dataSize = 0;
        _count = 0;
    }
    ~Stack()
    {
        if (_dataSize!=0)
        {
            free(_data);
        }
    }
    void Push(char Value)
    {
        realocateIfNeeded(_count+1);
        _data[_count] = Value;
        _count++;
    }
    char Pop()
    {
        if (_count==0) { throw; }
        char value = _data[_count-1];
        realocateIfNeeded(_count-1);
        _count--;
        return (value);
    }
    int Count()
    {
        return _count;
    }
};
 
}
 
ifstream in('line.txt');
 
 return 0;
}
 
{
 
int main(int argc, char* argv[])
{
    Stack l;
    Stack c;
    Stack n;
 ifstram in("line.txt");
    l.Push(in);
for(a=0;a=i;a++)
{
if (l[i]%2==0)
     {
         c.Push(l[i]);
c.Push(" ");
     }
     else
     {
         n.Push(l[i]);
n.Push(" ");
     }
printf("Четные числа: ", c.Push());
printf("Нечетные числа: ", n.Push());
}
    return 0;
};
0
ForEveR
В астрале
Эксперт С++
7972 / 4734 / 321
Регистрация: 24.06.2010
Сообщений: 10,541
Завершенные тесты: 3
28.03.2011, 01:46 #5
Весь main сносите нафиг.
0
fasked
Эксперт С++
4936 / 2516 / 180
Регистрация: 07.10.2009
Сообщений: 4,311
Записей в блоге: 1
28.03.2011, 01:58 #6
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
Цитата Сообщение от ForEveR Посмотреть сообщение
Весь main сносите нафиг.
хотя бы один из двух
3
ForEveR
28.03.2011, 02:06
  #7

Не по теме:

fasked, Ахаха. Реально) Не заметил)

0
andreevym
0 / 0 / 0
Регистрация: 26.03.2011
Сообщений: 3
28.03.2011, 02:37  [ТС] #8
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
#include<iostream.h>
#include <stdafx.h>
#include <malloc.h>
#include <stlexam.h>
#include <stack>
int main()
{
        Stack l;
        Stack c;
        Stack n;
 ifstram in("line.txt");
        l.Push(in);
for(a=0;a=i;a++)
{
if (l[i]%2==0)
     {
         c.Push(l[i]);
c.Push(" ");
     }
     else
     {
         n.Push(l[i]);
n.Push(" ");
     }
printf("Четные числа: ", c.Push());
printf("Нечетные числа: ", n.Push());
}
        return 0;
};
Добавлено через 12 минут
помогите пожалуйста с задачей, не могу разобраться : (
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
28.03.2011, 02:37
Привет! Вот еще темы с ответами:

Шаблонный класс Стек - C++
прошу помочь разобраться с кодом. вопросы выделил по ходу кода. #ifndef _STACKNODE_H_ #define _STACKNODE_H_ #include &lt;string&gt; ...

Класс стек что не так? - C++
Компилятор ругается, что в конструкторе элемент массива объявлён в раз. как такое может быть он же в классе объявлён и видимость прописана....

Описать класс, реализующий стек - C++
Всем привет, нуждаюсь в помощи. Описать класс, реализующий стек. Написать программу, использующую этот класс для моделирования...

Стек указателей на класс-интерфейс - C++
Задача такая: есть иерархия. Интерфейс -&gt; абстрактный базовый класс -&gt; два наследника и у них ещё по два. Имеется 4 вектора с элементами...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
28.03.2011, 02:37
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru