Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.06.20;
Скачать: CL | DM;

Вниз

Алгоритм   Найти похожие ветки 

 
Rulezz   (2004-06-03 12:22) [0]

Вопрос по алгоритму

Имеется 10 переключателей

каждый может принимать 3 значения

1й -1,2,3
2ой-4,5,6
3ий -7,8,9
4ий - 10,11,12

итд

нужно "пробежаться" по всем возможным значениям

подробности

такой вид должен иметь результат на выходе

?answer_1=2&answer_2=6&answer_3=9&answer_4=12&answer_5=14&answer_6=17&answer_7=19&answer_8=22&answer_9=25&answer_10=29&p roc=send_quiz&quiz_id=1

где answer_x=y

x- переключатель
y- его положение

Кто сделает тому Сюрприз!!!!!


 
pasha_golub ©   (2004-06-03 12:30) [1]

Гы, а шо такое переключатель? Рубильник в смысле?


 
Rulezz   (2004-06-03 12:32) [2]

на веб страничке RadioGroup представляеш?


 
Семен Сорокин ©   (2004-06-03 12:32) [3]

Rulezz   (03.06.04 12:22)  
Почитай про mod и div


 
ЮЮ ©   (2004-06-03 13:02) [4]

for i1 := 1 to 3 do
 for i2 := 4 to 6
    ...
       for i10 := 28 to 30 do bedin
         // тут мы и получим все возможные наборы
       end;
 end;
end;


 
BillyJeans   (2004-06-03 13:11) [5]

а что за сюрприз???


 
GuAV ©   (2004-06-03 13:14) [6]

const M=3;

function IncArr(var A: array of Integer): Boolean;
var I: Integer;
begin
 Result:=True;
 I:=0;
 repeat
 Inc(A[I]);
 if A[I] < M then Exit;
 A[I]:=0;
 Inc(I)
 until I=Length(A);
 Result:=False;
end;

function Fcn(N: Integer): AnsiString;
var
 I,J: Integer;
 A: array of Integer;
 S: string;
begin
 SetLength(A,N);
 FillChar(A[0],SizeOf(A[0])*Length(A),0);
 repeat
   Result:=Result+"?";
   for J:=0 to N do
     Result:=Format("%sanswer_%d=%d&",[Result,J,A[J]+1]);
   Result:=Result+"proc=send_quiz&quiz_id=1"+#13#10;
 until (not IncArr(A));
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
 Memo1.Text:=Fcn(3);
end;


M - число положений,  параметр - число рубильников.
и то и другое произвольно меняем. M даже можно не const...

> BillyJeans   (03.06.04 13:11) [5]
> а что за сюрприз???


 
GuAV ©   (2004-06-03 13:25) [7]

извините, немного налажал....
   for J:=0 to Length(A)-1 do
     Result:=Format("%sanswer_%d=%d&",[Result,J+1,A[J]+1]);


 
GuAV ©   (2004-06-03 13:30) [8]

Не внимательно прочитал условие...
   for J:=0 to Length(A)-1 do
     Result:=Format("%sanswer_%d=%d&",[Result,J+1,A[J]+1+J*3]);


 
rulezz   (2004-06-03 13:53) [9]

шас попробуем



Страницы: 1 вся ветка

Текущий архив: 2004.06.20;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.037 c
1-1086365046
BestMaster
2004-06-04 20:04
2004.06.20
FFT/CFFT Componet (Fast Furie Transformation/Complex Fast Furien)


1-1086340572
Uran
2004-06-04 13:16
2004.06.20
Отображение документа msword


14-1086252507
Igorek
2004-06-03 12:48
2004.06.20
Физический серийный номер винта


3-1085631099
Litr
2004-05-27 08:11
2004.06.20
Поиск


14-1086216097
hiperLogun
2004-06-03 02:41
2004.06.20
XP Menu