Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   forum.boolean.name > Веб-программирование > JavaScript / HTML

JavaScript / HTML Создание динамической разметки страниц

Ответ
 
Опции темы
Старый 10.04.2011, 21:26   #1
KingMaks
Знающий
 
Аватар для KingMaks
 
Регистрация: 26.11.2009
Сообщений: 313
Написано 35 полезных сообщений
(для 95 пользователей)
Вывод всех подмножеств данного множества

Нужно написать программу, которая будет выводить все подмножества введенного множества. Например если ввести множество 1,2,3,4,5 то должны получить:

1
2
3
4
5
12
13
14
15
23
24
25
34
35
45
123
124
125
134
135
145
234
235
245
345
1234
1235
1245
1345
2345
12345
Я сделал пару попыток но ни один вариант не выводит все подмножества, а только их часть:
Вариант 1:
<html>

<head>
<title>Индивидуальная работа</title>
</head>

<body bgcolor='DarkSeaGreen'>

<form name='form1'>

Введите множество елементов через кому:<br>
<input type='text' name='mn' size=50>
<input type='button' name='do' value='Выполнить' OnClick='func();'><br><br>
Список всех подмножеств:<br>
<textarea name='otv' cols=50 rows=10 wrap='vrtual'></textarea>

</form>

<script type='text/javascript'>

function func()
{
var m=document.form1.mn.value.split(',');
var st='';

for(i=0; i<m.length; i++)
{
for(j=0; j<=m.length; j++)
{
if(j+i>m.length-1){break}
st=st+'(';
for(k=j; k<=j+i; k++)
{
if(k>m.length-1){break}
st=st+m[k]+',';
}
st=st.slice(st,-1);
st=st+'); ';
}
}
document.form1.otv.value=st;
}



</script>

</body>

</html>
Вариант 2:
<html>

<head>
<title>Индивидуальная работа</title>
</head>

<body bgcolor='DarkSeaGreen'>

<form name='form1'>

Введите множество елементов через кому:<br>
<input type='text' name='mn' size=50>
<input type='button' name='do' value='Выполнить' OnClick='func();'><br><br>
Список всех подмножеств:<br>
<textarea name='otv' cols=50 rows=10 wrap='vrtual'></textarea>

</form>

<script type='text/javascript'>

function func()
{
var m=document.form1.mn.value.split(',');
var mas=[];
var st=[];
for(i=0; i<m.length; i++)
{
for(s=0; s<=i; s++){mas[s]=m[s]};
for(k=i; k>=0; k--)
{
for(j=k; j<m.length; j++)
{
mas[k]=m[j];
st=st+mas+'| ';

}
}
}
document.form1.otv.value=st;
}


</script>

</body>

</html>
Помогите исправить одну из этих программ, чтобы выводила все подмножества.
__________________
StimuL
Maks
(Offline)
 
Ответить с цитированием
Старый 10.04.2011, 21:58   #2
impersonalis
Зануда с интернетом
 
Аватар для impersonalis
 
Регистрация: 04.09.2005
Сообщений: 14,014
Написано 6,798 полезных сообщений
(для 20,935 пользователей)
Ответ: Вывод всех подмножеств данного множества

ты уверен, что вопрос не чисто алгоритмический ( http://forum.boolean.name/forumdisplay.php?f=21 ) или математический ( http://forum.boolean.name/forumdisplay.php?f=85 ) ?
Выбирая нужный раздел ты облегчаешь жизнь будущим искателям и сам не изобретаешь велик.
__________________
http://nabatchikov.com
Мир нужно делать лучше и чище. Иначе, зачем мы живем? tormoz
А я растила сына на преданьях
о принцах, троллях, потайных свиданьях,
погонях, похищениях невест.
Да кто же знал, что сказка душу съест?
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Часовой пояс GMT +4, время: 19:20.


vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com