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

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

Войти
Регистрация
Восстановить пароль
 
Azdeman
Модератор
Эксперт HTML/CSSЭксперт PHP
1674 / 1218 / 323
Регистрация: 12.01.2011
Сообщений: 4,840
#1

Написать программу помощи - C++

09.02.2011, 16:26. Просмотров 405. Ответов 6
Метки нет (Все метки)

Здравствуйте , вот нужно зделать Программу

Текст помощи для не которой программы организован в виде линейного списка
Каждая компонента текста помощи содержит термин (слово) и текст,содержащий пояснение к этому термину.Количество строк текста,относящихся к одному термину,составляет от одной до пяти

Написать программу,которая обеспечивает
- начальное формирование текста помощи;
- вывод текста помощи;
- вывод поясняющего текста для заданного термина
Программа должна обеспечить диалог с помощью меню и контроль ошибок при вводе.

Написать нужно не с помощью классов ,а с помощью динамических структур ... Мы классы еще не учили .

Добавлено через 1 минуту
Вот так с помощью классов,а мне нужно что бы с помощью динамическиз структур


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
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
#include <iostream>
using namespace std;
 
template<class T>
struct node{
    T term;
    T expl;
    node* next;
    node():next(0){}
    node(T a, T b):next(0), term(a), expl(b){}
};
 
template<class T>
struct list{
    node<T>* head;
    list():head(0){}
    void add(T, T);
    void show();
    void help(T);
};
 
template<class T>
void list<T>::add(T a, T b){
    node<T>* temp=new node<T>(a, b);
    if(head==0) head=temp;
    else{
        node<T>* t=head;
        while(t->next!=0) t=t->next;
        t->next=temp;
    }
}
 
template<class T>
void list<T>::show(){
    node<T>* temp=head;
    while(temp!=0){
        cout<<temp->term<<"\n"<<temp->expl<<"\n\n";
        temp=temp->next;
    }
}
 
template<class T>
void list<T>::help(T t){
    node<T>* temp=head;
    while(temp!=0){
        if(temp->term==t){
            cout<<temp->expl<<"\n";
            return;
        }
        else temp=temp->next;
    }
    cout<<"Term not found\n";
}
 
template<class T>
void formList(list<T>& l){
    cout<<"Formirovanie spiska pomoschi: \n";
    string t, e;
    while(true){
        cout<<"input term(0 exit into menu)\n";
        getline(cin, t);
        if(t=="0") break;
        cout<<"input explanation\n";
        getline(cin, e);
        l.add(t, e);
        cout<<"\n";
    }
};
 
template<class T>
void showList(list<T>& l){
    cout<<"\nProsmotr spiska pomoschi: \n";
    if(l.head==0) cout<<"Spisok pust\n";
    else l.show();
};
 
template<class T>
void searchList(list<T>& l){
    string t;
    cout<<"\n\nVvedite termin dlya poiska(0 exit into menu)\n";
    while(true){
        getline(cin, t);
        if(t=="0") break;
        l.help(t);
    }
};
 
int main(){
    list<string> l;
    int opt;
    while(true){
        cout<<"\n"
        "1 - Formirovanie spiska pomoschi\n"
        "2 - Prosmotr spiska pomoschi\n"
        "3 - Poisk termina v spiske\n"
        "0 - Exit\n";
        cin>>opt;
        cin.ignore();
        switch(opt){
            case 1: formList(l);   break;
            case 2: showList(l);   break;
            case 3: searchList(l); break;
            case 0: return 0;
            default: cout<<"Wrong option\n";
        }
    }
}
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.02.2011, 16:26     Написать программу помощи
Посмотрите здесь:

Составить программу для решения задачи с целыми числами при помощи циклов C++
C++ Написать программу в C++
C++ Написать программу учета сдачи зачетов при помощи битовых полей (исправить код)
Написать программу,которая находит среднее значение массива целых чисел при помощи функции C++
C++ написать программу
C++ Как данную программу реализовать при помощи классов
Написать программу C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
igorrr37
1634 / 1262 / 128
Регистрация: 21.12.2010
Сообщений: 1,924
Записей в блоге: 7
09.02.2011, 16:37     Написать программу помощи #2
нет здесь классов, только две структуры, а слово class можно заменить на typename
Azdeman
Модератор
Эксперт HTML/CSSЭксперт PHP
1674 / 1218 / 323
Регистрация: 12.01.2011
Сообщений: 4,840
09.02.2011, 16:41  [ТС]     Написать программу помощи #3
Цитата Сообщение от igorrr37 Посмотреть сообщение
typename
Тогда вот так получиться да ???

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
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
#include <iostream>
using namespace std;
 
template<typename>
struct node{
    T term;
    T expl;
    node* next;
    node():next(0){}
    node(T a, T b):next(0), term(a), expl(b){}
};
 
template<typename>
struct list{
    node<T>* head;
    list():head(0){}
    void add(T, T);
    void show();
    void help(T);
};
 
template<typename>
void list<T>::add(T a, T b){
    node<T>* temp=new node<T>(a, b);
    if(head==0) head=temp;
    else{
        node<T>* t=head;
        while(t->next!=0) t=t->next;
        t->next=temp;
    }
}
 
template<typename>
void list<T>::show(){
    node<T>* temp=head;
    while(temp!=0){
        cout<<temp->term<<"\n"<<temp->expl<<"\n\n";
        temp=temp->next;
    }
}
 
template<typename>
void list<T>::help(T t){
    node<T>* temp=head;
    while(temp!=0){
        if(temp->term==t){
            cout<<temp->expl<<"\n";
            return;
        }
        else temp=temp->next;
    }
    cout<<"Term not found\n";
}
 
template<typename>
void formList(list<T>& l){
    cout<<"Formirovanie spiska pomoschi: \n";
    string t, e;
    while(true){
        cout<<"input term(0 exit into menu)\n";
        getline(cin, t);
        if(t=="0") break;
        cout<<"input explanation\n";
        getline(cin, e);
        l.add(t, e);
        cout<<"\n";
    }
};
 
template<typename>
void showList(list<T>& l){
    cout<<"\nProsmotr spiska pomoschi: \n";
    if(l.head==0) cout<<"Spisok pust\n";
    else l.show();
};
 
template<typename>
void searchList(list<T>& l){
    string t;
    cout<<"\n\nVvedite termin dlya poiska(0 exit into menu)\n";
    while(true){
        getline(cin, t);
        if(t=="0") break;
        l.help(t);
    }
};
 
int main(){
    list<string> l;
    int opt;
    while(true){
        cout<<"\n"
        "1 - Formirovanie spiska pomoschi\n"
        "2 - Prosmotr spiska pomoschi\n"
        "3 - Poisk termina v spiske\n"
        "0 - Exit\n";
        cin>>opt;
        cin.ignore();
        switch(opt){
            case 1: formList(l);   break;
            case 2: showList(l);   break;
            case 3: searchList(l); break;
            case 0: return 0;
            default: cout<<"Wrong option\n";
        }
    }
}
igorrr37
1634 / 1262 / 128
Регистрация: 21.12.2010
Сообщений: 1,924
Записей в блоге: 7
09.02.2011, 16:45     Написать программу помощи #4
Сообщение было отмечено автором темы, экспертом или модератором как ответ
вот без шаблонов
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
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
#include <iostream>
using namespace std;
 
struct node{
string term;
string expl;
node* next;
node():next(0){}
node(string a, string b):next(0), term(a), expl(b){}
};
 
struct list{
node* head;
list():head(0){}
void add(string, string);
void show();
void help(string);
};
 
void list::add(string a, string b){
node* temp=new node(a, b);
if(head==0) head=temp;
else{
node* t=head;
while(t->next!=0) t=t->next;
t->next=temp;
}
}
 
void list::show(){
node* temp=head;
while(temp!=0){
cout<<temp->term<<"\n"<<temp->expl<<"\n\n";
temp=temp->next;
}
}
 
void list::help(string t){
node* temp=head;
while(temp!=0){
if(temp->term==t){
cout<<temp->expl<<"\n";
return;
}
else temp=temp->next;
}
cout<<"Term not found\n";
}
 
void formList(list& l){
cout<<"Formirovanie spiska pomoschi: \n";
string t, e;
while(true){
cout<<"input term(0 exit into menu)\n";
getline(cin, t);
if(t=="0") break;
cout<<"input explanation\n";
getline(cin, e);
l.add(t, e);
cout<<"\n";
}
};
 
void showList(list& l){
cout<<"\nProsmotr spiska pomoschi: \n";
if(l.head==0) cout<<"Spisok pust\n";
else l.show();
};
 
void searchList(list& l){
string t;
cout<<"\n\nVvedite termin dlya poiska(0 exit into menu)\n";
while(true){
getline(cin, t);
if(t=="0") break;
l.help(t);
}
};
 
int main(){
list l;
int opt;
while(true){
cout<<"\n"
"1 - Formirovanie spiska pomoschi\n"
"2 - Prosmotr spiska pomoschi\n"
"3 - Poisk termina v spiske\n"
"0 - Exit\n";
cin>>opt;
cin.ignore();
switch(opt){
case 1: formList(l); break;
case 2: showList(l); break;
case 3: searchList(l); break;
case 0: return 0;
default: cout<<"Wrong option\n";
}
}
}
Azdeman
Модератор
Эксперт HTML/CSSЭксперт PHP
1674 / 1218 / 323
Регистрация: 12.01.2011
Сообщений: 4,840
09.02.2011, 16:50  [ТС]     Написать программу помощи #5
Спосибо большое =)

Добавлено через 2 минуты
А еще один вопрос .... Вот так и надо без шаблонов?? ..
igorrr37
1634 / 1262 / 128
Регистрация: 21.12.2010
Сообщений: 1,924
Записей в блоге: 7
09.02.2011, 17:03     Написать программу помощи #6
да, вы их ещё не изучали, раз классы не знаете
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
09.02.2011, 17:05     Написать программу помощи
Еще ссылки по теме:

Написать программу C++
Написать программу C++
C++ Напишите программу, при помощи которой можно рассчитать доход по вкладу
Написать программу расшифровки сообщения, зашифрованного при помощи двоичного кода C++

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

Или воспользуйтесь поиском по форуму:
Azdeman
Модератор
Эксперт HTML/CSSЭксперт PHP
1674 / 1218 / 323
Регистрация: 12.01.2011
Сообщений: 4,840
09.02.2011, 17:05  [ТС]     Написать программу помощи #7
ну да мы еще Шаблоны не изучяем ... Спасибо вам.
Yandex
Объявления
09.02.2011, 17:05     Написать программу помощи
Ответ Создать тему
Опции темы

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