Загрузка...

Palindromes, I need help, thank you with a penny.

Thread in C/C++ created by trukit Apr 1, 2021. 146 views

  1. trukit
    trukit Topic starter Apr 1, 2021 3 Sep 10, 2020
    Нужно написать код для этой задачи: В потоке символов сосчитать число слов – палиндромов.

    Кину 50 символических рублей на:****:

    Связь :tg:

    Делал какие-то наброски, но не работает, выдает ошибки.

    Собственно вот что набросал:

    Code
    #include <iostream>
    #include <string>
    #define YES 1
    #define NO 0
    using namespace std;
    int getchar(void)
    {
    int c; // разделители
    int flag, lenght; // признак слова
    int k = 0, cnt = 0; // счётчик
    int found, i; // признак того, что слово-палиндром
    // начальные присваивания (инициализация переменных)
    flag = NO;
    found = NO;
    // цикл чтения символов из потока
    while ((c = getchar()) != EOF)
    {
    if (c == ' ' || c == '.' || c == '\n' || c == ',')
    {
    // найден разделитель
    if (flag == YES)
    {
    // найден первый разделить после слова
    if (found == YES)
    {
    // слово оказалось палиндромом
    cnt = cnt + 1;
    }
    }
    flag = NO;
    }
    else
    {
    // проверка палиндрома
    for (i = 0; i < str.lenght(); i++)
    {
    if (str[i] == str[((str.lenght - 1)/2) - i])
    {
    found = YES;
    k++;
    if (k == str.lenght())
    {
    printf("polindrom-%s", str);
    }
    else
    {
    found = NO;
    flag = YES;
    }
    }
    }
    }
    return(0);
    }
     
Top
Loading...