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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 13, средняя оценка - 4.85
poseidon
0 / 0 / 0
Регистрация: 06.12.2010
Сообщений: 21
#1

Динамические структуры данных. Формирование линейного списка. - C++

21.01.2011, 15:39. Просмотров 1789. Ответов 1
Метки нет (Все метки)

Текст помощи для некоторой программы организован в виде линейного списка.

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

Написать программу, которая обеспечивает:

□ начальное формирование текста помощи;

□ вывод текста помощи;

□ вывод поясняющего текста для заданного термина.

Программа должна обеспечивать диалог с помощью меню и контроль ошибок при вводе.

Послезавтра зачет, преподаватель толком ничего не объяснил, кроме основы. Заранее спасибо!
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.01.2011, 15:39
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Динамические структуры данных. Формирование линейного списка. (C++):

Динамические структуры данных. Сформировать динамический список, описать функцию, которая удаляет из списка за каждым вхождением элемента Е - C++
Сформировать динамический список (стек или очередь), считая, что длина списка (количество элементов) задана. Описать функцию, которая...

Динамические структуры данных. Программа ввода в структуры и вывода информации из неё. - C++
Автоматизированная информационная система на железнодорожном вокзале содержит сведения об отправлении поездов дальнего следования. Для...

Динамические структуры данных - C++
Выполнить задания 3 способами: с использованием стека, очереди, дека. Описание соответствующих типов и набор всех необходимых для их...

Динамические структуры данных - C++
Здравствуйте. Есть такой код в таких файлах: Основной .cpp-файл программы#include "stdafx.h" #include <stdio.h> #include...

Динамические структуры данных - C++
(можно с пояснением,что-то не понимаю) Есть строка символов, признаком конца которой является ;. В строке могут быть фигурные, круглые,...

Указатели и динамические структуры данных - C++
В данный момент занимаюсь изучением динамических структур данных и указателей, и вот вот возник вопрос, есть ли разница изучать эту тему в...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
igorrr37
1646 / 1274 / 133
Регистрация: 21.12.2010
Сообщений: 1,932
Записей в блоге: 7
21.01.2011, 18:59 #2
Добавлено через 1 час 51 минуту
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";
        }
    }
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.01.2011, 18:59
Привет! Вот еще темы с ответами:

Динамические структуры данных. Списки - C++
Ребят, срочно нужна помощь, помогите пожалуйста, кто чем может! Задание: В деке задать слово. Определить, является ли оно...

Динамические структуры данных о квартирах - C++
нужно помочь дорешать совсем запутался Задание: Определите алгоритм решения задачи (в словесной или графической форме); Создайте...

Динамические структуры данных на языке С/С++ - C++
Сформировать динамическую структуру,содержащую данные по студентам в следующем виде: &quot;Фамилия Имя Группа ГР RS&quot;, где ГР – год рождения, RS...

Динамические структуры данных. Дек - C++
Ребята помогите, горит степуха! Динамически разработать и реализовать на языке С следующие функции работой с Деком: 1. Создание...


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

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

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