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

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

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

Вывод минимального слова. Первого если их несколько в строке - C++

06.04.2014, 08:04. Просмотров 281. Ответов 6
Метки нет (Все метки)

Доброго времени суток.
Так как я только недавно начал изучение C++, у меня соответственно случились небольшие затруднения, а конкретно:
При запуске кода идет ввод строки с пробелами (знаки мне пока не удалось ), затем происходит поиск самого короткого слова (если одинаковых по количеству символов слов несколько, то выбирается 1 ), и после всего этого, соответственно (должен быть) вывод слова и его количество символов...НО у меня не получается это слово правильно вывести (подсчитать символы от начала до конца ...)... Вот код:
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
#include <iostream>
using namespace std;
const int length=100;
 
int main(){
    char strin[length], strout[length];
    int count, summ=0, l=0,min=length;
    //char s;
    //s=0;
    cout<<"Input your string\n";
    cin.getline(strin,length);
    count=strlen(strin);
    
for (int i=0;i<count;i++){
 
        //
        if(strin[i]!=' '){
            //if(strin[i]==' ')summ--;
            summ++;
        }
        if(strin[i]!=' ' && (strin[i+1]==' ' || strin[i+1]=='\0'))
        /*if(strin[i]==' ')*/{
            if (summ < min){
                min=summ;
                summ=0; 
                strout[i]=0;
                for (int j=0;j<=min;j++){               
                    strout[j]=strin[i-min+j];       
                }
                strout[i]='\0';
            }   
        }
}       
 
 
cout<<"Minimal word is: "<<strout<<endl;
cout<<"Number symbols for it word- "<<min<<endl;
system("pause");
return 0;
}
P.S.
Прошу сильно "не пинать ", и по возможности "наставить на путь истинный"...
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.04.2014, 08:04
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Вывод минимального слова. Первого если их несколько в строке (C++):

Перестановка в строке первого и последнего слова.. - C++
Всем доброго времени суток!! Появилось вот такое задание написать программу на языке C++ чересстрочного слияния двух текстовых файлов...

Подсчёт первого слова в строке и задача на перестановку - C++
#include &lt;iostream&gt; #include &lt;string&gt; using namespace std; int main(){ setlocale(0,&quot;&quot;); int i=0; char s = {'...

Списки: упорядочить строки в тексте по возрастанию длины минимального слова в каждой строке - C++
Упорядочить строки в тексте по возрастанию длины минимального слова в каждой строке. 1) делим массив строк на слова. 2) сортируем...

Вывод всех символов слова, кроме первого - C++
Условие такое: Пользователь вводит с клавиатуры слово. Программа выводит символы этого слова на экран кроме первого. Пожалуйста помогите.

Указать общие символы первого и последнего слова в заданной строке (с использованием множества) - C++
Помогите решить задачу с использованием множества: указать общие символы первого и последнего слова в заданной строке.

В строке, содержащей несколько слов, разделенных пробелом, переставить слова в обратной последовательности - C++
Задание 1 В строке, содержащей несколько слов, разделенных пробелом, переставить слова в обратной последовательности. Входные...

6
IrineK
Заблокирован
06.04.2014, 08:14 #2
1) Вы должны пользоваться только строками char? (можно ли использовать string)
2) Вам разрешают использовать библиотечные функции или требуют изобретать свой велосипед?
0
f0rEsT93
1 / 1 / 0
Регистрация: 06.08.2013
Сообщений: 13
06.04.2014, 08:21  [ТС] #3
Цитата Сообщение от IrineK Посмотреть сообщение
1) Вы должны пользоваться только строками char? (можно ли использовать string)
2) Вам разрешают использовать библиотечные функции или требуют изобретать свой велосипед?
Еще раз доброго времени суток ...
Мне кажется, что я немного не так сформулирую общий ответ на эти 2 вопроса, НО нам сказали, чтобы было просто и без использования чего либо сложного (массивы,...)...Т.е. желательно, чтобы были char и следовательно, изобретение скорее не велосипеда, а самоката
P.S.
Прошу не воспринимать как попытки оскорбления, или "препирательства".

Добавлено через 1 минуту
И, я так понимаю, для вывода самого слова нужно отдельно прописывать "нахождение слова" ?..
0
IrineK
Заблокирован
06.04.2014, 19:20 #4
Цитата Сообщение от f0rEsT93 Посмотреть сообщение
без использования чего либо сложного (массивы,...)
Цитата Сообщение от f0rEsT93 Посмотреть сообщение
чтобы были char
Строка - это массив char.
0
f0rEsT93
1 / 1 / 0
Регистрация: 06.08.2013
Сообщений: 13
06.04.2014, 19:31  [ТС] #5
Цитата Сообщение от IrineK Посмотреть сообщение
Строка - это массив char.
Понятно, значит мой ответ поставлен не корректно,... прошу простить, ... Но мне нужно в этом коде просто организовать вывод самого слова...основываясь на написанном коде, чтобы использовать минимум подключаемых библиотек...
Количество символов то считает нормально, а вот при выводе слова возникают "кракозябры"... и не корректный вывод прошу помощи
0
IrineK
Заблокирован
06.04.2014, 19:41 #6
Цитата Сообщение от f0rEsT93 Посмотреть сообщение
использовать минимум подключаемых библиотек
Это значит - максимум собственного кода, с которым у вас не очень. Может лучше библиотеки? Там за вас уже все решили - только подключить.

Цитата Сообщение от f0rEsT93 Посмотреть сообщение
возникают "кракозябры"
А вы на каком языке строку вводите?
0
f0rEsT93
1 / 1 / 0
Регистрация: 06.08.2013
Сообщений: 13
07.04.2014, 13:37  [ТС] #7
Цитата Сообщение от IrineK Посмотреть сообщение
максимум собственного кода, с которым у вас не очень
что правда, то правда,.... но на ошибках учимся ведь можете посоветовать парочку книг, для начинающего посоветовать, чтобы примеры были желательно (т.к. я больше "практик"... а расписание всех ошибок просто "утомляет ")
Цитата Сообщение от IrineK Посмотреть сообщение
А вы на каком языке строку вводите?
На кириллице они проявляются только, когда при вводе латиницы только не правильный вывод
0
07.04.2014, 13:37
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.04.2014, 13:37
Привет! Вот еще темы с ответами:

Записать в предложении символы длинного слова (всех длинных, если их несколько) в обратном порядке - C++
Поиогите пожалуйста не получается та часть кода где нужно найти и записать в обратном порядке слова. #include &lt;stdio.h&gt; #include...

Вывод самого длинного слова в строке - C++
НАПИШИТЕ КОД ПРОГРАММЫ КОТОРАЯ ВЫВОДИТ НА ЭКРАН САМОЕ ДЛИННОЕ СЛОВО В ДАННОЙ СТРОКЕ

Строковый ввод-вывод и считывание последнего слова в строке - C++
Добрый вечер. Возник вопрос по следующей задаче: &quot;1) Скопировать из файла F1 в файл F2 строки, начиная с 4. 2) Подсчитать количество...

Подсчет количества каждого слова в строке и вывод по порядку - C++
Всем привет! Задание заключается в том, чтоб разделить строку на слова, посчитать количество каждого слова в строке и вывести в порядке...


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

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