Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 25.11.2010, 17:42   #1
Цветик
Пользователь
 
Регистрация: 12.10.2010
Сообщений: 21
По умолчанию Стек

В текстовом файле записана без ошибок формула вида: цифра или S(формула, формула), или P(формула, формула), где S (a, b) = (a+b) mod 10, P(a, b) = (a*b) mod 10. Вычислить значение данной формулы. Например: P(6, S(8, 4)) = 2.
Код:
#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]==')')	
		



}
Вот до чего дошла не знаю как и что дальше сделать=(
Цветик вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Стек [ICQ] Помощь студентам 5 02.05.2010 13:44
стек в с++ Aleksa_ks Помощь студентам 0 02.05.2010 12:12
стек. Nelson1992 Фриланс 2 16.02.2010 00:28
стек в PM vladimir0108 Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 0 08.01.2009 01:18