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

Даны 2 стека, присоединить хвост второго к голове первого - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Директории.Как это сделать?! http://www.cyberforum.ru/cpp-beginners/thread845231.html
У меня задача такова:Зайти в папку(путь указывать программно) и удалять все файлы в папке.Если папка существует-удаляем файлы,если нет переходим на другую(но это уже такое).И нужно удалять файлы в папке,пока она не пустая. Не смог сформировать свой запрос в гугле. Ув.программисты,помогите мне пожалуйста с моей проблемой. Заранее спасибо
C++ Сумма ряда Нужно вычислить сумму ряда от n=1, до M. Ʃ(cos(n)/n!) Вот что у меня получилось, помогите исправить. #include <iostream.h> #include <conio.h> #include <stdlib.h> #include <math.h> int main() { clrscr(); http://www.cyberforum.ru/cpp-beginners/thread845221.html
C++ Обработка символьных данных. Yes, если есть символ в строке и NO если его нет
Здравствуйте! Помогите решить задачу: Если в данный текст входит любая из букв слова key, напечатать да, если не входит то нет. #include "stdafx.h" #include <conio.h> #include <locale> #include <iostream> #include <stdio.h> #include <stdlib.h> using namespace std; int main() {
Количество чисел Фибоначчи C++
Последовательность Фибоначчи - это такая последовательность, в которой каждый элемент равен сумме двух предыдущих, за исключением первых двух элементов F1 = 1, F2 = 1, Fn = Fn-2 + Fn-1. 1 1 2 3 5 8 13 21 … Задан массив целых чисел, среди которых возможно есть числа Фибоначчи. Подсчитайте количество чисел Фибоначчи в заданном наборе чисел. Технические условия Входные данные
C++ Определить, в которой из двух очередей больше согласных букв http://www.cyberforum.ru/cpp-beginners/thread845128.html
1)Создать две очереди символов. Входная последовательность символов для обеих оче-редей задается пользователем с клавиатуры. Необходимо: • распечатать обе очереди, • определить, в которой из двух очередей больше согласных букв, • построить новую очередь, которая является симметрической разностью двух исходных очередей, и распечатать ее, • очистить все очереди. помогите кто могет:) заранее...
C++ Сортировка массива Привет. При сортировки массива ( нулевые элементы необходимо переместить в конец массива), в место первого ноля выдает число 65537. Подскажите в чем проблема и как можно ее исправить? Если необходим код, могу его добавить подробнее

Показать сообщение отдельно
ultimix
0 / 0 / 0
Регистрация: 08.04.2013
Сообщений: 9
22.04.2013, 19:42  [ТС]     Даны 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
// STACK.cpp: определяет точку входа для консольного приложения.
//
 
#include "stdafx.h"
#include <iostream>
#include <conio.h>
#include <stack>
#include <stdlib.h>
struct stek
{
    int d;
    struct stek *next; // указатель на следующий элемент списка (стека)
};
 
void push(stek* &next, int d)
{
    stek *pv = new stek;      // объявляем новую динамическую переменную типа stek
    pv->d = d;                // записываем  значение, которое помещается в стек
    pv->next = next;          // связываем новый элемент стека с предыдущим
    next = pv;                // новый элемент стека становится его вершиной
}
 
int pop(stek* &next)
{  
    int temp = next->d;     // извлекаем в переменную temp значение в вершине стека
    stek *pv = next;        // запоминаем указатель на вершину стека, чтобы затем
                            // освободить выделенную под него память
    next = next->next;      // вершиной становится предшествующий top элемент
    delete pv;              // освобождаем память, тем самым удалили вершину
    std::cout<<temp;        //Вывод текущего элемента на экран
    return temp;            // возвращаем значение, которое было в вершине
}
const int i=2;
int spop(stek* &next, int arr[i])
{  
    int temp = next->d;     // извлекаем в переменную temp значение в вершине стека
    stek *pv = next;        // запоминаем указатель на вершину стека, чтобы затем
                            // освободить выделенную под него память
    next = next->next;      // вершиной становится предшествующий top элемент
        arr[i]=temp; 
        std::cout<<arr[i];
    delete pv;              // освобождаем память, тем самым удалили вершину
    return temp;            // возвращаем значение, которое было в вершине
}
 
int main()
{const int i=2; int  arr[i];
    stek *a=0;
    stek *b=0;
 
    push(a,100); //Положили в стек 100
    push(a,200); //Положили в стек 200
    push(a,300);
    
    push(b,1);
    push(b,2);
    push(b,3);
 
    pop(a); //вывели на экран текущий элемент стека = 300
    pop(a); //вывели на экран текущий элемент стека = 200
    pop(a);
    spop(b, arr);
    spop(b, arr);
    spop(b, arr);
    getch();
}
Программа выводит мне 300 200 100 3 2 1
как сделать чтоб выводила 300 200 100 1 2 3 ?
 
Текущее время: 16:30. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru