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

C++ Как реализовать поиск на Русском в консоле - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Вычисления значений функции на заданном промежутке с заданным шагом: http://www.cyberforum.ru/cpp-beginners/thread271423.html
Составьте программу вычисления значений функции на заданном промежутке с заданным шагом: язык С
C++ Работа с указателями Доброго времени суток! Прошу помощи в решении очень интересной задачи. Перепробовал все свои знания., не получается( Чаще всего получаю: conversion from 'int' to 'float', possible loss of data В результате неаккуратного обращения с указателями, целочислен-ное значение типа int было записано по адресу, по которому в программе располагается переменная типа float (скажем, x). Приведите... http://www.cyberforum.ru/cpp-beginners/thread271415.html
C++ Тени (массив)
Тени. В трехмерном массиве k(l, m, n), состоящем из нулей и единиц, хранится сеточное изображение некоторого трехмерного тела. Получить в двумерных массивах три проекции (тени) этого тела. В программе использовать динамические массивы.
сумма элементов матрицы по схеме C++
Помогите пожалуйста. в программировании совсем новичок..Нужно написать программу, которая считает сумму элементов квадратной матрицы размером n x n, расположенных по схеме. в файле рисунок 2 схем, по каким нужно суммировать элементы.
C++ задачи http://www.cyberforum.ru/cpp-beginners/thread271406.html
кто хочет за 20 долларов 10 задач решить???
C++ Вывод нескольких рандомных чисел из массива Народ, есть такой вопрос. У меня есть массив с 15 разными числами. Как сделать так, чтобы на экран выводилось 5 рандомных чисел чисел из этого массива. И необходимо, чтобы при следующем запуске эта комбинация уже отличалась от предыдущей. подробнее

Показать сообщение отдельно
Sylvos
-25 / 6 / 1
Регистрация: 06.04.2011
Сообщений: 85
06.04.2011, 20:54     C++ Как реализовать поиск на Русском в консоле
Создать структуру ВИДЕОМАГАЗИН со следующими полями:
- Название фильма
- Режиссер
- Жанр
- Рейтинг популярности
- Цена диска
В магазине должно присутствовать не менее 10 дисков с разными фильмами и реализованы возможности:
- Поиск по названию
- Поиск по жанру
- Поиск по режиссеру
- Самый популярный фильм в жанре
- Показ всех записей и добавление


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
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
#include <iostream>
#include <iomanip>
#include <windows.h>
#include <math.h>
#include <stdio.h>
#include <time.h>
#include <conio.h>
using namespace std;
//---------------------------------------------------
const int size=20;
struct VideoStore                       //Создать структуру ВИДЕОМАГАЗИН со следующими полями:
{
    char    MovieName[50];              //Название фильма
    char    Director[50];               //Режиссер
    char    Genre[50];                  //Жанр
    int     PopularityRating;           //Рейтинг популярности
    int     PriceROM;                   //Цена диска
};
//---------------------------------------------------
void Filling(VideoStore *Movie);
void SearchByName(VideoStore *Movie);
void SearchByGenre(VideoStore *Movie);
void SearchByDirector(VideoStore *Movie);
        /*TheMostPopularFilmInTheGenre*/
void ShowingAll(VideoStore *Movie);
//---------------------------------------------------
int main()
{
    cout.setf(ios::left);
    setlocale(LC_ALL,"Russian");
    srand(time(NULL));
    SetConsoleTitleW(L"ВИДЕОМАГАЗИН");
//---------------------------------------------------
    VideoStore Movie[size];
//заполнение сделал через функцию чтобы не засирать main
    Filling(Movie); //В магазине должно присутствовать не менее 10 дисков с разными фильмами и реализованы возможности:
    int u=0;
    do
    {
        cout<<"1. Поиск по названию"<<endl
            <<"2. Поиск по жанру"<<endl
            <<"3. Поиск по режиссеру"<<endl
            <<"4. Самый популярный фильм в жанре"<<endl
            <<"5. Показ всех записей и добавление"<<endl
            <<"6. Выход"<<endl;
        cin>>u;
        switch(u)
        {
            case 1: SearchByName(Movie);            break;
            case 2: SearchByGenre(Movie);           break;
            case 3: SearchByDirector(Movie);        break;
            case 4:     break;
            case 5: for(int i=0;i<size;i++)
                        ShowingAll(&Movie[i]);      break;
            case 6:     break;
            default: cout<<"Неправильный ввод!\n";  break;
        }
    }
    while(u!=6);
 
    return 0;
}
void Filling(VideoStore *Movie)
{
    strcpy(Movie[0].MovieName,"Daybreakers");
    strcpy(Movie[1].MovieName,"The Book of Eli");
    strcpy(Movie[2].MovieName,"Legion");
    strcpy(Movie[3].MovieName,"Edge of Darkness");
    strcpy(Movie[4].MovieName,"Tooth Fairy");
    strcpy(Movie[5].MovieName,"Dorian Gray");
    strcpy(Movie[6].MovieName,"From Paris with Love");
    strcpy(Movie[7].MovieName,"Did You Hear About the Morgans?");
    strcpy(Movie[8].MovieName,"The Crazies");
    strcpy(Movie[9].MovieName,"Clash of the Titans");
    strcpy(Movie[10].MovieName,"Kick-Ass");
    strcpy(Movie[11].MovieName,"Robin Hood");
    strcpy(Movie[12].MovieName,"Prince of Persia: The Sands of Time");
    strcpy(Movie[13].MovieName,"The A-Team");
    strcpy(Movie[14].MovieName,"Splice");
    strcpy(Movie[15].MovieName,"Predators");
    strcpy(Movie[16].MovieName,"The Sorcerer's Apprentice");
    strcpy(Movie[17].MovieName,"Inception");
    strcpy(Movie[18].MovieName,"Salt");
    strcpy(Movie[19].MovieName,"The Expendables");
    strcpy(Movie[0].Director,"Майкл Спириг");
    strcpy(Movie[1].Director,"Альберт Хьюз");
    strcpy(Movie[2].Director,"Чарльз Скотт");
    strcpy(Movie[3].Director,"Мартин Кэмпбелл");
    strcpy(Movie[4].Director,"Майкл Лембек");
    strcpy(Movie[5].Director,"Оливер Паркер");
    strcpy(Movie[6].Director,"Пьер Морель");
    strcpy(Movie[7].Director,"Марк Лоуренс");
    strcpy(Movie[8].Director,"Брек Эйснер");
    strcpy(Movie[9].Director,"Луи Летерье");
    strcpy(Movie[10].Director,"Мэттью Вон");
    strcpy(Movie[11].Director,"Ридли Скотт");
    strcpy(Movie[12].Director,"Майк Ньюэлл");
    strcpy(Movie[13].Director,"Джо Карнахан");
    strcpy(Movie[14].Director,"Винченцо Натали");
    strcpy(Movie[15].Director,"Нимрод Антал");
    strcpy(Movie[16].Director,"Джон Тёртелтауб");
    strcpy(Movie[17].Director,"Кристофер Нолан");
    strcpy(Movie[18].Director,"Филлип Нойс");
    strcpy(Movie[19].Director,"Сильвестр Сталлоне");
    strcpy(Movie[0].Genre,"Ужасы");
    strcpy(Movie[1].Genre,"Боевик");
    strcpy(Movie[2].Genre,"Фэнтези");
    strcpy(Movie[3].Genre,"Триллер");
    strcpy(Movie[4].Genre,"Комедия");
    strcpy(Movie[5].Genre,"Триллер");
    strcpy(Movie[6].Genre,"Боевик");
    strcpy(Movie[7].Genre,"Комедия");
    strcpy(Movie[8].Genre,"Ужасы");
    strcpy(Movie[9].Genre,"Приключения");
    strcpy(Movie[10].Genre,"Комедия");
    strcpy(Movie[11].Genre,"Приключения");
    strcpy(Movie[12].Genre,"Приключения");
    strcpy(Movie[13].Genre,"Боевик");
    strcpy(Movie[14].Genre,"Фантастика");
    strcpy(Movie[15].Genre,"Фантастика");
    strcpy(Movie[16].Genre,"Фэнтези");
    strcpy(Movie[17].Genre,"Фантастика");
    strcpy(Movie[18].Genre,"Боевик");
    strcpy(Movie[19].Genre,"Боевик");
    Movie[0].PopularityRating=6;
    Movie[1].PopularityRating=7;
    Movie[2].PopularityRating=5;
    Movie[3].PopularityRating=6;
    Movie[4].PopularityRating=6;
    Movie[5].PopularityRating=9;
    Movie[6].PopularityRating=8;
    Movie[7].PopularityRating=6;
    Movie[8].PopularityRating=7;
    Movie[9].PopularityRating=6;
    Movie[10].PopularityRating=7;
    Movie[11].PopularityRating=8;
    Movie[12].PopularityRating=6;
    Movie[13].PopularityRating=8;
    Movie[14].PopularityRating=5;
    Movie[15].PopularityRating=8;
    Movie[16].PopularityRating=6;
    Movie[17].PopularityRating=8;
    Movie[18].PopularityRating=8;
    Movie[19].PopularityRating=7;
    Movie[0].PriceROM=26;
    Movie[1].PriceROM=26;
    Movie[2].PriceROM=26;
    Movie[3].PriceROM=26;
    Movie[4].PriceROM=59;
    Movie[5].PriceROM=26;
    Movie[6].PriceROM=26;
    Movie[7].PriceROM=26;
    Movie[8].PriceROM=26;
    Movie[9].PriceROM=26;
    Movie[10].PriceROM=26;
    Movie[11].PriceROM=26;
    Movie[12].PriceROM=26;
    Movie[13].PriceROM=37;
    Movie[14].PriceROM=103;
    Movie[15].PriceROM=38;
    Movie[16].PriceROM=26;
    Movie[17].PriceROM=26;
    Movie[18].PriceROM=26;
    Movie[19].PriceROM=56;
}
void ShowingAll(VideoStore *Movie)
{
    cout<<"-------------------------------------------------------------------------------"<<endl
        <<setw(15)<<"Название"<<Movie->MovieName        <<endl
        <<setw(15)<<"Режиссер"<<Movie->Director         <<endl
        <<setw(15)<<"Жанр"<<Movie->Genre                <<endl
        <<setw(15)<<"Рейтинг"<<Movie->PopularityRating  <<endl
        <<setw(15)<<"Цена диска"<<Movie->PriceROM       <<endl;
}
void SearchByName(VideoStore *Movie)
{
    char Name[50];
    cout<<"Введите название фильма"<<endl;
    cin>>Name;
    for(int i=0;i<size;i++)
        //if(strcmp(Movie[i].MovieName,Name)==0) //сравнивается все слово
        if(Name[0]==Movie[i].MovieName[0]&&Name[1]==Movie[i].MovieName[1]&&Name[2]==Movie[i].MovieName[2]) //поиск по первым 3 буквам
            ShowingAll(&Movie[i]);
}
void SearchByGenre(VideoStore *Movie)
{
    char Name[50];
    int u;
    cout<<"Введите жанр фильма"<<endl           //сруским языком возникли проблемы цикл зависает
        <<"1. Ужасы"<<endl
        <<"2. Боевик"<<endl
        <<"3. Фэнтези"<<endl
        <<"4. Триллер"<<endl
        <<"5. Комедия"<<endl
        <<"6. Приключения"<<endl
        <<"7. Фантастика"<<endl;
    cin>>u;
    switch(u)
    {
        case 1: strcpy(Name,"Ужасы"); break;
        case 2: strcpy(Name,"Боевик"); break;
        case 3: strcpy(Name,"Фэнтези"); break;
        case 4: strcpy(Name,"Триллер"); break;
        case 5: strcpy(Name,"Комедия"); break;
        case 6: strcpy(Name,"Приключения"); break;
        case 7: strcpy(Name,"Фантастика"); break;
    }
    for(int i=0;i<size;i++)
        if(strcmp(Movie[i].Genre,Name)==0)
            ShowingAll(&Movie[i]);
}
void SearchByDirector(VideoStore *Movie)          //НЕ РАБОТАЕТ С Русским языком :(
{
    char Name[50];
    cout<<"Введите режиссера"<<endl;
    cin>>Name;
    for(int i=0;i<size;i++)
        if(Name[0]==Movie[i].Director[0]&&Name[1]==Movie[i].Director[1]&&Name[2]==Movie[i].Director[2])
            ShowingAll(&Movie[i]);
}
//ОСТАЛОСЬ Поиск по режиссеру  И   Самый популярный фильм в жанре
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 12:49. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru