Написать в VBA, используя подпрограмму:
Дан массив А — массив обыкновенных дробей. Отсортировать его в порядке возрастания.
Аноним:
Уточните, как обыкновенные дроби хранятся в массиве?
И второй вопрос: можно ли создавать вспомогательный массив (сортировка будет экономной по времени) или нет (сортировка будет экономной по памяти).
И третий вопрос: откуда брать данные для заполнения массива: с листа Excel, генерировать случайным образом, вводить с клавиатуры...
1. давайте использовать не обыкновенные, а десятичные
2.можно использовать
3. Генерировать
2.можно использовать
3. Генерировать
Дело в том, что десятичные дроби дадут тривиальное решение - это обычная сортировка одномерного массива в несколько строчек. А обыкновенные требуют хранить для каждой дроби отдельно числитель и знаменатель, получая ключ сортировки в виде десятичной дроби путем деления. Хранить части можно или сделав массив размером n x 2 (или 2 х n) и тогда i-я дробь это a(i,1)/a(i,2), или сделав массив пользовательского типа, где в качестве последнего описать конструкцию из числителя и знаменателя.
В обоих случаях сортировка немного усложняется, потому что надо перемещать элементы парами.
ну вот я и запутался в этом и с этими обыкновенными дробями...
ну тогда если сможете, то используйте обыкновенные, как и написано в задаче
Я-то смогу, как Вам проще будет понять - с двухмерным массивом или с пользовательским типом? И еще - процедура будет не одна. их будет много, т.е. сортировка будет обращаться к другим процедурам.
с 2х мерным лучше
Ответы
Ответ дал:
1
Вас заинтересует
2 года назад
2 года назад
2 года назад
2 года назад
7 лет назад
7 лет назад
9 лет назад