Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
0 / 0 / 0
Регистрация: 09.02.2013
Сообщений: 42
1

как эту программу сделать через функции пользователя?

05.06.2013, 12:39. Показов 409. Ответов 6
Метки нет (Все метки)

как эту программу сделать через функции пользователя?
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
#include <iostream>
#include <string.h>
using namespace std;
int main()
{
    const int maxlen = 100;
    char input_buffer[maxlen];
    char word_buffer[maxlen];
    int word_len = 0;
 
    cout << "Enter string for analysis:" << endl;
    cin.getline(input_buffer, maxlen);
    cout << "You have entered string : " << input_buffer << endl;
        cout << "Founded words: " << endl;
    
        for(unsigned int i = 0; i < strlen(input_buffer) + 1; i++)
    {
        char current_char = input_buffer[i];
    
        if(current_char == ' ' || current_char == '.' || current_char == ',' || current_char == '!' || current_char == ':' || current_char == '\0')
        {
            if(word_len > 0 && (word_len % 2 == 0))
            {
                
                word_buffer[word_len] = '\0';
 
                cout << word_buffer << endl;
                
            }
            
            word_len = 0;
        }
        else
        {
            
            word_buffer[word_len] = current_char;
            word_len++;
        }
    }
    cout << "Press any key to exit" << endl; 
    cin.get();
    return 0;
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
05.06.2013, 12:39
Ответы с готовыми решениями:

как тут эту программу через два класса сделать ?
как тут эту программу через два класса сделать ? #include &lt;iostream&gt; #include &lt;cstdlib&gt;...

Как переделать код?. Нужно сделать через функции пользователя
#include &lt;string.h&gt; #include &lt;iostream&gt; #include &lt;algorithm&gt; using namespace std; int...

Как написать эту программу через rand?
#include &lt;iostream&gt; #include &lt;iomanip&gt; #include &lt;cstdlib&gt; #include &lt;ctime&gt; using namespace std;...

Как выполнить эту программу через процедуру?
Дано вещественное число X (|X| &lt; 1) и целое число N &gt; 0. Написать функцию для вычисления суммы...

__________________

Записывайтесь на профессиональные курсы C++ разработчиков
6
:)
Эксперт С++
4766 / 3260 / 497
Регистрация: 19.02.2013
Сообщений: 9,046
05.06.2013, 13:27 2
Цитата Сообщение от Верони4е4ка Посмотреть сообщение
сделать через функции пользователя
Что Вы под этим подразумеваете?
1
0 / 0 / 0
Регистрация: 09.02.2013
Сообщений: 42
05.06.2013, 13:43  [ТС] 3
Tulosba, что бы в main функции только вызывались ... а не выполнялись
0
2 / 2 / 0
Регистрация: 02.04.2011
Сообщений: 37
05.06.2013, 14:02 4
У вас тут всего три функции

Цитата Сообщение от Верони4е4ка Посмотреть сообщение
int main()
Цитата Сообщение от Верони4е4ка Посмотреть сообщение
cin.getline(input_buffer, maxlen);
Цитата Сообщение от Верони4е4ка Посмотреть сообщение
cin.get();
выполняется main, а в нем вызываются cin.getline() и cin.get(). Какие еще функции?. Если хотите упростить main, то можно вынести проверку и сделать ее отдельной функцией и вызывать ее в main.
1
0 / 0 / 0
Регистрация: 09.02.2013
Сообщений: 42
05.06.2013, 14:08  [ТС] 5
IIIKBAJL, да если можете , то сделайте так
0
2 / 2 / 0
Регистрация: 02.04.2011
Сообщений: 37
05.06.2013, 15:40 6
Ну как-то так
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
 bool Check(char current_char)
{
if(current_char == ' ' || current_char == '.' || current_char == ',' || current_char == '!' || current_char == ':' || current_char == '\0')
   return true;
      else false;
 }
 
 bool Check2(int word_len)
 {
   if(word_len > 0 && (word_len % 2 == 0))
     return true;
    else return false;
 }
 
int main()
{
    const int maxlen = 100;
    char input_buffer[maxlen];
    char word_buffer[maxlen];
    int word_len = 0;
 
    cout << "Enter string for analysis:" << endl;
    cin.getline(input_buffer, maxlen);
    cout << "You have entered string : " << input_buffer << endl;
        cout << "Founded words: " << endl;
   for(unsigned int i = 0; i < strlen(input_buffer) + 1; i++)
    {
        char current_char = input_buffer[i];
        bool a = Check(current_char);
        if(a==true)
            { bool b = Check2(word_len);
              if(b==true){ word_buffer[word_len] = '\0'; cout << word_buffer << endl;}
            }
         else { word_buffer[word_len] = current_char;  word_len++; }        
            
       word_len = 0;
       
    }
    cout << "Press any key to exit" << endl;
    cin.get();
    return 0;
}
1
0 / 0 / 0
Регистрация: 09.02.2013
Сообщений: 42
05.06.2013, 20:02  [ТС] 7
IIIKBAJL, спасибо )

Добавлено через 4 часа 4 минуты
IIIKBAJL, а можно как-то через другой тип данных, ну не bool , a int ?
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
05.06.2013, 20:02

Заказываю контрольные, курсовые, дипломные работы и диссертации здесь.

как записать эту программу через функцию main и ее прототип?
можите помоч! как записать эту программу через функцию main и ее прототип? в конце вызвать эту...

Как можно четко изложить эту программу через string?
С клавиатуры вводятся две строки, содержащие некоторые слова. Слова перечислены через запятую....

Как переделать эту программу, чтобы она выполнялась через функцию?
#include &quot;stdafx.h&quot; #include &lt;iostream&gt; using namespace std; int main(int argc, char* argv)...

Как переделать эту программу, чтобы она выполнялась через функцию?
#include &quot;stdafx.h&quot; #include &lt;iostream&gt; using namespace std; int main() { int Array; ...


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

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

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