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

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

Войти
Регистрация
Восстановить пароль
 
Taramtam
0 / 0 / 0
Регистрация: 03.04.2014
Сообщений: 5
#1

Создать стэк и заполнить его из txt файла - C++

03.04.2014, 20:43. Просмотров 223. Ответов 1
Метки нет (Все метки)

Вообщем надо создать стэк и заполнить его из txt файла, и надо чтоб после 20 программа выдавала ошибку(не добавляла 21 элемент)

в txt:
a
b
c
.... и так 22 элементов

Надо написать простую программу не замудренную(для нуба)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.04.2014, 20:43     Создать стэк и заполнить его из txt файла
Посмотрите здесь:

Создать список и заполнить его 10 числами из ряда Фибоначчи - C++
Создать список и заполнить его 10 числами из ряда Фибоначчи (1,1,2,3,5,...)и вывести на экран. Пользователь вводит порядковый номер k и...

Создать динамический массив и заполнить его элементы определёнными значениями - C++
Здравствуйте! Подскажите пожалуйста в чём может крыться ошибка (суть задачи состоит в том, чтобы создать динамический массив и заполнить...

Создать и заполнить массив случайными числами и вычислить сумму его элементов - C++
Привет ребята, подскажите как реализовать вот это задание? "используя указатели, нписать следующую программу. программа принимает с...

Переписываем массив что бы его параметры и переменные считывались с входного файла In.txt, а результат в Out - C++
Доброго времени суток. Нашел у вас на форуме код программы, которая находит в массиве самую длинную последовательность одинаковых чисел и...

Дан одномерный массив из n (n≤104) элементов, осортировать его по возрастанию методом выбора через input.txt, output.txt - C++
Дан одномерный массив из n (n≤104) элементов a1,a2,…,an.( |ai|≤2×109). Сортировать по возрастанию методом выбора через input.txt, output.txt

Отсортировать N-ую строку файла fin.txt по возрастанию длин слов в строке и записать ее в fout.txt - C++
не могу понять c++ , поможет кто разобраться? на паскале всё получается, а сейчас решил C++ изучить Вот задачка: В текстовом файле...

Сформировать из файла f4.txt файл g.txt - C++
Сформировать из файла f4.txt файл g.txt, состоящий из целых чисел, но для нечётных чисел указать также их значение английским словом 1...

Создать 100 файлов. Имя каждого файла должно соответствовать его поряд-ковому номеру. - C++
Создать 100 файлов. Имя каждого файла должно соответствовать его поряд-ковому номеру. В каждый из файлов записать его порядковый номер

Работа с файлами (вывести в текстовый файл "g.txt" любую цифру из исходного файла "f.txt" с сохранением строгого порядка) - C++
Помогите с задачей. Надо вывести в текстовый файл "g.txt" любую цифру из исходного файла "f.txt" с сохранением строгого...

СТЭК - C++
Необходимо реализовать метод класса СТЭК метод должен возвращать true в случае удачного завершения и false в противном случае. Ошибки...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
KOPOJI
Модератор
Эксперт HTML/CSSЭксперт PHP
16694 / 6620 / 431
Регистрация: 12.06.2012
Сообщений: 19,875
Завершенные тесты: 1
03.04.2014, 22:18     Создать стэк и заполнить его из txt файла #2
Если по-простому, то можно как-то так:
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
#include <iostream>
#include <cstdio>
#include <cstdlib>
 
 
class Stack
{
 
private:
    static const int MAX_ELEMENTS = 20;
    int topIndex;
    char symbols[MAX_ELEMENTS];
 
public:
    Stack(): topIndex(0) {}
 
    char push(char);
    char pop();
    size_t size() const;
    bool full() const;
    bool empty() const;
};
 
 
int main(int argc, char *argv[])
{
    Stack *stack = new Stack();
 
    FILE *f = fopen("./file.txt", "r");
 
    char c;
 
    if(!f)
        exit(1);
 
    while((c = fgetc(f)) != EOF)
        if(c >= 'a' && c <= 'z')
            stack->push(c);
 
    fclose(f);
 
    std::cout << std::endl << "Stack is" << (stack->empty() ? "" : "n't") << " empty (size=" << stack->size() << ")" << std::endl;
 
    for(size_t i = stack->size(); i > 0; --i)
        std::cout << stack->pop() << std::endl;
 
    std::cout << std::endl << "Stack is" << (stack->empty() ? "" : "n't") << " empty (size=" << stack->size() << ")" << std::endl;
 
    delete stack;
 
    return 0;
}
 
 
char Stack::push(char c)
{
    if(!full())
        return symbols[topIndex++] = c;
    return false;
}
 
char Stack::pop()
{
    if(!empty())
        return symbols[--topIndex];
    return false;
}
 
size_t Stack::size() const
{
    return topIndex;
}
 
bool Stack::full() const
{
    return topIndex == MAX_ELEMENTS;
}
 
bool Stack::empty() const
{
    return ! size();
}
Ответ Создать тему
Опции темы

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