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

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

Войти
Регистрация
Восстановить пароль
 
Цветик
3 / 1 / 1
Регистрация: 13.10.2010
Сообщений: 42
#1

Стек - C++

22.11.2010, 12:00. Просмотров 303. Ответов 0
Метки нет (Все метки)

В текстовом файле записана без ошибок формула вида: цифра или S(формула, формула), или P(формула, формула), где S (a, b) = (a+b) mod 10, P(a, b) = (a*b) mod 10. Вычислить значение данной формулы. Например: P(6, S(8, 4)) = 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
#include<iostream.h>
#include<conio.h>
#include<stdio.h>
struct stek
{
char sym;
struct stek *next;
};
stek *vstek (stek *ns, int x)
{
    stek *tmp1; // вспомогательный указатель
    tmp1 = new struct stek; /*выделяем память под новый элемент стека*/
    tmp1 -> sym = x; // задаем значение
    tmp1 -> next = ns; /*добавляем новый элемент в вершину стека*/
    ns = tmp1;
    return ns; //возвращаем новое значение вершины
}
 
stek *izsteka (stek *ns)
{
    struct stek *tmp1;
    tmp1 = ns;
    if (ns == NULL) //при нулевом указателе вершины
        cout << "“Стек пуст!”";
    else
    {
        cout << "“Удаляем элемент”" << tmp -> data;
        ns = tmp1 -> next; //вершина - следующий элемент
        delete tmp1; // освобождаем память
    }
    return ns;
}
 
void main()
int i, t=0;
 
int S(a,b) = (a+b) mod 10;
int P(a,b)=(a*b)mod 10;
    char c;
    char f[10] = {'P','S','1','2','3','4','5','6','7','8','9','0'};
    FILE *f1;
    clrscr();
    f1 = fopen("doc.txt", "r"); //открываем файл для чтения
    while (!feof(f1))
    {
        fscanf(f1, "%c", &c); /*считываем очередной символ в переменную с*/
        for (j=0; j<strlen(f); j++) //перебор символов строки f
            if (c == f[j])
            vstek (&head, &ends, c); //вводим символ в стек
            else if (f[j]==')')
            
    }
Вот на этом мои мысли кончились, как дальше их складывать или умножать не знаю=(
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.11.2010, 12:00     Стек
Посмотрите здесь:

Программа добавляет введенный массив 5*5 в стек и выводит полученный стек двумя столбцами - C++
Программа добавляет введенный массив 5*5 в стек и выводит полученный стек двумя столбцами #include &lt;iostream&gt; #include &lt;stdlib.h&gt; ...

при работе рекурсивной функции заканчивается стек и программа соответственно; как сделать так, чтобы она писала "стек закончился"? - C++
Сабж g++ 4.5.0

Стек - C++
Имеется такой код: struct stack { int a; struct stack *next; }; void push(stack* &amp;next, int a) { stack *pv =...

Стек - C++
#include &quot;stdafx.h&quot; #include &lt;iostream&gt; using namespace std; class Stack_mass { public: int *data; int max_count,...

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

Стек - C++
#include &quot;stdafx.h&quot; #include &lt;iostream&gt; using namespace std; class Stack { private: struct st ...

Стек - C++
Ребят, объясните один момент если не сложно. Программа делает 3 операции со стеком, запоминает значение в стеке, показывает их и...

Стек - C++
Как увеличить стек в Visual C++ Добавлено через 1 минуту 54 секунды #pragma comment (Linker,&quot;/stack:xxx) не передлагать.

Стек - C++
Помогите сделать программу.Создать стек с числами в диапазоне от –50 до +50.Подсчитать, сколько элементов стека имеют значение, которое...

Стек - C++
Создать программу, реализовав работу со структурой данных - стеком. В программе реализовать добавление и удаление элементов. вот у...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

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