41

Re: Підкажіть що не правильно роблю, і як правильно зробити?

koala написав:

У вас двовимірний масив 6 на 9 елементів типу string, усього має бути 6*9=54. Я бачу лише 15. 54!=15. А як правильно заповнити - це вам видніше, це ваш масив. Треба привести у відповідність кількість елементів і декларацію. Я підозрюю, що відповідь

const TIME: array [1..1,1..1] of string =(('t1 - Час')); 

вас не задовільнить, хоча вона абсолютно точно відповідає на ваше питання.

Прочитав в підручнику з інформатики за 11 клас що заповнюється він як таблиця
В мене має бути 2 рядки та 9 стовпців

't1 - Час','t2 - Час','t3 - Час','t4 - Час','t5 - Час','t6 - Час'
'c. - Секунд','хв. - Хвилин','год. - Годин','t1 - Час','t2 - Час','t3 - Час', 't4 - Час','t5 - Час','t6 - Час'

const TIME: array [?..?,?..?] of string =

((??????????????),(???????????))

42

Re: Підкажіть що не правильно роблю, і як правильно зробити?

2 рядки, 9 стовпців, 15 значень. 2*9 = 18.
Усе одно не збігається.
Крім того, 80% значень у вас повторюється - ви точно певні, що вам потрібен саме такий масив? Що ви з ним робити збираєтеся?

43 Востаннє редагувалося ProgramBandera (15.02.2019 13:02:46)

Re: Підкажіть що не правильно роблю, і як правильно зробити?

koala написав:

2 рядки, 9 стовпців, 15 значень. 2*9 = 18.
Усе одно не збігається.
Крім того, 80% значень у вас повторюється - ви точно певні, що вам потрібен саме такий масив? Що ви з ним робити збираєтеся?

Потрібний саме такий масив
't1 - Час','t2 - Час','t3 - Час','t4 - Час','t5 - Час','t6 - Час'
'c. - Секунд','хв. - Хвилин','год. - Годин','t1 - Час','t2 - Час','t3 - Час', 't4 - Час','t5 - Час','t6 - Час'

А потрібний для швидкого визначення ItemIndex
ComboBo1.ItemIndex
t1 - Час
t2 - Час
t3 - Час
t4 - Час
t5 - Час
t6 - Час

ComboBo2.ItemIndex
c. - Секунд
хв. - Хвилин
год. - Годин
t1 - Час
t3 - Час
t4 - Час
t5 - Час
t6 - Час

Наприклад

ComboBo1.ItemIndex  Edit1.Text        ComboBo2.ItemIndex
t1 - Час                  20                   хв. - Хвилин

Або

ComboBo1.ItemIndex  Edit1.Text        ComboBo2.ItemIndex
t2 - Час                   =                   t1

If  (ComboBo1.ItemIndex[1,1]) and (ComboBo2.ItemIndex[2,2]) then
begiin
t1 := StrToFloat(Edit1.Text);
t1 := t1*60;
end;
If  (ComboBo1.ItemIndex[1,1]) and (ComboBo2.ItemIndex[2,2]) then
begiin
t2 := t1;
end;

44

Re: Підкажіть що не правильно роблю, і як правильно зробити?

Тоді вам двовимірний масив не годиться. Принаймні, константний. У Паскалі він може бути тільки прямокутним.
Але це вже більше скидається на Excel.

Подякували: ProgramBandera1

45

Re: Підкажіть що не правильно роблю, і як правильно зробити?

Зайві елементи можна залишити порожніми, і, відповідно, пропускати при заповненні комбіка.

If  (ComboBo1.ItemIndex[1,1]) and (ComboBo2.ItemIndex[2,2]) then

Що цей код повинен робити?

46

Re: Підкажіть що не правильно роблю, і як правильно зробити?

До речі, якщо перейти до індексації масивів з 0, то можна вибирати з них значення по ItemIndex.
Але це не до цього конкретного випадку, а взагалі.