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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Написать класс, реализующий Стек - C++
Написать класс, реализующий стек или очередь (что указано в задании). В классе описать соответствующие методы (push, pop и т.д.). В...

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

Не по теме:

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

Deviaphan
Делаю внезапно и красиво
Эксперт C++
1286 / 1220 / 50
Регистрация: 22.03.2011
Сообщений: 3,744
27.03.2011, 07:37     Класс стек, алгоритм решения #3
Цитата Сообщение от andreevym Посмотреть сообщение
т.к скомпилировать не могу
Следовательно, не правильно решили.
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;
};
ForEveR
В астрале
Эксперт С++
7970 / 4732 / 320
Регистрация: 24.06.2010
Сообщений: 10,541
Завершенные тесты: 3
28.03.2011, 01:46     Класс стек, алгоритм решения #5
Весь main сносите нафиг.
fasked
Эксперт С++
4933 / 2513 / 180
Регистрация: 07.10.2009
Сообщений: 4,311
Записей в блоге: 1
28.03.2011, 01:58     Класс стек, алгоритм решения #6
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Цитата Сообщение от ForEveR Посмотреть сообщение
Весь main сносите нафиг.
хотя бы один из двух
ForEveR
28.03.2011, 02:06
  #7

Не по теме:

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

MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
28.03.2011, 02:37     Класс стек, алгоритм решения
Еще ссылки по теме:

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

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

Класс стек (работа с файлами) - C++
Доброй ночи. Написал &quot;программку&quot;, править буду позже, пока возникли вопросы в связи с малой базой знаний. Задание: Создать класс стек на...

Класс, реализующий стек точек - C++
описание класса ,реализующего стек точек R2(int ,int) очень нужно,плиииз

Описать класс, реализующий стек - C++
Очень нужна хоть какая-нибудь помощь! У меня никак не получается написать программу а заказывать времени уже нет. обратиться больше некуда....


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

Или воспользуйтесь поиском по форуму:
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 минут
помогите пожалуйста с задачей, не могу разобраться : (
Yandex
Объявления
28.03.2011, 02:37     Класс стек, алгоритм решения
Ответ Создать тему
Опции темы

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