4 / 4 / 4
Регистрация: 06.03.2011
Сообщений: 319
1

Лексикографическое сравнение стеков

08.05.2011, 23:51. Показов 1385. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Здравсвуйте помогите пожалуйста исправить ошибки. Первый вариант тот который не работает правильно второй делает всё без ошибок.

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
#include "stdafx.h"
#include"iostream"
#include <conio.h>
#include <vector>
#include <stack>
using namespace std;
char choice;
int add1;
int add2;
 
 
int main()
{
    setlocale(LC_ALL,"");
    stack<int,vector<int>>S,T,U;
 
    for(;;)
    {cout<<"[1]S"<<endl;
    cout<<"[2]U"<<endl;
    cout<<"[3]сравнение"<<endl;
    choice=getch();
    
 
    switch(choice)
    {
    case'1':
            cout<<"Введите добавляемый элемент";
            cin>>add1;
            S.push(add1);
            system("pause");
            break;
   case'2':
            cout<<"Введите добавляемый элемент";
            cin>>add1;
            U.push(add2);
            system("pause");
            break;
  case'3':
      T=S;
      cout<<(S==T? "S==T":"S!=T")<<endl;
            cout<<(S<U ? "S<U":"S>=U")<<endl;
            system("pause");
            break;
                
 
    }
 
  getch();
    }
    return 0;
}

Этот вариант работает правильно.хотелось бы этот алгоритм пеложить на первый вариант.помогите пожалуйста
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include "stdafx.h"
#include"iostream"
#include <conio.h>
#include <vector>
#include <stack>
using namespace std;
 
 
int main()
{
    setlocale(LC_ALL,"");
    stack<int,vector<int>>S,T,U;
    S.push(10); S.push(20); S.push(30); 
    cout<<"S:10 20 30"<<endl;
    T=S;
    cout<<"После T=S;получаем";
    cout<<(S==T ? "S==T" : "S!=T")<<endl;
    U.push(10);U.push(11);
    cout<<"U:10;11"<<endl;
    cout<<(S<U? "S<U":"S>=U")<<endl;
    getch();
    return 0;
}
Добавлено через 28 минут
Цифры он добавляет а вот в сравнении чтото не то....как доработать case'3'?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
08.05.2011, 23:51
Ответы с готовыми решениями:

Лексикографическое сравнение
Дали задание, надо написать функцию int strcmp(char* string1, char* string2) , суть которой в...

Лексикографическое сравнение слова со строкой
Задание следующее:Ввести строку и слово. Вывести только слова, которые лексикографически меньше...

Аналог strcmp: лексикографическое сравнение
Подскажите пожалуйста, как мы сами можем написать аналог такой функции?

Лексикографическое сравнение
Что означает «лексикографическое сравнение двух элементов относительно упорядоченного списка»?

2
быдлокодер
1724 / 911 / 106
Регистрация: 04.06.2008
Сообщений: 5,679
09.05.2011, 01:38 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
        for(;(choice== '1'||choice== '2'||choice== '3');)
        {cout<<"[1]S"<<endl;
        cout<<"[2]U"<<endl;
        cout<<"[3]сравнение"<<endl;
        cout<<"[любая другая клавиша]выход"<<endl;
        choice=getch();
        
 
        switch(choice)
        {
        case'1':
                        cout<<"Введите добавляемый элемент ";
                        cin>>add1;
                        S.push(add1);
                        break;
   case'2':
                        cout<<"Введите добавляемый элемент ";
                        cin>>add1;
                        U.push(add1);
                        break;
  case'3':
 
          if (S==U)         
           cout<<"S==T"<<endl;
          else {
           (S<U) ? (printf ("S<U\n")): (printf ("S>U\n"));
           }
                        break;
                                
 
        }
 
        }
1
4 / 4 / 4
Регистрация: 06.03.2011
Сообщений: 319
09.05.2011, 22:01  [ТС] 3
Лексикографическое сравнение стеков.
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
#include "stdafx.h"
#include"iostream"
#include <conio.h>
#include <vector>
#include <stack>
using namespace std;
char choice;
int add1;
int add2;
 
 
int main()
{
        setlocale(LC_ALL,"");
        stack<int,vector<int>>S,T,U;
 
         for(;;)
        {
            cout<<"[1]Добавить элемент в S"<<endl;
            cout<<"[2]Добавить элемент в U"<<endl;
            cout<<"[3]Сравнение S и U"<<endl;
            cout<<"[4]Выход"<<endl;
            choice=getch();
        
 
        switch(choice)
        {
        case'1':
                        cout<<"Введите добавляемый элемент S ";
                        cin>>add1;
                        S.push(add1);
                        system("pause");
                        break;
        case'2':
                        cout<<"Введите добавляемый элемент U ";
                        cin>>add2;
                        U.push(add2);
                        system("pause");
                        break;
        case'3':
                        if (S==U)         
                           cout<<"S==T"<<endl;
                        else 
                        {
                          (S<U) ? (printf ("S<U\n")): (printf ("S>U\n"));
                        }
                        system("pause");
                        break;
        case'4':
            exit(1);     
        }
        getch();
         }
         return 0;
            
}
0
09.05.2011, 22:01
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
09.05.2011, 22:01
Помогаю со студенческими работами здесь

Лексикографическое сравнение строк
В методичке столкнулся с раздачей на лексикографическое сравнение строк Пробовал решать перебором,...

Лексикографическое сравнение. Сортировка строк по алфавиту
Как отсортировать двумерный массив в лексикографическом порядке в меньшую сторону. (Строки содержат...

Сравнение элементов стеков
Даны два стека. Задача состоит в том, чтобы создать третий стек из элементов первого, которых нет...

Сравнение двух стеков (Equal)
Нужно осуществить проверку равенства (Equal) двух стеков. Осуществил проверку подобия (Similar),а...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru