0 / 0 / 0
Регистрация: 10.05.2016
Сообщений: 21
1

Нужны комментарии к коду

25.01.2020, 18:18. Показов 1339. Ответов 7
Метки нет (Все метки)

если можно расписать каждое действие
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
#include <stdlib.h>
#include <stdio.h>
using namespace std;
 
const int SIZE = 100;
 
char* pr2(char* in);
char* pr1(char* in);
char* copy(char*, char*, int);
void form(char* a, char* b, char, char* out);
 
int main()
{
    char buf[SIZE], buf2[SIZE], outbuf[2 * SIZE] = { ' ' }, p;
 
    cout << "Vvedite 1 stroky: ";
    cin.getline(buf, SIZE);
    cout << "Vvedite 2 stroky: ",
        cin.getline(buf2, SIZE);
    cout << "Vvedite bukvu: ";
    cin >> p;
    form(buf, buf2, p, outbuf);
 
    cout << "Rezultat: " << outbuf;
    cout << endl << endl;
}
void form(char* a, char* b, char p, char* out)
{
    char* first = a, * first2 = b;
 
    while (*(first = pr1(a)))
    {
        a = pr2(first);
        if (*first == p && *(a - 1) == p)
            out = copy(first, out, a - first);
        else first = pr2(first);
    }
    while (*(first2 = pr1(b)))
    {
        b = pr2(first2);
        if (*first2 == p && *(b - 1) == p)
            out = copy(first2, out, b - first2);
        else first2 = pr2(first2);
    }
}
char* pr1(char* in)
{
    while (*in && (*in == ' ') || (*in == '\t'))
        in++;
    return in;
}
char* pr2(char* in)
{
    while (*in && *in != ' ' && *in != '\t')
        in++;
    return in;
}
char* copy(char* from, char* to, int len)
{
    for (int j = 0; (j < len) && (*to++ = *from++); j++)
        ;
 
    *to++ = ' ';
    *to = '\0';
 
    return to;
}
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
25.01.2020, 18:18
Ответы с готовыми решениями:

Нужны комментарии к коду
что здесь происходить double *x=new double ; double **b=new double *; for(i=0;i&lt;n;i++) ...

Нужны комментарии к коду
#include&lt;iostream.h&gt; #include&lt;math.h&gt; int maximal(int n,double R0); void main(){ int...

Нужны комментарии к коду
помогите пожалуйста что и как он делает, вижу только конечный результат но хочу разобраться...

Нужны комментарии к коду
#include &lt;iostream&gt; #include &lt;cmath&gt; using namespace std; //ЗАДАЧА #14 void...

7
Диссидент
Эксперт C
26955 / 16835 / 3700
Регистрация: 24.12.2010
Сообщений: 37,786
25.01.2020, 18:51 2
Цитата Сообщение от dima497 Посмотреть сообщение
расписать каждое действие
Прям кажное? А может быть вы лучше расскажите, что именно непонятно?

Добавлено через 1 минуту
За ондо можете расставить комментарии в местах, где вам все понятно.
0
0 / 0 / 0
Регистрация: 10.05.2016
Сообщений: 21
25.01.2020, 20:12  [ТС] 3
с 27 по 46 вообще не понятно
помогите

Добавлено через 21 минуту
или лучше за что отвечаю функции в этой программе
0
Диссидент
Эксперт C
26955 / 16835 / 3700
Регистрация: 24.12.2010
Сообщений: 37,786
25.01.2020, 20:45 4
Цитата Сообщение от dima497 Посмотреть сообщение
или лучше
Вы знаете, без вашего участия - никак. Что за программа? Что она должна делать? Откуда взялся код? Что за задание, в конце концов, в чем его смысл? И что вы сами по этому поводу думаете?
Цитата Сообщение от dima497 Посмотреть сообщение
с 27 по 46 вообще не понятно
Вообще - это как? А все остальное - понятно? Или понятно, но в частности?
1
0 / 0 / 0
Регистрация: 10.05.2016
Сообщений: 21
25.01.2020, 20:50  [ТС] 5
частично понятно, вот задача
Даны несколько строк, содержащие не более 100 символов каждая. Строки состоят из слов, разделенных пробелами. Распечатать все слова из каждой строки,
начинающиеся и заканчивающиеся на одну и ту же букву
0
599 / 237 / 69
Регистрация: 08.08.2015
Сообщений: 1,637
25.01.2020, 21:49 6
dima497, вот теперь хоть понятно, код от куда? и что проходили что нет. Например понимаешь что такое потоки? через них проще всего

Добавлено через 1 минуту
Цитата Сообщение от dima497 Посмотреть сообщение
C++
1
void form(char* a, char* b, char, char* out);
Жесть такого изврата еще не видел

Добавлено через 6 минут
Цитата Сообщение от dima497 Посмотреть сообщение
с 27 по 46 вообще не понятно
там как раз сравнивается первый и последний символ если тру то копируется слово, но сделана даже не через жопу а другое место, похуже
0
0 / 0 / 0
Регистрация: 10.05.2016
Сообщений: 21
25.01.2020, 21:57  [ТС] 7
а как тогда, для меня работа со строками очень сложна
0
599 / 237 / 69
Регистрация: 08.08.2015
Сообщений: 1,637
25.01.2020, 22:29 8
Лучший ответ Сообщение было отмечено dima497 как решение

Решение

Цитата Сообщение от dima497 Посмотреть сообщение
а как тогда, для меня работа со строками очень сложна
А какая разница? std::string это char[size_t]. остальное это мишура для удобства.

Добавлено через 27 минут
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
#include <iostream>
#include <string>
#include <list>
#include <sstream>
 
using namespace std;
 
list <string> curSplit(string *in){
    list <string> out;
    istringstream  arrTmp(*in);
    string tmp;
    while ( arrTmp >> tmp )
        out.push_back(tmp);
    return out;
}
 
bool check (string in){
    if (in[0] == in[in.size()-1]) return true;
 
    return false;
}
 
 
int main()
{
 
    string str1;
    cout << "String:\n";
    getline(cin, str1);
 
    string str2;
    cout << "String:\n";
    getline(cin, str2);
    
    list <string> arrStr1 = curSplit(&str1);
    list <string> arrStr2 = curSplit(&str2);
    
    for (auto i : arrStr1){
        if (check(i)) cout << i << endl;
    }
    
    for (auto i : arrStr2){
        if (check(i)) cout << i << endl;
    }
    
    return 0;
}
На коленьке но вроде работает

Добавлено через 17 секунд
Давненько я stl не дергал
1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
25.01.2020, 22:29
Помогаю со студенческими работами здесь

Нужны комментарии к коду
#include &lt;iostream&gt; using namespace std; int main() { int n, m, sum = 1, max, t; cin...

Нужны комментарии к коду
меня интересуют вот эти три строки ,что они делают в данном коде.какой их тут смысл. C.pSet =...

Нужны комментарии к коду
int bestStr(char** file, int numstr) { int iBest = -1, bestwords = 0; for (int i = 0; i &lt;...

Нужны комментарии к коду
pair&lt;bool, array&lt;int, 81&gt;&gt; SOL(const char* inp) { array&lt;int, 81&gt; ANS; int* TAB = ANS.data();...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru