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

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

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

Подправить сортировку в проге - C++

30.04.2009, 00:43. Просмотров 472. Ответов 1
Метки нет (Все метки)

Мне необходимо переделать сортировку по возрастанию количества цифр в строке в сортировку по убыванию (это конкретная часть из программы).
Код
int Sort::fcel (char*a)
		{
			int b=0;
			for (int i=0; i<strlen(a); i++)
				if (a[i]=='1'|| a[i]=='2'|| a[i]=='3'|| a[i]=='4'|| a[i]=='5'|| a[i]=='6'|| a[i]=='7'|| a[i]=='8'|| a[i]=='9'|| a[i]=='0')
					b++;
			return b;
		};

	void Sort::Add  (char*arg)
	{   
		cout<<"ADD Sort"<<endl;
		el*l, *cur1;
		asocel* cur;
		l=new el;
		l->info=new char[strlen(arg)];
		strcpy(l->info,arg);
		l->next = NULL;
		count++;
	if (Head==NULL)
		{
			asocel*as;
			as=new asocel;
			as->info=arg[0];
			as->down=NULL;
			as->next=l;
			Head=as;
		}
	else
		{
			cur=Head;
			while (cur->info!=arg[0]&&cur->down)
				cur=cur->down;
			if (cur->info==arg[0])
				{
					cur1=cur->next;
					int a=fcel(cur1->info);
					int b=fcel(l->info);
					while (cur1->next!=NULL&&(fcel(cur1->next->info)<fcel(l->info)))
						cur1=cur1->next;
					if (cur1->next==NULL)
						cur1->next=l;
					else 
					{
						l->next=cur1->next;
						cur1->next=l;
					}
				}
			else
				{
					asocel*as;
					as=new asocel;
					as->info=arg[0];
					as->down=NULL;
					as->next=l;
					cur->down=as;
				}
		}
	};
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
30.04.2009, 00:43
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Подправить сортировку в проге (C++):

Сортировку вставками меняем на Пирамидальную сортировку и на Сортировку подсчётом - C++
Здравствуйте. Я не как не могу разобраться.Помогите. У меня есть листинг сортировки вставками: #include &quot;stdafx.h&quot; #include...

Подскажите как эту сортировку переделать в сортировку по алфавиту? - C++
Подскажите как эту сортировку переделать в сортировку по алфавиту?? vector&lt;std::pair&lt;string, int&gt;&gt; popularAuthor; ...

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

сортировку по Tag и сортировку по Eng - C++
Есть структура: struct _1C { string Tag; string Rus; string Eng; _1C(const string &amp;Tag, const string &amp;Rus, const string...

ошибки в проге - C++
задание: вычислить y=cos(x)+cos(x)^2+cos(x)^3+...+cos(x)^30 #include&lt;iostream&gt; #include&lt;math.h&gt; #include&lt;conio.h&gt; using...

Ошибки в проге - C++
#include &lt;iostream&gt; using namespace std; int uselust = 467; int ust = 300; int nomerus = 789; int kolusl = 200; int M = 550; ...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
NickA
35 / 34 / 2
Регистрация: 28.04.2009
Сообщений: 67
30.04.2009, 00:51 #2
C++
1
if (a[i]=='1'|| a[i]=='2'|| a[i]=='3'|| a[i]=='4'|| a[i]=='5'|| a[i]=='6'|| a[i]=='7'|| a[i]=='8'|| a[i]=='9'|| a[i]=='0')
Лучше заменить на:
C++
1
if(a[i]>='0' && a[i]<='9')
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
30.04.2009, 00:51
Привет! Вот еще темы с ответами:

Хелп по проге - C++
Всем привет. делаю прогу и никак не могу понять, в чем дело. Есть массив А, присваиваю массиву Б элементы массива А в квадрате, потом...

Ошибка в проге - C++
#include &lt;iostream&gt; #include &lt;fstream&gt; using namespace std; const int ras = 6; //Размер массива. int uselust = 467; int ust =...

Ошибка в проге - C++
Дан файл с непустой последовательностью слов, содержащих от 1 до 8 букв. Напечатать все слова наименьшей длины. #include &quot;stdafx.h&quot; ...

комментарий к проге - C++
помогите прокоментировать программу #include &lt;iostream&gt; #include &lt;fstream&gt; using namespace std; int main() { int **a; ...


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

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

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