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

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

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

Строка - C++

08.06.2014, 16:26. Просмотров 158. Ответов 5
Метки нет (Все метки)

Есть строка, состоящая из слов, разделенных любым количеством промежутков. Напишите программу, которая выводит на экран все слова, которые имеют определенный символ в позиции, пожалуйста)
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.06.2014, 16:26
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Строка (C++):

Дана строка. Подсчитать сколько раз первая строка входит во вторую - C++
Дана строка. Подсчитать сколько раз первая строка входит во вторую. Например: вводим "при" (строка должна вводиться с клавиатуры, как на...

Дана строка символов. Проверьте,является ли данная строка палиндромом - C++
Парни нужна помощь,нужен код решения этой задачи на языке с++. Дана строка символов. Проверьте,является ли данная строка палиндромом.

Почему строка, считанная из файла и такая же строка в программе не равны, хотя они, вроде бы, одинаковы? - C++
Есть две строки. MSK="Москва" и from, считанная из текстовика, через getline Для проверки вывожу эти обе строки, на первый взгляд...

дана строка, изображающая целое положительное число. Вывести сумму цифр этого числа. Строка должна вводиться с клавиатуры. - C++
Будьте добры,помогите с решением задачи: дана строка, изображающая целое положительное число. Вывести сумму цифр этого числа. Строка...

Дана строка символов до точки. Составить программу, проверяющую, является ли данная строка палиндромом, т. е. читается ли она слева направо и справа н - C++
Дана строка символов до точки. Составить программу, проверяющую, является ли данная строка палиндромом, т. е. читается ли она слева направо...

Даны строка S, символ C и строка S0. Необходимо после каждого вхождения символа C в строку S вставить строку S0 - C++
Есть код... string s, s0; char c; cout << "Введите строку s, s0 и символ c: "; getline(cin, s); ...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BRcr
4008 / 2297 / 155
Регистрация: 03.02.2011
Сообщений: 5,064
Записей в блоге: 10
08.06.2014, 16:47 #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
    using namespace std;
    //////////////////////////////////////
    ifstream ifs( "text_file.txt", std::ifstream::in );
    vector < string > out_data;
 
    for ( string s; ifs >> s; )
    {
        if ( s[ 1 ] == 'а' )
        {
            out_data.push_back( s );
        }
    }
 
    copy( out_data.begin( ), out_data.end( ), ostream_iterator < string > ( cout, " " ) );
    //////////////////////////////////////
    cout << "\n\n";
    system( "pause" );
text_file.txt:
Есть строка, состоящая из слов, разделенных любым количеством промежутков. Напишите программу, которая выводит на экран все слова, которые имеют определенный символ в позиции, пожалуйста)
Выхлоп:
1
Миниатюры
Строка  
V50507
0 / 0 / 0
Регистрация: 25.11.2013
Сообщений: 56
08.06.2014, 16:59  [ТС] #3
Цитата Сообщение от BRcr Посмотреть сообщение
Код C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
* * using namespace std;
* * //////////////////////////////////////
* * ifstream ifs( "text_file.txt", std::ifstream::in );
* * vector < string > out_data;
for ( string s; ifs >> s; )
* * {
* * * * if ( s[ 1 ] == 'а' )
* * * * {
* * * * * * out_data.push_back( s );
* * * * }
* * }
copy( out_data.begin( ), out_data.end( ), ostream_iterator < string > ( cout, " " ) );
* * //////////////////////////////////////
* * cout << "\n\n";
* * system( "pause" );
text_file.txt:
Есть строка, состоящая из слов, разделенных любым количеством промежутков. Напишите программу, которая выводит на экран все слова, которые имеют определенный символ в позиции, пожалуйста)
Выхлоп:
Миниатюры
Извините, пожалуйста, но мне так выбивает много ошибок. И вообще, программа какая-то сложная, я большинство написанного не понимаю. Мне бы помочь простенькую, с функцией getline
Вот я уже что-то начал делать ...
помогите, пожалуйста исправить и доработать
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
// Lab(1B).cpp: определяет точку входа для консольного приложения.
//
 
#include "stdafx.h"
#include "iostream"
#include <windows.h>
using namespace std;
 
 
int _tmain(int argc, _TCHAR* argv[])
{
    SetConsoleCP(1251);
    SetConsoleOutputCP(1251);
    char S [3] ;
     int i;
     i=0;//количество совпадений
cout<<"Input string: " ;
cin.getline ( S, 3, '.' ) ;
if( S[2]='a') i++;
cout<<i;
 
 
    system("pause");
    return 0;
}
0
BRcr
4008 / 2297 / 155
Регистрация: 03.02.2011
Сообщений: 5,064
Записей в блоге: 10
08.06.2014, 17:13 #4
Цитата Сообщение от V50507 Посмотреть сообщение
Извините, пожалуйста, но мне так выбивает много ошибок. И вообще, программа какая-то сложная, я большинство написанного не понимаю. Мне бы помочь простенькую, с функцией getline
Я бы уж лучше постарался понять на твоем месте, чем стал бы таскать из потока куски с помощью getline(), потом разбивать их как-то на слова и только потом выбирать подходящие под условие.
0
V50507
0 / 0 / 0
Регистрация: 25.11.2013
Сообщений: 56
08.06.2014, 17:18  [ТС] #5
Цитата Сообщение от BRcr Посмотреть сообщение
Я бы уж лучше постарался понять на твоем месте, чем стал бы таскать из потока куски с помощью getline(), потом разбивать их как-то на слова и только потом выбирать подходящие под условие.
Спасибо, но тогда можете хотя бы прокомментировать код?
0
BRcr
4008 / 2297 / 155
Регистрация: 03.02.2011
Сообщений: 5,064
Записей в блоге: 10
08.06.2014, 18:08 #6
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
    using namespace std;
    //////////////////////////////////////
    ifstream ifs( "text_file.txt", ifstream::in ); // открываем поток для файла
    vector < string > out_data; // вектор для хранения результатов
 
    for ( string s; ifs >> s; ) // на каждом такте цикла осуществляем форматированный вывод порции данных из потока в переменную s, разделителем при этом считается пробел; то бишь выдергиваем по одному слову за раз
    {
        if ( s[ 1 ] == 'а' ) // если второй символ в слове равняется 'а'
        {
            out_data.push_back( s ); // то добавляем слово в список результатов
        }
    }
 
    copy( out_data.begin( ), out_data.end( ), ostream_iterator < string > ( cout, " " ) ); // выводим все слова из вектора в поток cout через пробел
    //////////////////////////////////////
    cout << "\n\n";
    system( "pause" );
vector
istream::operator>>
copy
ostream_iterator

Все остальное легко гуглится...
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
08.06.2014, 18:08
Привет! Вот еще темы с ответами:

Строка string и строка char - C++
Ребят помогиме. В общем задание такое дана строка типа string и строка char которая содержит символ к. В общем если в строке типа String ...

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

Создать класс строка и производный класс битовая строка, не работает переопределение операций - C++
Здравствуйте уважаемые форумчане.Мне очень нужна помощь в разработке класса.Сам класс вроде работает но вот 1 задание к нему неработает...

строка - C++
Как в строке заключить слова начинающиеся с согласной буквы в двойные кавычки?


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
08.06.2014, 18:08
Ответ Создать тему
Опции темы

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