проблема с массивом

За вознаграждение или нахаляву (если повезёт)

Модераторы: Хыиуду, MOTOCoder, Medved, dr.Jekill

Joker
Сообщения: 3
Зарегистрирован: 12 дек 2007, 17:21

здравствуйте уважаемые посетители форума требуется ваша помощь!
пишет вам студент неудачник первого курса , неудачник потомучто проучился в инсте один месяц потом по некоторым обстоятельствам попал в больницу , где провел последние два месяца . Вернувшись в институт после болезни преподователь загрузил меня курсовой . Нужно написать программу на С . Пропустил много материала и поэтому ощущаю себя полным нубом , пытался прочитать пару книг ,однако, столкнулся с такой проблемой как непонимание ! прошу вас помоч мне написать программу и если нетрудно с коментами откуда там что взелось ( хочу понять ) . Пожалуйста.

Программа : задан массив из n элементов. Вывести все возможные варианты перестановки из n элементов по m.

преподователь сказал что дал мне очень простую задачу, но справится немогу . А он даже помогать отказывается =(

программу нужно сдать до 22 декабря этого года
очень надеюсь на вашу помощь
Аватара пользователя
WinMain
Сообщения: 929
Зарегистрирован: 14 янв 2005, 10:30
Откуда: Москва
Контактная информация:

Вывести все возможные варианты перестановки из n элементов по m.
Что такое n мне понятно - это число элементов в массиве. А вот что такое число m? Оъясни точнее.
BBB
Сообщения: 1298
Зарегистрирован: 27 дек 2005, 13:37

Joker писал(а):Вывести все возможные варианты перестановки из n элементов по m.
Если речь о комбинаторике, то впервые слышу об "перестановках из n элементов по m". Перестановки имеют лишь один "аргумент": "перестановки из N элементов".

А "из N по M" бывают сочетания или размещения
Joker
Сообщения: 3
Зарегистрирован: 12 дек 2007, 17:21

&quot писал(а):Что такое n мне понятно - это число элементов в массиве. А вот что такое число m? Оъясни точнее.
n - количество элементво массива.
m - скорее всего какое-либо число, вводимое с клавиатуры, если массив одномерный,.
BHy4ok
Сообщения: 237
Зарегистрирован: 01 май 2007, 09:03
Откуда: г.Находка
Контактная информация:

Joker писал(а):n - количество элементво массива.
m - скорее всего какое-либо число, вводимое с клавиатуры, если массив одномерный,.
Скорее всего - "нипанятно".
Уточни у преподавателя т.к. кол-во элементов и само число совершенно разные вещи. Не говоря уже об их перестоновке.
Ну и желательно пример работы в устной форме.
chnry
Сообщения: 20
Зарегистрирован: 15 дек 2007, 15:30

Пиши в асю 393877884. Обьясню как это делается.
Аватара пользователя
WinMain
Сообщения: 929
Зарегистрирован: 14 янв 2005, 10:30
Откуда: Москва
Контактная информация:

Так же уточни, эту программу нужно писать именно на Си или можно на С++. На алгоритм это практически не повлияет, но позволит использовать операторы new и delete для выделения и очистки памяти, а так же использовать потоки cin и cout для консольного ввода/вывода. К тому же этот алгоритм можно написать в виде шаблона и использовать для разных типов данных: символьных, целочисленных, с плавающей точкой.
Ещё надо понимать, что количество вариантов перестановки элементов массива будет равно факториалу от числа N. Т.е. 3! = 6, 4! = 24, 5! = 120, и т.д. Таким образом если число N от 6 и выше, то все варианты не поместятся на экран, значит их нужно в какой-то файл записывать.
Joker
Сообщения: 3
Зарегистрирован: 12 дек 2007, 17:21

я уточнил. Вот ,что мне сказал преподаватель:
m - число промежуточных множеств полученных в результате перестановки элементов массива , в конце вывести полученные множества на печать
Аватара пользователя
WinMain
Сообщения: 929
Зарегистрирован: 14 янв 2005, 10:30
Откуда: Москва
Контактная информация:

Значит m - это есть ни что иное как факториал от числа N.
Тогда дело за малым. Для нормального программиста эта работа на полдня, максимум на день.
RubusTubus
Сообщения: 2
Зарегистрирован: 01 ноя 2009, 13:40

up :cool:

Такой же курсач должен сделать....
Только вот как ? :confused:
Помогите..... :(
Ответить