Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
0 / 0 / 0
Регистрация: 03.10.2015
Сообщений: 5

Сортировка файла пузырьком используя StringGrid

17.10.2015, 13:09. Показов 710. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
C++
1
2
3
4
5
6
7
8
9
10
//Сортирует только два соседних элемента, а последний не сортируется вообще
for (b=0;b<A->Count-1;b++)
 {  for (i=0;i<(A->Count-b-1);i++)
        {
         if ((A->Strings[i])>(A->Strings[i+1]))
         {
         StringGrid1->Cells[1][i+1]=A->Strings[i];
         StringGrid1->Cells[1][i]=A->Strings[i+1];
         }
         }
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
17.10.2015, 13:09
Ответы с готовыми решениями:

Кривая сортировка пузырьком StringGrid
Есть код сортировки писал сам может что не учел но не могу понять кода жму на кнопку пропадает значения в 1 строке и сортирует другие...

Сортировка пузырьком StringGrid
Проблема вот такая сделал сортировку,он вроде и сортирует,но! приходится несколько раз выполнить процедуру чтобы отсоритировал элементы...

Сортировка пузырьком, используя компаратор
Всем привет,помогите ,пожалуйста,нужно написать сортировку пузырьком с помощью компаратора,но у меня возникает ошибка типов в 26 строке. ...

6
0 / 0 / 0
Регистрация: 03.10.2015
Сообщений: 5
17.10.2015, 14:18  [ТС]

Слева загружен построчно сам файл, для сравнения и демонстрации ошибки.
Сортируются только две соседних строки текстового файла, последний элемент не сортируется. При написании алгоритма пузырька происходила ошибка о том, что "List index a out of bounds", когда изменил алгоритм, то стало работать, но не правильно
0
Модератор
 Аватар для D1973
9910 / 6447 / 2455
Регистрация: 21.01.2014
Сообщений: 27,371
Записей в блоге: 3
18.10.2015, 05:26
В первой колонке - загруженный построчно файл, во второй - он же, уже отсортированный
C++
1
2
3
4
5
6
7
8
9
10
void __fastcall TForm1::Button1Click(TObject *Sender)
{
  TStringList *List = new TStringList; //Создали СтрингЛист
  List->LoadFromFile("c:\\1\\111.txt"); //Загрузили в него файл
  StringGrid1->Cols[0]->Text = List->Text; //Вывели его в 0-й столбец СтрингГрида
  List->Sort(); //Отсортировали
  StringGrid1->Cols[1]->Text = List->Text; //Вывели отсортированный в 1-й столбец СтрингГрида
  List->SaveToFile("c:\\1\\111_sort.txt"); //Сохранили в файл с другим именем
  delete List; //Удалили СтрингЛист
}
Изображения
 
2
управление сложностью
 Аватар для Почтальон
1693 / 1306 / 259
Регистрация: 22.03.2015
Сообщений: 7,545
Записей в блоге: 5
18.10.2015, 08:44
ТС видимо нужно по виду алгоритма сортировки сделать. Препод не дурак же . Ясное дело, что методом объекта проще воспользоваться, чем самому писать алгоритм
1
 Аватар для SmittWesson
236 / 196 / 21
Регистрация: 04.06.2014
Сообщений: 1,309
18.10.2015, 08:53
Цитата Сообщение от CppNOOB1 Посмотреть сообщение
for (b=0;b<A->Count-1;b++)
Внимательнее посмотрите на Фор. b < A->Count -1; Поскольку стоит знак неравенства, b будет на 2 меньше, чем длина массива. Нужно исправить на b < A->Count;
1
0 / 0 / 0
Регистрация: 03.10.2015
Сообщений: 5
18.10.2015, 13:32  [ТС]
Разобрался в чем проблема, почему то сортировать нужно, тот же столбец, в котором все содержится, прописывал алгоритм по действиям, на бумаге работает, а в программе нет. Не правильно описал цель сортировки нужно было сортировать по длине, просто не мог найти преобразование из AnsiString в обычные строки, чтобы использовать strlen: strlen((StringGrid1->Cells[0][i]).c_str()), мб кому-нибудь поможет.
0
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
 Аватар для volvo
33374 / 21499 / 8235
Регистрация: 22.10.2011
Сообщений: 36,894
Записей в блоге: 11
18.10.2015, 14:10
Цитата Сообщение от CppNOOB1 Посмотреть сообщение
просто не мог найти преобразование из AnsiString в обычные строки, чтобы использовать strlen
Просто strlen не нужна, у AnsiString и у других строковых типов Билдера есть StringGrid1->Cells[0][i].Length()
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
18.10.2015, 14:10
Помогаю со студенческими работами здесь

Сортировка пузырьком данных из файла
Добрый вечер/день. Необходимо было сделать программу, считывающую данные по сортировке типа: 1строка: число членов...

Сортировка "Пузырьком" в таблице StringGrid
Всем привет!У меня пробелы с сортировкой &quot;Пузырьком&quot; в таблице StringGrid.Можете написать свой пример такого способа сортировки(еще раз...

Сортировка массива пузырьком, введенного с текстового файла
Здравствуйте, прошу помощи. Весь день бью курсовую - застрял на таком этапе. Сделал ввод массива с текстового данного, есть код для...

Блок схема.Сортировка «Пузырьком», Сортировка методом «Последовательных перестановок», Сортировка «Вставками»
Помогите, нужны блок схемы Сортировка «Вставками» Program Vstavka; uses dos; Type mass=array of integer; Var i,b,n,j,a:...

Сортировка пузырьком
Привет народ. Уже несколько дней ломаю себе голову- никак не могу реализовать пузырьковую сортировку. Тут сверткой не отделаешься - нужно...


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а привычная функция main(). . .
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь(не выше 3-го порядка) постоянного тока с элементами R, L, C, k(ключ), U, E, J. Программа находит переходные токи и напряжения на элементах схемы классическим методом(1 и 2 з-ны. . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru