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

Реализовать стек - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Операции сдвига http://www.cyberforum.ru/cpp-beginners/thread360518.html
Помогите понять операции сдвига. Вот два примера левого и правого сдвига. 9 (base 10): 00000000000000000000000000001001 (base 2) -------------------------------- 9 << 2 (base 10): 00000000000000000000000000100100 (base 2) = 36 (base 10) 9 (base 10): 00000000000000000000000000001001 (base 2) ...
C++ комп. инженерия 1 курс, лабораторная Надо написать программу для решения такого: (1+1/1^2)(1+1/2^2)(1+1/3^2)...(1+1/n^2) не могу составить правильній алгоритм для решения задачи...помогите кто чем может (советом, или словами напишите, или блок-схему нарисуйте, или программку, а я тогда сама разберусь что это там написано, хоть буду знать как надо делать в следующий раз...) буду очень благодарна. http://www.cyberforum.ru/cpp-beginners/thread360513.html
помогите с оператором условия C++
вычислить номер дня в невисокосном году по заданным числу и месяцу на данный момент имею вот это: void main() { double x,y,a; { cout <<endl <<"введите число:"; cin >> x;
связный список , абстрактный тип данных C++
// Лаба№1 связный список.cpp: определяет точку входа для консольного приложения. /*Из данного списка спортсменов распечатать данные о тех из них, кто занимается плаванием. Указать возраст, сколько лет они занимаются спортом. Упорядочить по возрасту.*/ #include "stdafx.h" #include <iostream> // подключение библиотеки ввода-вывода #include <conio.h> // подключение библиотеки функций работы с...
C++ Вызов функций для ОБЪЕКТОВ !!! http://www.cyberforum.ru/cpp-beginners/thread360472.html
Если я таким образом буду вызывать функции для объектов a и b, то мне выдается правильно только сумма ,а все остальное считает не правильно, либо выводит значение a. Я не знаю как правильно вызывать другие функции для тех же объектов, т.е чтобы и разность, и умножение с делением работали. Помогите разобраться пожалуйста... int main() { complex a(2 , 2), b(1 , 1);
C++ Помогите с оператором условия столкнулся с проблемой когда начал изучать оператор условия в С++. Никак не могу разобраться как правильно написать программу. для системы из 2 выражений и уравнения. на данный момент имею только это. #include <iostream.h> #include <math.h> #include <conio.h> #define pi 3.14159265 void main() { int F; float x,y,z; подробнее

Показать сообщение отдельно
alkagolik
 Аватар для alkagolik
1510 / 616 / 79
Регистрация: 15.07.2011
Сообщений: 3,552
04.10.2011, 22:44     Реализовать стек
не знаю я как на базе массива... знаю во так.
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
#include <iostream>
#include <cstdlib>
#include <ctime>
 
struct  Node{
    int data;
    Node *next, *prev;
};
 
typedef Node *Pnode;
 
struct Stack{
    Pnode   head, tail;
};
 
void push(Stack &s, int data){
    Pnode new_node;
    new_node = new Node;
 
    new_node->data = data;
    new_node->next = s.head;
    new_node->prev = NULL;
 
    if (s.head) s.head->prev = new_node;
    s.head = new_node;
    if (!s.tail) s.tail = s.head;
}
 
int pop(Stack &s){
    Pnode top_node = s.head;
    int i;
 
    if (!top_node)
        return 0;
    i = top_node->data;
    s.head = top_node->next;
    if (s.head) s.head->prev = NULL;
    else
        s.tail = NULL;
    delete top_node;
    return i;
}
 
int main(){
    Stack *a = new Stack;
    int b;
    srand(time(NULL));
 
    std::cout << "помещаем в стек\n\n";
    for(int i = 1; i != 21; ++i){
        push(*a, i);
        std::cout << i << ' ';
    }
 
    std::cout << "\n\nизвлекаем из стека\n\n";
    for(int i = 0; i != 20; ++i){
        b = pop(*a);
        std::cout << b << " ";
    }
 
    std::cout << "\n\n" << std::endl;
    delete[]a;
    return 0;
}
консоль

помещаем в стек

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20

извлекаем из стека

20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1
 
Текущее время: 06:53. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru