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

Организация меню и создание функции - C++

Восстановить пароль Регистрация
 
tema93
0 / 0 / 0
Регистрация: 07.11.2010
Сообщений: 15
14.11.2010, 13:17     Организация меню и создание функции #1
Доброго времени суток! Я написал два кода
1 .Ввести строку текста. При наличии в строке трех плюсов подряд(+++) заменяю на один
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <string>
#include <iostream>
int main()
{
    string str;
    int p;
        while (str.empty()|| str.size()<=5)
          {
                cout<<"vvedi stroky"<<endl;
                cin>>str;
           }
                        while(( p=str.find("+++"))!=string::npos)
                        {cout<<'\n'<<"p="<<p;
                            str.replace(p,3,"*");
                            }
       cout<<'\n'<<str;
getch();
}
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
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
#include <iostream>
 
using namespace std;
 
 
void Transliterate(char* str, char* newStr)
{
        for (; *str != 0; str++)
        {
                switch (str[0])
                {
                        case 'а': strcat(&newStr[0], "a"); break;
                        case 'б': strcat(&newStr[0], "b"); break;
                        case 'в': strcat(&newStr[0], "v"); break;
                        case 'г': strcat(&newStr[0], "g"); break;
                        case 'д': strcat(&newStr[0], "d"); break;
                case 'е': strcat(&newStr[0], "e"); break;
                case 'ё': strcat(&newStr[0], "ye"); break;
                case 'ж': strcat(&newStr[0], "zh"); break;
                case 'з': strcat(&newStr[0], "z"); break;
                case 'и': strcat(&newStr[0], "i"); break;
                case 'й': strcat(&newStr[0], "y"); break;
                case 'к': strcat(&newStr[0], "k"); break;
                case 'л': strcat(&newStr[0], "l"); break;
                case 'м': strcat(&newStr[0], "m"); break;
                case 'н': strcat(&newStr[0], "n"); break;
                case 'о': strcat(&newStr[0], "o"); break;
                case 'п': strcat(&newStr[0], "p"); break;
                case 'р': strcat(&newStr[0], "r"); break;
                case 'с': strcat(&newStr[0], "s"); break;
                case 'т': strcat(&newStr[0], "t"); break;
                case 'у': strcat(&newStr[0], "u"); break;
                case 'ф': strcat(&newStr[0], "f"); break;
                case 'х': strcat(&newStr[0], "ch"); break;
                case 'ц': strcat(&newStr[0], "z"); break;
                case 'ч': strcat(&newStr[0], "ch"); break;
                case 'ш': strcat(&newStr[0], "sh"); break;
                case 'щ': strcat(&newStr[0], "ch"); break;
                case 'ъ': strcat(&newStr[0], "''"); break;
                case 'ы': strcat(&newStr[0], "y"); break;
                case 'ь': strcat(&newStr[0], "''"); break;
                case 'э': strcat(&newStr[0], "e"); break;
                case 'ю': strcat(&newStr[0], "yu"); break;
                case 'я': strcat(&newStr[0], "ya"); break;
                case 'А': strcat(&newStr[0], "A"); break;
                case 'Б': strcat(&newStr[0], "B"); break;
                case 'В': strcat(&newStr[0], "V"); break;
                case 'Г': strcat(&newStr[0], "G"); break;
                case 'Д': strcat(&newStr[0], "D"); break;
                case 'Е': strcat(&newStr[0], "E"); break;
                case 'Ё': strcat(&newStr[0], "Ye"); break;
                case 'Ж': strcat(&newStr[0], "Zh"); break;
                case 'З': strcat(&newStr[0], "Z"); break;
                case 'И': strcat(&newStr[0], "I"); break;
                case 'Й': strcat(&newStr[0], "Y"); break;
                case 'К': strcat(&newStr[0], "K"); break;
                case 'Л': strcat(&newStr[0], "L"); break;
                case 'М': strcat(&newStr[0], "M"); break;
                case 'Н': strcat(&newStr[0], "N"); break;
                case 'О': strcat(&newStr[0], "O"); break;
                case 'П': strcat(&newStr[0], "P"); break;
                case 'Р': strcat(&newStr[0], "R"); break;
                case 'С': strcat(&newStr[0], "S"); break;
                case 'Т': strcat(&newStr[0], "T"); break;
                case 'У': strcat(&newStr[0], "U"); break;
                case 'Ф': strcat(&newStr[0], "F"); break;
                case 'Х': strcat(&newStr[0], "Ch"); break;
                case 'Ц': strcat(&newStr[0], "Z"); break;
                case 'Ч': strcat(&newStr[0], "Ch"); break;
                case 'Ш': strcat(&newStr[0], "Sh"); break;
                case 'Щ': strcat(&newStr[0], "Ch"); break;
                case 'Ъ': strcat(&newStr[0], "''"); break;
                case 'Ы': strcat(&newStr[0], "Y"); break;
                case 'Ь': strcat(&newStr[0], "''"); break;
                case 'Э': strcat(&newStr[0], "E"); break;
                case 'Ю': strcat(&newStr[0], "Yu"); break;
                case 'Я': strcat(&newStr[0], "Ya"); break;
                        default: { char Temp[2] = { str[0], 0} ; strcat(&newStr[0], &Temp[0]); }
                }
        }
}
 
int main()
{
    int i,x;
            do
            {}
            while((x[i++]=getchar())!='\n');
        return 0;
}
Подскажите как мне организовать меню для этих двух программ - чтобы была одна программа , включающая эти две подпрограммы и работала с одной и той же строкой, вводим строку и выбираем что с ней сделать
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.11.2010, 13:17     Организация меню и создание функции
Посмотрите здесь:

Организация главного меню C++ Builder
Создание меню C++
C++ Организация Меню в С++
организация меню в консоли C++
Организация меню в программе C++
Создание меню C++
C++ Организация меню
Списки: общая организация, основные функции C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
M128K145
Эксперт C++
 Аватар для M128K145
8272 / 3491 / 142
Регистрация: 03.07.2009
Сообщений: 10,707
14.11.2010, 14:25     Организация меню и создание функции #2
tema93, а вы не ленивый. Но все же посмотрите на таблицу ASCII и перепишите более рационально свой второй код.

C++
1
2
3
4
5
6
7
8
9
10
11
int taskId;
std::cin>>taskId;
//0 - первая задача, 1 - вторая задача
if(taskId) // считаем, что taskId введен корректно
{
    //выполняем первую функцию
}
else
{
    //выполняем вторую функцию
}
BigCrash
1 / 1 / 0
Регистрация: 14.11.2010
Сообщений: 4
14.11.2010, 17:24     Организация меню и создание функции #3
попробуй это всё заключить в библиотеку и не забудь её подключить к программе
Yandex
Объявления
14.11.2010, 17:24     Организация меню и создание функции
Ответ Создать тему
Опции темы

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