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

Cтек!!! - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Вычислиь сумму ряда http://www.cyberforum.ru/cpp-beginners/thread229252.html
Не могу решить эту задачу: Даны действительные числа x, ε (x≠0, ε >0). Вычислить с точностью ε (ε =0,001, 0,0001, 0,00001,0,000001) сумма ряда и указать количество учтенных слагаемых. Результат оформить в виде таблицы.Ограничимся рассмотрением первых 10-и членов. ∞ (-1)^К+1 х^2К-1 ∑ --------------------- к=0 (2к-1) (2к+1)! не пойму, почему результат...
C++ даны символы S1,...,S30 среди которых есть двоеточия: даны символы S1,...,S30 среди которых есть двоеточия: а) получить все символы, расположенные после первого двоеточия включительно б)получить все символы, располог после первого двоеточия в)получить все символы располог между первым и вторым двоеточиями http://www.cyberforum.ru/cpp-beginners/thread229241.html
C++ Преобразование типов данных в классах
если например есть такой код: class TIME { int a; } TIME object; object = 10;
C++ Массивы
Нужна небольшая помощь в этой программе, тут есть ошибка и нужно соединить их в 1 если не сложно помогите пожалуйста! 1. Найти сумму отрицательных элементов массива 2. Найти произведение элементов массива, расположенных между максимальным и минимальным элементами. 3.Упорядочить элементы массива по возрастанию 1. #include<iostream> #include<ctime> using namespace std;
C++ С чего начать изучение с++ http://www.cyberforum.ru/cpp-beginners/thread229225.html
Посоветуйте с чего начать изучение с++. В этом деле нуб если не считать html и css.Цель в дальнейшем программировать под Android.
C++ Шахматная доска Turbo C++ Нужно нарисовать и закрасить. Вот нарисовал, но как закрасить клетки через раз? #include<graphics.h> #include<conio.h> int a,b,c, N=8, x1=190, y1=100,x2=370, y2=280; float x,y,h; void main () { подробнее

Показать сообщение отдельно
KENJ
0 / 0 / 0
Регистрация: 15.01.2011
Сообщений: 16

Cтек!!! - C++

15.01.2011, 18:30. Просмотров 3849. Ответов 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
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
#include <stdio.h>
#include <conio.h>
#include <iostream>
#include <math.h>
 
using namespace std;
 
struct Stack //объявление структутры стека
{
        int info; //информационная часть элемента, например int
        Stack *next; //адресная часть - указатель на следующий элемент
} *begin, *t; //указатель вершины стека (*begin), временный (*t)
 
Stack* InStack(Stack*, int); //функция формирования элемента стека
void View(Stack*); //функция просмотра стека
void Delete(Stack**); //функция освобождения памяти, занятой стеком
int rand(void); //рандом
 
Stack* InStack(Stack *p, int in)
{
        Stack *t = new Stack; //Захватываем память для элемента
        t->info = in; //формируем информационную часть
        t->next = p; //формируем адресную часть
        return t;
}
 
void View(Stack *p)
{
        Stack *t = p; //устанавливаем текущий указатель на начало списка
        while(t != NULL) //начинаем цикл, работающий до тех пор, пока указатель t не равен NULL (признак окончания списка)
        {
                cout << " " << t->info << endl; //вывод на экран информационной части
                t = t->next; //текущий указатель переставляем на следующий элемент
        }
}
 
void Delete(Stack **p)
{
        while(*p != NULL)
        {
                t = *p;
                *p = (*p)->next;
                delete t;
        }
}
 
void main()
{
        int i, in, n, kod;
        while(true)
        {
                cout << "\n\tCreate - 1.\n\tAdd - 2.\n\tView - 3.\n\tDelete - 4.\n\tEXIT - 0. : ";
                cin >> kod;
                switch(kod)
                {
                case 1: case 2:
                        if (kod == 1 && begin != NULL)
                        {
                                //Если создаем новый стек, должны освободить память, занятую предыдущим
                                cout << "Clear memory!" << endl;
                                break;
                        }
                        cout << "Input kol = ";
                        cin >> n;
                        for (i = 1; i <= n; i++)
                        {
                                in = rand();
                                begin = InStack(begin, in); //добавление нового элемента в стек, вершиной которого является указатель begin
                        }
                        if (kod == 1) cout << "Create " << n << endl;
                        else cout << "Add " << n << endl;
                        break;
 
                case 3:
                        if (!begin)
                        {
                                cout << "Stack pust!" << endl;
                                break;
                        }
                        cout << "---Stack---" << endl;
                        View(begin);
                        break;
                
                case 4:
                        Delete(&begin); //после выполнения функции указатель на вершину будет равен NULL
                        cout << "Memory free!" << endl;
                        break;
 
                case 0:
                        if (begin != NULL)
                                Delete(&begin);
                        return;
 
                }
        }
}
Но без структуры и классов, чтобы использовались push, pop. Помогите пожалуйста
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru