1

Тема: поясніть будь ласка що роблят ці всі функції

#include<iostream>
#include<string.h>
#include<cstdio>
#include<ctype.h>


using namespace std;
int number(char *);
void prigolosna(char *);
void delet(char *);

int main() {
    const int &x = 9;
    system("color 0F");
    system("chcp 1251");
    system("cls");
    char inp[256];
    gets_s(inp);
    cout << number(inp) << endl;
    prigolosna(inp);
    delet(inp);
    system("pause");
    return 0;
}

int number(char *inp) {
    int root = 0;
    for (int x = 0; x < strlen(inp); x++) {
        if (isdigit(inp[x])) root++;
    }
    return root;
}

void prigolosna(char *inp) {
    char *xxx, kil[256];
    strcpy_s(kil, inp);
    for (int x = 0; x < strlen(inp); x++) {
        switch (kil[0]) {
        case('Q'):case('q'):case('W'):case('w'):case('R'):case('r'):case('T'):case('t'):case('P'):
        case('p'):case('S'):case('s'):case('D'):case('d'):case('F'):case('f'):case('G'):case('g'):
        case('H'):case('h'):case('J'):case('j'):case('K'):case('k'):case('L'):case('l'):case('Z'):
        case('z'):case('X'):case('x'):case('C'):case('c'):case('V'):case('v'):case('B'):case('b'):
        case('N'):case('n'):case('M'):case('m'): {
            cout << strtok_s(kil, " ", &xxx) << endl;
            x += strlen(strtok_s(kil, " ", &xxx));
            if (x < strlen(inp)) {
                strcpy_s(kil, &inp[x + 1]);
            }
            continue;
        }
        }
        x += strlen(strtok_s(kil, " ", &xxx));
        strtok_s(kil, " ", &xxx);
        strcpy_s(kil, &inp[x+1]);
    }
}

void delet(char *inp) {
    char *root, xx[256]="";
    root = strtok(inp, " ");
    do {
        if(root[0]!=root[strlen(root)-1]){
            strcat(xx, root);
            xx[strlen(xx)] = ' ';
            root = strtok('\0', " ");
            //xx[strlen(root)] == '\0';
        }
        else {
            root = strtok('\0', " ");
        }
    } while (root);
    cout << xx;
}
2030

2

Re: поясніть будь ласка що роблят ці всі функції

Уперше їх бачу. А чому ви вирішили, що тут є хтось, хто знає це?

Подякували: leofun01, sensei, Chemist-i3

3

Re: поясніть будь ласка що роблят ці всі функції

Функція number - підраховує кількість цифр в реченні.
Функція prigolosna = виводить слова які починаються с приголосної, с голосної видаляє.
Функція delet = видаляє слова в яких перший та останній символ однакові.

Однак на мій погляд рішення не зовсім оптимальне.