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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 24.02.2015, 20:01   #1
textyre
Пользователь
 
Регистрация: 01.11.2014
Сообщений: 12
По умолчанию Сортировка строк

В общем уже битый час пытаюсь сделать сортировку. Нужно оставить строки, в которых есть четное кол-во слов и в них же удалить слова с макс. кол-во символом. Это можно определить с помощью пробелов, но не получаетсяСтроки, в которых нечетное кол-во слов - удалить.

Код:
using namespace std;

int _tmain(int argc, _TCHAR* argv[])
{
	SetConsoleCP(1251);
	SetConsoleOutputCP(1251);
	int i, j;
	char enter = '$';
	char probel = '#';
	char str[200], lab[200];//рабочий и исходный
	char mas[200];

	for (i = 0; i < 200; i++)
		str[i] = '0';

	cout << "Введите текст \n";
	cin.get(str, 200, '%');
	cout << "Введенный текст" << endl;
	for (i = 0; i < 200; i++)
		lab[i] = str[i];
	for (i = 0; i < 200; i++)
	{
		if (str[i] == enter)
			str[i] = '\n';
		if (str[i] == probel)
			str[i] = ' ';
		if (str[i] == 0)
			break;
		cout << str[i];
	}
	fflush;
	cout << endl;
	int r = 0;
	for (i = 0; i < 200; i++)
	{
		cout << endl << 'i= ' << i << endl;
		if (lab[i] == probel)
			r += 1;
		if (lab[i] == enter)
		{
			j = i;
			int p = r % 2;
				//cout << endl << "Четное кол-во пробелов" << endl;
			if (p == 1)
			{
				do
				{
					lab[i] = mas[i];
				} while (lab[i] == '$');
			}
			r = 0;
		}

	if (lab[i] == 0) break;
	}
	for (i = 0; i < 200; i++)
	{
		do
		{
		
		}
	
	}
	system("Pause");
	return 0;
}
textyre вне форума Ответить с цитированием
Старый 24.02.2015, 20:19   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Может для начала стоит развернуть код в функции?
Сделай просто функцию, решающую первый этап задания.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 24.02.2015, 23:08   #3
Jurijus123
Заблокирован
 
Регистрация: 12.11.2014
Сообщений: 120
По умолчанию

Цитата:
если четная очистить
вот:
Код:
#include <string>
#include <fstream>
#include <iostream>
#include <sstream>
using namespace std;
struct document{char buffer[91];string b2,gin;};
string ch(string gi){stringstream ssi;string gin;int i=0,a,b;char mask2;
ssi;ssi.str(gi);while (!ssi.eof()){ssi>>mask2;if(ssi.eof()){}else{if(ssi.eof()){}else{i++;}}}
a=i/2;b=a*2;if(i==b){gin="";}if (i!=b) {gin=gi;}cout<<endl;return gin;}
main(){document a;cout<<"plese type a text";cin>>a.buffer;a.b2=ch(a.buffer);cout<<a.b2;system("pause");return 0;}

Последний раз редактировалось Jurijus123; 24.02.2015 в 23:15.
Jurijus123 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Сортировка строк. qipist Общие вопросы C/C++ 2 02.05.2014 11:00
Сортировка строк oriojke Общие вопросы C/C++ 9 04.06.2010 13:03
Сортировка строк Anarki Общие вопросы C/C++ 2 19.09.2009 20:06
Сортировка строк sheva75 Microsoft Office Excel 3 06.02.2008 05:00