Текущий архив: 2004.11.14;
Скачать: CL | DM;
ВнизС++ => Delphi Найти похожие ветки
← →
Yanis © (2004-10-26 23:22) [0]Что то я никак перевести эту программу(алгоритм) немогу. Не выходит. Вроде всё правильно но не работает
Помогите плиз. Вот полный код:
#include "stdio.h"
#include "string.h"
void swap(char &a, char &b)
{
char c = a;
a = b;
b = c;
}
void gen(char *Array, int t=0)
{
if (t == strlen(Array)-1) printf("%s\n", Array);
else
for (int i = t; i < strlen(Array); i++)
{
swap(Array[t], Array[i]);
t++;
gen(Array, t);
t--;
swap(Array[t], Array[i]);
}
}
void main(void)
{
char Array[100];
printf(":");
scanf("%s", Array);
gen(Array);
}
← →
DVM © (2004-10-27 00:35) [1]Покажи как перевел.
← →
Warlock © (2004-10-27 11:25) [2]Похоже на алгоритм подбора пароля :)
я перевел код работает, правда не знаю правильно или нет.
← →
Yanis © (2004-10-27 23:33) [3]Извиняюсь за задержку.
Вот так я перевёл:
(*
void swap(char &a, char &b)
{
char c = a;
a = b;
b = c;
}
void gen(char *Array, int t=0)
{
if (t == strlen(Array)-1) printf("%s\n", Array);
else
for (int i = t; i < strlen(Array); i++)
{
swap(Array[t], Array[i]);
t++;
gen(Array, t);
t--;
swap(Array[t], Array[i]);
}
}
*)
procedure swap(a,b:char);
var
c:char;
begin
c := a;
a := b;
b := c;
end;
procedure gen(_array:String;t:integer=0);
var
i:integer;
begin
if (t = strlen(Pchar(_array))-1) then Form1.ListBox1.Items.add(Format("%s",[_array]))
else
begin
for i := 0 to strlen(pchar(_array))-1 do
begin
swap(_array[t],_array[i]);
inc(t);
gen(_Array,t);
dec(t);
swap(_Array[t],_array[i]);
end;
end;
end;
← →
Тестировщица © (2004-10-28 02:56) [4]procedure swap(var a,b:char);
var
c:char;
begin
c := a;
a := b;
b := c;
end;
procedure gen(_array:String;t:integer=1);
var
i:integer;
begin
if t = Length(_array) then Form1.ListBox1.Items.add(_array)
else
begin
for i := t to Length(_array) do
begin
swap(_array[t],_array[i]);
inc(t);
gen(_Array,t);
dec(t);
swap(_Array[t],_array[i]);
end;
end;
end;
Самые главные ошибки выделены жирным шрифтом...
← →
Тестировщица © (2004-10-28 03:28) [5]и не советую использовать ListBox -) (намек - подсчитайте n! при n=100)
← →
Yanis © (2004-10-31 21:53) [6]Еле нашел свою тему.
To Тестировщица
Спасибо большое за помощь. А ошиПки то глупые у меня глупые :)
Страницы: 1 вся ветка
Текущий архив: 2004.11.14;
Скачать: CL | DM;
Память: 0.45 MB
Время: 0.04 c