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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
евг
0 / 0 / 0
Регистрация: 23.10.2011
Сообщений: 154
#1

Вывести самую длинную последовательность букв, расположенных между двумя пробелами - C++

21.10.2012, 10:01. Просмотров 664. Ответов 7
Метки нет (Все метки)

Помогите пожалуйста!Задана некоторая запись длнной M,состоящая из букв и символа пробел.В начале и конце записи стоит символ пробел.Составить программу печати самой длинной последовательности букв,расположенных между двумя пробелами.

Добавлено через 22 часа 33 минуты
Плиз кто-нибудь помогите !

Добавлено через 2 минуты
очень нужно сдать до завтра,а я вообще не пойму как делать(((
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.10.2012, 10:01     Вывести самую длинную последовательность букв, расположенных между двумя пробелами
Посмотрите здесь:
Подсчитать самую длинную последовательность подряд идущих букв а C++
подсчитать самую длинную последовательность подряд идущих букв а C++
C++ Найти в тексте самую длинную последовательность из одинаковых букв
C++ В стpоке символов опpеделить самую длинную подстpоку, стоящую между двумя цифpами
C++ Дана строка. Подсчитать самую длинную последовательность подряд идущих букв а
Дана строка. Подсчитать самую длинную последовательность подряд идущих букв а C++
Дана строка. Подсчитать самую длинную последовательность подряд идущих букв а C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
SAUtrade
13 / 13 / 1
Регистрация: 21.10.2012
Сообщений: 140
21.10.2012, 10:15     Вывести самую длинную последовательность букв, расположенных между двумя пробелами #2
C++ (Qt)
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
#include <iostream> 
#include <string.h> 
#include <stdio.h> 
using namespace std; 
 
const int MAXLEN = 256;
void main() 
{ 
    int m, n, j = 0, i;
    char string[MAXLEN]; 
    char newstring[MAXLEN] = {0};
    cout << "Input string: ";
    gets(string);
 
    cout << endl << "Vvedite otrezok stroki kotoruu neobhodimo perenesti v novuu stroky" << endl << endl;
    cout <<  "Vvedite nachalnyy index m (ot 1 do 256): ";
    cin >> m;
    cout << endl << "Vvedite konechnyy index n (ot 1 do 256): ";
    cin >> n;
 
    if ((m < 1 || m > MAXLEN) || (n > MAXLEN || n < 1))
    {
        cout << endl << "Index not found";
 
    }
 
        for(i = m - 1; i < n; i++)
        {
            newstring[j] = string[i];
            j++;
        }
        cout << endl;
        puts(newstring);
сам водишь строку и сам выбираешь какой участов выбрать..... Ее немного нужно подкоректировать под пробелы.... и сделать сравнение отрезков...
html-profi
5 / 5 / 0
Регистрация: 25.11.2011
Сообщений: 53
21.10.2012, 10:16     Вывести самую длинную последовательность букв, расположенных между двумя пробелами #3
Я вообще не С программист, я php прогер. Но решай я эту прогу на php, то сначала разбил бы строку функцией explode по символу "пробел". в итоге получл бы массив, к каждом элементе которого была бы строка. потом в цикле по размеру массива прошел бы и просмотрел бы длину всех подстрок. В конце цикла имел бы то что требуется.

Аналог explode в С++ смотри тут http://******************/sources/topic-161759/0.html
евг
0 / 0 / 0
Регистрация: 23.10.2011
Сообщений: 154
21.10.2012, 10:22  [ТС]     Вывести самую длинную последовательность букв, расположенных между двумя пробелами #4
большое спасибо,товарищи!!
zitxbit
Master C/C++
87 / 739 / 75
Регистрация: 11.04.2012
Сообщений: 971
21.10.2012, 10:24     Вывести самую длинную последовательность букв, расположенных между двумя пробелами #5
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
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#include <string.h>
#include <ctype.h>
 
int main()
{
    static char str[256] = " xxxyyyyyyyyzzzzzzedddddtttttt ";
 
    printf("%s\n",str);
 
    int max_i = 0, max_len = 0;
    for (int i = 1; !isspace(str[i]); i++)
    {
        int pos = i;
        while (str[i] == str[i+1] && !isspace(str[i])) i++;
        if (abs(i-pos) > max_len) { max_i = pos; max_len = abs(i-pos); }
    }
 
    for (int t = max_i; t < max_i+max_len; t++)
        printf("%c",str[t]);
    printf("\tcount = %d\n",max_len);
 
    _getch();
}
http://liveworkspace.org/code/849e9e...6d7f5a6d6c319d
Миниатюры
Вывести самую длинную последовательность букв, расположенных между двумя пробелами  
евг
0 / 0 / 0
Регистрация: 23.10.2011
Сообщений: 154
21.10.2012, 12:58  [ТС]     Вывести самую длинную последовательность букв, расположенных между двумя пробелами #6
спасибо!

Добавлено через 40 минут
zitxbit,только я не совсем понял,а где пробелы?
zitxbit
Master C/C++
87 / 739 / 75
Регистрация: 11.04.2012
Сообщений: 971
21.10.2012, 12:58     Вывести самую длинную последовательность букв, расположенных между двумя пробелами #7
первый и последний символ заданной строки
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.10.2012, 13:06     Вывести самую длинную последовательность букв, расположенных между двумя пробелами
Еще ссылки по теме:
C++ Дана строка символов. Подсчитать самую длинную последовательность подряд идущих букв а.
Заполнить файлы случайными данными, сравнить их, и вывести самую длинную совпадающую последовательность C++
Вывести на экран три числа с двумя пробелами между ними C++
C++ Удалить самую длинную последовательность нулей
Найти самую длинную неубывающую последовательность C++

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

Или воспользуйтесь поиском по форуму:
Петррр
5946 / 3383 / 336
Регистрация: 28.10.2010
Сообщений: 5,927
21.10.2012, 13:06     Вывести самую длинную последовательность букв, расположенных между двумя пробелами #8
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
#include <iostream>
#include <string>
#include <algorithm>
#include <functional>
#include <sstream>
#include <iterator>
#include <vector>
 
class max_length : public std::binary_function<std::string, std::string, bool>
{
public:
    bool operator () (const std::string& first, const std::string& second)
    {
        return first.size() < second.size();
    }
};
 
int main()
{
    std::string str = " 1 12 123 1234 123 12 1 ";
    std::istringstream stream(str);
    std::vector<std::string> vec(
        (std::istream_iterator<std::string>(stream)),
        (std::istream_iterator<std::string>()));
    std::string result = *std::max_element(vec.begin(), vec.end(), max_length());
    std::cout << result << std::endl;
}
Yandex
Объявления
21.10.2012, 13:06     Вывести самую длинную последовательность букв, расположенных между двумя пробелами
Ответ Создать тему
Опции темы

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