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

Сортировать в СтрингГрид по двум столбцам - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Нарисовать при помощи компонента Chart http://www.cyberforum.ru/cpp-beginners/thread1190405.html
Надо при помощи компонента Chart нарисовать Получается сделать только пол фигуры for (int i=0; i<=100; i++) { x=i; y=sqrt(10000-x*x); plot1->Points->AddXY(x, y);
C++ Определить номера строк матрицы R[M, N], хотя бы один элемент которых равен С Определить номера строк матрицы R, хотя бы один элемент которых равен с, и элементы этих строк умножить на d. Закрыто. Дубль во Фрилансе http://www.cyberforum.ru/cpp-beginners/thread1190402.html
Выделение предложений содержащих все слова С++ C++
Доброго времени суток. Прошу помощи в решении следующей задачи на С++: Указываем путь к файлу в котором содержится текст. Далее вводим запросы (слова через пробел завершая ввод каждого запроса нажатием энтера). По запросу программа выводит на экран все предложения в каждое из которых входят все слова запроса.
C++ Поиск групп букв, обрамленных цифрами
Ввести строку, в которую могут входить только цифры и буквы. Распечатать те группы букв, в которых буква А встречается не менее двух раз. (Группа букв - это последовательность букв, обрамленная цифрами.)
C++ Найти произведение цифр заданного четырехзначного числа http://www.cyberforum.ru/cpp-beginners/thread1190395.html
Найти произведение цифр заданного четырехзначного числа. (c++)
C++ Обработка исключения // ConsoleApplication1.cpp: определяет точку входа для консольного приложения. // #include "stdafx.h" #include <iostream> #include <stdio.h>//На эти три библиотеки можно не обращать внимания, я всегда #include <math.h>//их пишу на всякий случай, подробнее

Показать сообщение отдельно
Prgrm101
3 / 3 / 3
Регистрация: 08.04.2014
Сообщений: 20
27.05.2014, 22:19     Сортировать в СтрингГрид по двум столбцам
Может так, правда, немного калично
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
41
42
43
44
45
46
47
48
49
   int i,j,max,count=SpinEdit1->Value;
   AnsiString buf;
   for(i=0;i<count;i++)
    {
    max=i;
    for(j=i+1;j<count;++j)
     if (StringGrid1->Cells[0][max]>StringGrid1->Cells[0][j]) {
       max=j;
     }
     if (i!=max) {
     buf=StringGrid1->Cells[0][max];
     StringGrid1->Cells[0][max]=StringGrid1->Cells[0][i];
     StringGrid1->Cells[0][i]=buf;
     buf=StringGrid1->Cells[1][max];
     StringGrid1->Cells[1][max]=StringGrid1->Cells[1][i];
     StringGrid1->Cells[1][i]=buf;
     }
    }
    int *a= new int[count];
    for(int i=0;i<count;i++)
      a[i]=StrToInt(StringGrid1->Cells[1][i]);
 
    buf=StringGrid1->Cells[0][0];
    for(i=1;i<count;++i)
     if (StringGrid1->Cells[0][i]==buf) {
                      j=i-1;
                      while(i<count && StringGrid1->Cells[0][i]==buf)
                        ++i;
                      buf=StringGrid1->Cells[0][i];
                      //ShowMessage(IntToStr(j)+" "+IntToStr(i));
                      for(int k=j;k<i;++k)
                        {
                         max=k;
                         for(int l=k+1;l<i;++l)
                          if (a[max]>a[l]) {max=l;}
                         if (k!=max) {
                           int buf1=a[k];
                           a[k]=a[max];
                           a[max]=buf1;
                         }
                        }
 
     }
     else buf=StringGrid1->Cells[0][i];
 
    for(int i=0;i<count;++i)
      StringGrid1->Cells[1][i]=IntToStr(a[i]);
 
    delete []a;
 
Текущее время: 05:52. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru