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

В строке, состоящей из слов и знаков препинания найти все слова-палиндромы - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Напишите функцию,возвращающее среднее арифметическое http://www.cyberforum.ru/cpp-beginners/thread1080269.html
Напишите функцию,возвращающее среднее арифметическое элементов в однородном целочисленном массиве с положительными значениями элементов (среднее арифметическое вычисляется по формуле приведенной ниже).
C++ Статический массив, в котором количество элементов задаётся неконстантной переменной Почему такое вообще катит ? Что говорит стандарт на эту тему? #include <iostream> using namespace std; int main() { int N; http://www.cyberforum.ru/cpp-beginners/thread1080267.html
C++ Чтение вещественных чисел из строки
С клавиатуры вводятся 2 строки, содержащие вещ. числа. Надо найти результат умножения этих чисел попарно. Без использования функций scanf и sscanf. Есть код #include <cstdlib> #include <iostream> #include <sstream> #include <string> using namespace std; int main() {
C++ Напишите функцию получающую два целых числа
Напишите функцию получающую два целых числа А и В (А < В) Функция выводит в порядке возрастания все целые числа,расположенные между А и В( не включая сами числа А и В ) и возращает количество N этих чисел
C++ Написать функцию, которая заполняет массив http://www.cyberforum.ru/cpp-beginners/thread1080243.html
Дано целое число N (> 1), а также первый член A и разность D арифметической прогрессии. Написать функцию, которая заполняет массив размера N членами этой арифметической прогрессии начиная с первого в обратном порядке
C++ Отрезок разбить на n частей, каждую часть проинтегрировать, либо методом трапеции 1)Вписать простую функцию sin^2(П/2*x) 2)на разбить на n частей каждую часть проинтегрировать либо методом трапеции; либо гаусс по 16 точкам; подробнее

Показать сообщение отдельно
MicM
822 / 489 / 90
Регистрация: 29.12.2009
Сообщений: 1,097
Завершенные тесты: 1
24.01.2014, 13:24
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
#include <iostream>
#include <cstring>
#include <cctype>
 
bool palindrom (char *str)
{
     int length = strlen(str);
     for (int i=0; i<length/2; i++)
         if (str[i]!=str[length-i-1])
            return false;
     return true;
}
 
int main()
{
    const int maxLength = 80;
    char str[maxLength],tmp[maxLength];
    std::cin.getline (str,maxLength);
    int k;
    int strLength = strlen(str);
    bool flag = false;
    for (int i=0; i<=strLength; i++)
    {
          if (isalpha(str[i]) && !flag)
          {
               flag = true;
               strcpy (tmp,"");
               k = 0;
          }
          else if (!isalpha(str[i]) && flag)
          {
               flag = false;
               tmp[k] = '\0';
               if (palindrom(tmp))
                  std::cout <<tmp <<std::endl;
          }
          if (flag)
             tmp[k++] = str[i];
    }
    return 0;
}
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru