Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 03.12.2014, 19:37   #1
Михаид
 
Регистрация: 01.12.2014
Сообщений: 6
По умолчанию Определить, сколько слов стоит в строке до слова максимальной длины

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

я не могу ничего сделать с значением, которое возвращает оператор
оно константное чар
а все функции заточены под обычный чар
Код:
#include <iostream>
#include "string.h"
using namespace std;
 
struct node
{
    node *next;
    string info;
};
 
void addElement(string toAdd, node *tail)
{
    tail->next=new node;
    tail->next->info=toAdd;
    tail->next->next=NULL;
    tail=tail->next;
}
 
int count(string newS)
{
    string sra=" ";
    cout<<newS.length();
    int sizeMax=-1,maxIn=-1,kol=0;
    for (int i=0;i<newS.length();i++)
    {
        int j=i+1;
        if (isspace(newS[i])) //тут нужно сравнить символ на пробел
        {
            while(isspace(newS[j])/*на пробел проверка*/ && j<newS.length()) j++;
            if ((j-i+1)>sizeMax)
            {
                sizeMax=j-i+1;
                maxIn=i+1;
                cout<<"\nsize = "<<sizeMax<<"\n"<<"max = "<<maxIn;
            }
        }
 
    }
    for (int i=0;i<maxIn;i++)
    {
        if (newS[i]==' ') kol++;
    }
 
    return kol;
}
 
 
int main()
{
    node *head=new node,*tail=head;
    cout<<"Enter Sentense\n";
    string newS;
 
    getline(cin,newS);
 
    if (!newS.empty()) addElement(newS,tail);
 
    cout<<count(newS)<<'\n';
 
    node *tmp=head;
    while(tmp)
    {
        cout<<tmp->info;
        tmp=tmp->next;
    }
}
Михаид вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
нужно написать программу в с++. определить длину строки и определить сколько раз встречается буква П в строке. chit Помощь студентам 4 11.07.2015 14:03
Задача со строкой (поиск слова максимальной длины) TheAlina Помощь студентам 1 13.05.2012 23:34
Ввести с клавиатуры строку. Посчитать количество слов в строке. Определить, что является разделителем слов. Вывести рез-ть на экра Газимов Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 3 02.03.2012 15:58
Упорядочить слова в строке по возрастанию их длины (SortWords(s) функция) edikesh Помощь студентам 0 03.12.2011 22:51
определить слово мнимальной длины в строке Марика Помощь студентам 5 03.05.2009 20:11