Форум программистов, компьютерный форум, киберфорум
Наши страницы
Delphi для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
vitalij
1 / 1 / 0
Регистрация: 19.06.2011
Сообщений: 56
1

ComboBox

04.08.2011, 01:22. Просмотров 996. Ответов 15
Метки нет (Все метки)

Нужна Ваша помощь! Есть список учеников. Нужно сравнить (кто лучше) успеваемость каждого ученика со списка С КЕМ ТО с этого же списка, только РЕНДОМНО. Данные о учениках хранятся в файле или файлах. Иванов-11, Сидоров-6, Васильева-10, Пупкин-6 и т.д.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.08.2011, 01:22
Ответы с готовыми решениями:

Содержимое второго ComboBox-а должно зависеть от выбранного элемента в первом ComboBox-е
Здраствуйте!У меня такая задачка. У меня есть 2 компонента CombBox. В первом я...

Как можно менять текст в Combobox, используя другой Combobox?
Как можно менять текст, в Combobox используя другой Combobox, т.е. Допустим,...

ComboBox можно-ли изменить свойство Text внутри обработчика onChange этого-же ComboBox-а
Хочу сделать так. var //глобальные sCBoxIni: String = 'Выберите'; ...

Несколько Combobox-ов. После выбора значения в одном Combobox-е, оно должно стать недоступным в других
Доброго времени суток. У меня такая проблемка. Имеется 3 combobox'a ,содержащие...

Как сделать, чтобы в при выборе одного итема в ComboBox, в другом ComboBox выводился итем того же индекса?
Как сделать чтобы в при выборе одного итема в в ComboBox в другом ComboBox...

15
NIch
400 / 311 / 74
Регистрация: 17.03.2010
Сообщений: 1,120
04.08.2011, 01:27 2
Тебе нужна программа? Или просто описать как реализовать сравнение?
0
vitalij
1 / 1 / 0
Регистрация: 19.06.2011
Сообщений: 56
04.08.2011, 09:36  [ТС] 3
программа было бы лучше, но можна и сравнение. А куда лучше вывести итог?
0
DenNik
Непрофессионал
1803 / 1469 / 307
Регистрация: 26.07.2011
Сообщений: 8,065
04.08.2011, 09:48 4
ну сперва нужно описать структуру данных одного ученика. затем создать массив этих структур, загрузить в него данные и в цикле сравнивать. а выводить куда - это уже вопрос личных пристрастий.

многое зависит от того, как данныек хранятся в файле, как их будешь размещать в памяти.
0
Puporev
Модератор
55057 / 42325 / 29229
Регистрация: 18.05.2008
Сообщений: 100,020
04.08.2011, 10:49 5
Цитата Сообщение от vitalij Посмотреть сообщение
А куда лучше вывести итог?
Да хоть куда, Edit,Memo,ShowMessage.........

Добавлено через 1 час 0 минут
Не понял почему тема называется Combobox. Если выборка рандомная, то он и не нужен.
Создаем текстовый файл типа
Код
Иванов-11
Сидоров-6
Васильева-10
Пупкин-6
Кидаем на форму компонент OpenDialog и 2 кнопки.

Delphi
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
var
  Form1: TForm1;
  var t:TStrings;
implementation
 
{$R *.dfm}
 
procedure TForm1.Button1Click(Sender: TObject);
begin
t:=TStringList.Create;
if OpenDialog1.Execute then
t.LoadFromFile(Opendialog1.FileName);
end;
 
procedure TForm1.Button2Click(Sender: TObject);
var i1,i2,b1,b2,p:integer;
    n1,n2:string;
begin
randomize;
i1:=random(t.Count);
repeat
i2:=random(t.Count);
until i2<>i1;
p:=pos('-',t.Strings[i1]);
n1:=copy(t.Strings[i1],1,p-1);
b1:=StrToInt(copy(t.Strings[i1],p+1,length(t.Strings[i1])-p));
p:=pos('-',t.Strings[i2]);
n2:=copy(t.Strings[i2],1,p-1);
b2:=StrToInt(copy(t.Strings[i2],p+1,length(t.Strings[i2])-p));
if b1>b2 then ShowMessage(n1+' имеет балл больше чем '+n2)
else
if b1<b2 then ShowMessage(n1+' имеет балл меньше чем '+n2)
else ShowMessage(n1+' имеет балл равный '+n2);
end;
0
DenNik
04.08.2011, 10:56
  #6

Не по теме:

а почему нельзя написать код с отступами? тяжело же читать! я считаю, что писать с отступами - стиль хорошего программиста!

0
Puporev
Модератор
55057 / 42325 / 29229
Регистрация: 18.05.2008
Сообщений: 100,020
04.08.2011, 10:59 7
А что здесь отступать? Практически нет циклов. отступы ради отступов?

Добавлено через 1 минуту
DenNik, Ты мне напоминаешь одного чудака на три буквы, который тут уже достал всех своими пустыми и бесполезными постами...
0
DenNik
Непрофессионал
1803 / 1469 / 307
Регистрация: 26.07.2011
Сообщений: 8,065
04.08.2011, 11:00 8
Цитата Сообщение от Puporev Посмотреть сообщение
А что здесь отступать? Практически нет циклов. отступы ради отступов?

Добавлено через 1 минуту
DenNik, Ты мне напоминаешь одного чудака на три буквы, который тут уже достал всех своими пустыми и бесполезными постами...
никоим образом не хочу Вас оскорбить, но такой код выглядит неряшливо.
0
Puporev
Модератор
55057 / 42325 / 29229
Регистрация: 18.05.2008
Сообщений: 100,020
04.08.2011, 11:03 9
Уж лучше такой "неряшливый", чем такой

Цитата Сообщение от DenNik Посмотреть сообщение
ну сперва нужно описать структуру данных одного ученика. затем создать массив этих структур, загрузить в него данные и в цикле сравнивать. а выводить куда - это уже вопрос личных пристрастий.
но "красивый".
0
DenNik
Непрофессионал
1803 / 1469 / 307
Регистрация: 26.07.2011
Сообщений: 8,065
04.08.2011, 11:08 10
Цитата Сообщение от Puporev Посмотреть сообщение
Уж лучше такой "неряшливый", чем такой
...
но "красивый".
Писать код людям, которые вопят о помощи, не разобравшись в элементарном - это Ваша прерогатива, а я просто указал направление, в котором стоит работать. И пусть человек теперь разбирается, как создать массив и все остальное.
0
vitalij
1 / 1 / 0
Регистрация: 19.06.2011
Сообщений: 56
04.08.2011, 21:52  [ТС] 11
ну хватит спорить... ComboBox нужен чтобы можна было выбрать ученика для редактирования.

Добавлено через 1 час 2 минуты
Цитата Сообщение от Puporev Посмотреть сообщение
Да хоть куда, Edit,Memo,ShowMessage.........

Добавлено через 1 час 0 минут
Не понял почему тема называется Combobox. Если выборка рандомная, то он и не нужен.
Создаем текстовый файл типа
Код
Иванов-11
Сидоров-6
Васильева-10
Пупкин-6
Кидаем на форму компонент OpenDialog и 2 кнопки.

Delphi
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
var
  Form1: TForm1;
  var t:TStrings;
implementation
 
{$R *.dfm}
 
procedure TForm1.Button1Click(Sender: TObject);
begin
t:=TStringList.Create;
if OpenDialog1.Execute then
t.LoadFromFile(Opendialog1.FileName);
end;
 
procedure TForm1.Button2Click(Sender: TObject);
var i1,i2,b1,b2,p:integer;
    n1,n2:string;
begin
randomize;
i1:=random(t.Count);
repeat
i2:=random(t.Count);
until i2<>i1;
p:=pos('-',t.Strings[i1]);
n1:=copy(t.Strings[i1],1,p-1);
b1:=StrToInt(copy(t.Strings[i1],p+1,length(t.Strings[i1])-p));
p:=pos('-',t.Strings[i2]);
n2:=copy(t.Strings[i2],1,p-1);
b2:=StrToInt(copy(t.Strings[i2],p+1,length(t.Strings[i2])-p));
if b1>b2 then ShowMessage(n1+' имеет балл больше чем '+n2)
else
if b1<b2 then ShowMessage(n1+' имеет балл меньше чем '+n2)
else ShowMessage(n1+' имеет балл равный '+n2);
end;
чуть не то. Нужно чтобы попорядку каждый ученик (и только однажды) сравнивался с любым (а здесь можна и повторятся).
0
Puporev
Модератор
55057 / 42325 / 29229
Регистрация: 18.05.2008
Сообщений: 100,020
05.08.2011, 08:27 12
Цитата Сообщение от vitalij Посмотреть сообщение
Нужно сравнить (кто лучше) успеваемость каждого ученика со списка С КЕМ ТО с этого же списка, только РЕНДОМНО.
Ну и нафига ты это тогда писал? Тебе не только программу самому не написать, но даже и условие задания точно списать проблема.
Короче мозг вырастет, заходи еще.
0
vitalij
1 / 1 / 0
Регистрация: 19.06.2011
Сообщений: 56
05.08.2011, 09:48  [ТС] 13
Почему меня так ругать. Вся я правильно написал. Слово КАЖДОГО и имеет смысл - со списка подряд и один раз только сравнить с другим со списка РЕНДОМНО. Спасибо и за ту прогу, что ты наисал. Я и там полезное нашел.
0
Puporev
Модератор
55057 / 42325 / 29229
Регистрация: 18.05.2008
Сообщений: 100,020
05.08.2011, 09:52 14
Цитата Сообщение от vitalij Посмотреть сообщение
Почему меня так ругать
Потому что в начале сообщения нужно грамотно и понятно излагать суть проблемы или точное условие задачи. А попытка объяснить это в двух словах на полурусском языке как правило заканчивается посылом автора куда подальше. Это Вам на будущее.
0
vitalij
1 / 1 / 0
Регистрация: 19.06.2011
Сообщений: 56
06.08.2011, 22:02  [ТС] 15
Мене відправили куди подалі, але я повернувся. Так що, можливо всетаки зі ComboBox рендомно вибірку зробити? а на українській мові тобі буде краще розмовляти?
0
Arcor
4988 / 1879 / 399
Регистрация: 20.11.2009
Сообщений: 6,153
Записей в блоге: 1
07.08.2011, 02:43 16
Цитата Сообщение от vitalij Посмотреть сообщение
Мене відправили куди подалі, але я повернувся. Так що, можливо всетаки зі ComboBox рендомно вибірку зробити? а на українській мові тобі буде краще розмовляти?
Тут русский форум вроде бы как, я мог бы тоже для полнейшего понимания писать по немецки, когда меня по русски не совсем понимали , третий прийдет будет на английском объяснять, четвертый на китайском, и так не получится ни у кого ни понять, ни объяснить
0
07.08.2011, 02:43
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.08.2011, 02:43

TabControl, StringGrid и Combobox. Обращение к ComboBox
Здравствуйте. Вот такое задание: Для каждого предмета в аттестате может быть:...

Зависимость ComboBox от другого ComboBox'a
Как сделать, что бы при выборе строки в ComboBox1, подгружались строки в...

ComboBox.Text и ComboBox.Items.Text
Всем доброго времени суток. Помогите пожалуйста с такой проблемой...Как...


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

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

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