|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - перестановка слов или число размещений из списка. Комбинаторика. |
|
CMD/BAT - перестановка слов или число размещений из списка. Комбинаторика.
|
Новый участник Сообщения: 13 |
Профиль | Отправить PM | Цитировать Здравствуйте. Прошу помощи в решении такой задачи.
Дано: список слов в файле word.txt Пример: ========== я ты это здесь там да нет и много мало 12 1984 ========== Задача1: Создать все возможные перестановки с заданным числом элементов (К) и записать их в файл Задача2: Написать батник (bat) который при запуске запросит число элементов (К) прочитает файл word.txt и запишет результат в файл wordmix+K.txt Дополнение: Файл word.txt может состоять из любого количества слов и цифр, словом считается все что на строке. Файл wordmix+K.txt создать в той же директории где находится word.txt, здесь же запускаем батник. Пример: если К=2 решение: wordmix2.txt яты тыя тамздесь 12мало много1984 и т.д. Благодарю за внимание. |
|
Отправлено: 17:30, 15-03-2012 |
Ветеран Сообщения: 1758
|
MaximvsIT,
Это домашка? Давай алгоритм решения. |
Отправлено: 20:09, 15-03-2012 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Новый участник Сообщения: 13
|
Профиль | Отправить PM | Цитировать Прошу по теме. Если есть варианты реализации поделитесь или направте в нужном направлении.
|
Отправлено: 21:41, 15-03-2012 | #3 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Цитата MaximvsIT:
|
|
Отправлено: 23:06, 15-03-2012 | #4 |
Новый участник Сообщения: 13
|
Профиль | Отправить PM | Цитировать Ну может отчасти Вы и правы. В общем это Комбинаторика, число размещений (А)- это будет количество строк в новом файле wordMix.txt, К - это число элементов записанных в ряд из количества элементов N (количество слов (строк) из word.txt).
Что я делаю, @echo off спрашиваем К, запоминаем объявляем переменную Х, читаем первую строку, запоминаем объявляем переменную Y, читаем вторую строку, запоминаем склеиваем (не знаю как правильно) первую и вторую переменные, записываем в файл wordmixK.txt очищаем Y переменную, читаем третью строку из word.mix запоминаем как Y склеиваем (не знаю как правильно) первую и вторую переменные, записываем в файл на второй строке wordmixK.txt и т.д. Извините но только так. Что нашел по теме, только на VisualBasic Sub CalcCombin(I As Integer, u As Integer) Dim s As String; k As Integer, j As Integer For k=u To N If b(k) <> Empty Then If i = M Then c(i) = b(k) s="" For j = 1 To M s=s+c(j) Next j z=z+1 znach(z) = s Else c(i) = b(k) b(k) = Empty If proverka = True Then Call CalcCombin(i + 1, k + 1) Else Call CalcCombin(i + 1, 1) End If b(k)=c(i) End If End If Next k End Sub Прошу помощи в реализации этого алгоритма. Теорию понимаю на практике 0. |
|
Отправлено: 19:26, 18-03-2012 | #5 |
Новый участник Сообщения: 13
|
Профиль | Отправить PM | Цитировать Видимо не сдать мне лабу, в этом семестре ((( придется учить мат часть. Сразу скажу что хелп цмд мне никак не помогает. ((
Прошу помощи у спецов. Начал с малого пишу с нуля. @echo off rem Запрашиваем К-элемент set /p kset="Enter K - " echo K is - %kset% rem создает файл wordMix+K.txt COPY word.txt wordMix%Kset%.txt rem создаем К- количество перемененных ? set и дальше не знаю что типа if k<=0 do exit else k=2 do set w1,w2 rem читаем первую строку из файла word.txt и запоминаем for /F "tokens=*" %%i in (word.txt) do @echo %%i>>wordMix%kset%.txt ? Но увы не читает, а записывает все строки в файл, если менять значение tokens=* то работает со столбцами а нужно со строками, в конце делает echo %%i>>wordMix%kset%.txt а необходимо %%i=w1=первой переменной из K Думаю что такие задачи решались не однократно, поиск готовых результатов не дал. Открылся спортивный интерес. Прошу знающих людей откликнуться. |
Отправлено: 18:37, 20-03-2012 | #6 |
Участник сейчас на форуме | Участник вне форума | Автор темы | Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
Интернет - [решено] Как отменить объединение сетевых размещений? | rsod | Microsoft Windows 7 | 8 | 25-07-2019 19:25 | |
2008 R2 - [решено] Несколько размещений на одном интерфейсе | HeadD | Windows Server 2008/2008 R2 | 2 | 03-09-2011 22:57 | |
CMD/BAT - Перестановка полей | Serg2010 | Скриптовые языки администрирования Windows | 2 | 23-04-2011 19:58 | |
Перестановка DVD на CD | lavana | Хочу все знать | 2 | 25-08-2010 18:27 | |
Теория - [решено] Необходима помощь в составлении списка положений или инструкции по разработке ПО | Mystic | Программирование и базы данных | 1 | 05-01-2009 14:07 |
|