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

C++

Войти
Регистрация
Восстановить пароль
 
taras atavin
Ушёл с форума.
3569 / 1752 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
#1

Ортогональная таблица - C++

10.02.2010, 11:02. Просмотров 808. Ответов 8
Метки нет (Все метки)

Есть таблица БД с композитным возможным ключом из двух полей, двух композитных сущностей, или обычного поля и композитной сущности. Надо значениям одного из этих полей/композитов сопоставить столбцы экранной таблицы, а значение второго поля пусть соответствуют строкам и подписать строки/столбцы в заголовочных столбцах/строках соответствующими значениями полей (только обычных, если столбцам соответствуют значения композита, то все его поля вывести в равное число заголовочных строк). Вход - TADOTable/TADOQuery или их аналоги. Как сделать компонент, инкапсулирующий всё, что нужно для решения этой задачи?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.02.2010, 11:02     Ортогональная таблица
Посмотрите здесь:

Как формируются блочная и ортогональная матрицы? - C++
Подскажите каким способом формируются блочная и ортогональная матрицы?

Таблица в C++ - C++
Здравствуйте. Как выравнять ячейки в таблице без помощи пробелов? С пробелами получилось где-то так... #include <stdio.h> #include...

Таблица рекордов - C++ Builder
Помогите сделать таблицу рекордов для игры. В таблице должно быть 2 поля: имя и рекорд. имя нужно передавать и 1 формы в 4,а рекорды из 2 и...

таблица умножения - C++
Помогите написать программу, которая поможет ученику начальной школы выучить таблицу умножения. Нужно использовать функцию rand для...

Хеш-таблица - C++ Builder
Доброго время суток. Пытаюсь реализовать хеш-таблицу. Организация таблицы с вычисляемым входом: Перемешивание с цепочками...

Таблица умножения - C++
Написать программу проверки знания таблицы умножения. Программа должна вывести 10 примеров и выставить оценку: за 10 правильных ответов...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
oxotnik
1586 / 1063 / 33
Регистрация: 21.08.2008
Сообщений: 4,545
Записей в блоге: 1
10.02.2010, 11:13     Ортогональная таблица #2
Думаю, что если заменить слова "композитный" на "составной" и "сущность" на более понятный синоним (более привязанный к конкретной теме), то шансов получить ответ прибавится.
taras atavin
Ушёл с форума.
3569 / 1752 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
10.02.2010, 11:43  [ТС]     Ортогональная таблица #3
Коткин С.Д., преподавая студентам реляционные БД говорит, именно о композитных сущностях и ключах, а не составных. Но как синоним думаю можно юзить слово "составной". Тогда задача будет выглядеть так:
Есть таблица БД с составным возможным ключом из двух полей, двух составных атрибутов, или обычного поля и составного атрибута. Надо значениям одного из этих атрибутов сопоставить столбцы экранной таблицы, а значения второго поля пусть соответствуют строкам и подписать строки/столбцы в заголовочных столбцах/строках соответствующими значениями обычных полей. Если, например, столбцам, соответствуют значения составного атрибута, то значения всех его полей вывести в равное количество заголовочных строк: каждая заголовочная строка соотвествует одному полю составного атрибута. Вход - TADOTable/TADOQuery или их аналоги. Как сделать компонент, инкапсулирующий всё, что нужно для решения этой задачи?
Хотя, я не уверен, что термин "атрибут" из теории БД можно юзить в сочетании со словами "составной", "композитный".
taras atavin
Ушёл с форума.
3569 / 1752 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
10.02.2010, 11:52  [ТС]     Ортогональная таблица #4
Предположим, таблица БД имеет поля: день недели, номер пары, возможность планирования занятия на данное время. Первичный ключ состоит из полей: день недели, номер пары. Вывести надо в виде (рис. 1)

Друга таблица имеет поля: неделя, день недели, номер пары, возможность планирования на данное время. Показать так - (рис. 2)

В обоих случаях интерфейс OpenOffice.org Calc не нужен, надо только также оформить саму таблицу (даже без заголовочных строк и столбцов, свмого OpenOffice.org Calc). Плюс выделить в первом случае первые строку и столбец, а во втором - первый столбец и две первые строки, так чтоб они казались выпуклыми и имели другой цвет фона (Подобно FixedRows в TStringGrid). Надо также поддерживать транспонированный вариант второй таблицы (выделит первые два столбца и первую строку) и вариант, когда и заголовочных строк несколько, и заголовочных столбцов тоже. Всё должно быть инкапсулировано в классе.
Миниатюры
Ортогональная таблица   Ортогональная таблица  
oxotnik
1586 / 1063 / 33
Регистрация: 21.08.2008
Сообщений: 4,545
Записей в блоге: 1
10.02.2010, 12:16     Ортогональная таблица #5
Цитата Сообщение от taras atavin Посмотреть сообщение
Предположим, таблица БД имеет поля: день недели, номер пары, возможность планирования занятия на данное время. Первичный ключ состоит из полей: день недели, номер пары. Вывести надо в виде (рис. 1)
имеет смысл сделать 7 полей для дней недели (больше или меньше ну никак не будет, это статичные данные) + поле возможности а в них проставлять номера пар + конкретную дату.
taras atavin
Ушёл с форума.
3569 / 1752 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
10.02.2010, 12:20  [ТС]     Ортогональная таблица #6
А если станет их 700? Я ведь могу и сто видов недели нафигачить. Так вот: сами таблицы БД надо делать быстро и единообразно и также быстро и единообразно их подключать к экранным. Долго можно делать только класс экранной таблицы, но использоваться он будет многократно.
oxotnik
1586 / 1063 / 33
Регистрация: 21.08.2008
Сообщений: 4,545
Записей в блоге: 1
10.02.2010, 12:23     Ортогональная таблица #7
Цитата Сообщение от taras atavin Посмотреть сообщение
А если станет их 700? Я ведь могу и сто видов недели нафигачить.
700 дней в неделе? дас ист фантастишь!!!
Нормализация БД
taras atavin
Ушёл с форума.
3569 / 1752 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
10.02.2010, 12:43  [ТС]     Ортогональная таблица #8
Цитата Сообщение от oxotnik Посмотреть сообщение
больше или меньше ну никак не будет, это статичные данные
Учебная неделя, чаще всего, пятидневная. И больше бывает: декада состоит больше, чем из семи, кажется, из десяти дней. И при чередовании недели данные могут меняться. На рис 2 в посте № 4 10 учебных дней. А если тем же макаром и субботой? Это уже 12 дней. Ещё вариант: на месте дней недели числа месяца, а на месте вида недели месяцы. Получам 31 или 366 дней. С чётным/нечётным годом 732 дня. А если за век? Вместо номеров пар могут быть страны, а сами данные, например, были ли в этот день и в этой стране землетрясения. По тому же принципу можно много чего навертеть и каждый раз мучаться с созданием кучи полей?

Добавлено через 2 минуты
А это я и так знаю. Но на экран надо вывести так, чтоб одно или несколько полей, идентифицировали столбец вместо строки.

Добавлено через 8 минут
Идея задачи: вывести таблицу на экран, интерпретируя составной возможный ключ как набор индексов плоского массива. Такие экранные таблицы реально существуют во многих программах автоматизированного составления расписания. В одной проге я даже сам делал такое отображение с возможностью редактирования. Сейчас же меня интересует класс для единообразной работы с такими таблицами, если данные хранятся в таблицах обычных реляционных БД.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.02.2010, 14:07     Ортогональная таблица
Еще ссылки по теме:

Таблица умножения - C++
Написал программу которая делает такое: 1.Юзер вводит число, таблицу умножения которого нужно вывести 2.Выводится таблица умножения...

Hash - таблица - C++
Собственно всегда считал, что map - обычная хеш-таблица, оказалось нет, это какое-то древовидная упорядоченная хэш-таблица (без понятия,...

Таблица изображений - Visual C++
Всем привет. Пишу на MS2010 простенькую гомоку. Вообще упор скорее на ии, чем на интерфейс, но все же. Мне нужно сделать поле 19x19, что-то...

Электронная таблица на C++ - C++ Builder
ПОМОГИТЕ ПОЖАЛУЙСТА!!!!!!!! Нужно создать электронную таблицу ( по типу Exсel ) на С++


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

Или воспользуйтесь поиском по форуму:
oxotnik
1586 / 1063 / 33
Регистрация: 21.08.2008
Сообщений: 4,545
Записей в блоге: 1
10.02.2010, 14:07     Ортогональная таблица #9
твоя задача тебе лучше видна, а конкретно по вопросу - наследуйся от TCustomGrid и делай вручную все прорисовки, ну и от циклов никуда не денешься.
Yandex
Объявления
10.02.2010, 14:07     Ортогональная таблица
Ответ Создать тему
Опции темы

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