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

Полустатическая структура данных стек. - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ перегрузка индексирования http://www.cyberforum.ru/cpp-beginners/thread408098.html
на пример как перегрузить оператор индексирования с 2-мя параметрами: f
C++ вычислить сколькими способами можно получить строку В из строки А заданы 2 символьные строки А и Б . Требуется вычислить сколькими способами можно получить строку В из строки А, вычеркивая некоторые символы, например для строк aaabbbccc и abc это число равно 36 http://www.cyberforum.ru/cpp-beginners/thread408089.html
C++ матрица М*М
Определить с помощю функции совместимость матрицы размерности М * М относительно главной диагонали. Вывести исходную матрицу и сообщение о проверке.
C++ про одномерный массив, я вообще не шарю как делать
В одномерном массиве состоящем из n вещественных элементов вычислить: 1) сумму элементов массива с нечетными номерами 2)сумму элементов массива расположенных между первым и полледним отрицательными элементами. Сжать массив удалив из него все элементы, модуль которых не превышает 1. Освободившиеся в конце массива элементы заполнить нулями.
C++ Способы сортировки линейных массивов. http://www.cyberforum.ru/cpp-beginners/thread408083.html
Еще раз здравствуйте! В общем я создал программу которая выводит числа на экран в порядке возрастания, теперь хочу их отсортировать. Покажите пожалуйста парочку способов для сортировки. Вод код программы: #include <iostream> using namespace std; int main () { int a, i, k; for(i=0;i!=10;i++) { a=i;
C++ Crossword puzzle Помогите с заданием. “Crossword puzzle” bonus task Write a program that will generate crossword puzzle. Sample of the crosswords that your program has generated: Your program has to work in the following way: 1. Read list of words from the dictionary(txt file) 1.1. Dictionary have to contain words in lower case 1.2. Words in the dictionary can be nouns, verbs or adjectives (nouns have to... подробнее

Показать сообщение отдельно
alkagolik
1511 / 617 / 79
Регистрация: 15.07.2011
Сообщений: 3,552
15.12.2011, 16:14     Полустатическая структура данных стек.
честно говоря я не знаю что такое полустатическая структура данных. Вот вам пример стека на базе динамического массива. Дефолтный размер стека - 5 элементов. Тонкости делайте сами, как уебный скелет программа потянет
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
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <errno.h>
 
#define size    5
 
void *push ( int *stk, int *cnt, int value )
{
    if ( !( *cnt ) ){
        stk[ 0 ] = value;
        ++(*cnt);
    }
    else
    {
        if ( *cnt >= size )
            if ( ( stk = realloc ( stk, ( *cnt + 1 ) * sizeof ( int ) ) ) == NULL )
                exit ( EXIT_FAILURE );
 
        memmove ( stk + 1, stk, *cnt * sizeof ( int ) );
        stk[ 0 ] = value;
        ++(*cnt);
    }
 
    return (void *) stk;
}
 
void *pop ( int *stk, int *cnt, int *value )
{
    if ( *cnt )
    {
        *value = stk[ 0 ];
        memmove ( stk, stk + 1, (*cnt - 1) * sizeof ( int ) );
 
        if ( *cnt > size )
            if ( ( stk = realloc ( stk, ( *cnt - 1 ) * sizeof ( int ) ) ) == NULL )
                exit ( EXIT_FAILURE );
        --(*cnt);
    }
    else
        printf("\nстэк пуст");
 
    return (void *) stk;
}
 
int main ( void )
{
    int cnt = 0;
    int val, i = 0;
    int *stack = (int *) malloc ( size * sizeof ( int ) );
    if ( stack == NULL )
        exit( EXIT_FAILURE );
 
    while ( i < 10 )
    {
        stack = (int *) push( stack, &cnt, i );
        printf ( "%i ", i++ );
    }
    puts("");
    while ( i-- )
    {
        stack = (int *) pop ( stack, &cnt, &val );
        printf ( "%i ", val );
    }
    puts("");
 
    free ( stack );
    exit(EXIT_SUCCESS);
}
 
Текущее время: 04:27. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru