Elo!
Ma ktoś pomysł na procedurkę Buttona, aby po kliknięciu w Edicie 1, był generowany losowy układ liter z tych ktore sa podane w edicie 2 i o dlugosci podanej w edicie 3 ? Ale zawiłe..... :) Chyba wiadomo oco chodzi ?
Elo!
Ma ktoś pomysł na procedurkę Buttona, aby po kliknięciu w Edicie 1, był generowany losowy układ liter z tych ktore sa podane w edicie 2 i o dlugosci podanej w edicie 3 ? Ale zawiłe..... :) Chyba wiadomo oco chodzi ?
Wystarczy random i randomize. Nawet masz chyba podobny przykład w helpie
no tak, ale trzeba umieć tego użyć....
musze sobie kupic ksiazke (:
var
Key: String;
begin
while Length(Key) < IntToStr(Edit3.Text) do
Key := Key + Edit2.Text[Random(Length(Edit2.Text) +1)];
Aż takie trudne?
<font color="red">[dopisane]</span>
Do postów poniżej:
Sorry :-D Qrde to są podstawy, tak trudno się pokapować co jest nie tak, że Od razu trzeba się pytać?
Wrzucam ten kod pod buttona, oczywiście wczesniej 3 Edit'y, próbuje skompilować i wypisuje:
[Error] Unit1.pas(34): There is no overloaded version of 'IntToStr' that can be called with these arguments
Użyj StrToInt, Matrox za szybko klepał i mu się pomyliło...
może to niezbyt piękne, ale dziła ;-)
procedure TForm1.Button1Click(Sender: TObject);
var
i,stan:integer;
ss:pchar;
key:string;
begin
i:=0;
stan:=0;
ss:=pchar(edit2.Text);
while stan=0 do
begin
inc(i);
if ss[i]='' then stan:=1 else inc(i);
end;
randomize;
for stan:=1 to strtoint(edit3.Text) do key:=key+ss[random(i)];
edit1.Text:=key;
end;
Ale czy na pewno o to chodziło? Bo z pierwszego postu wnioskuję, że chodzi o losowe "rozrzucenie" literek, bez kilkukrotnego wykorzystywania tej samej, zaś wszystkie programy przedmówców losują tekst, który jest tej samej długości i składa się z takich samych, a nie tych samych literek, co w Edit1. Sugeruję Random(Length(Edit1.Text)-Length(Edit2.Text)) i kasowanie wylosowanej literki, po jej skopiowaniu... Mam nadzieję, że takie wskazówki wystarczą, by przerobić któryś z programów przedmówców na działający (lub napisania własnego - to naprawdę proste).
<font color="green">Ale czy na pewno o to chodziło? Bo z pierwszego postu wnioskuję, że chodzi o losowe "rozrzucenie" literek, bez kilkukrotnego wykorzystywania tej samej...</span>
a jeśli liczba w edit3 jest wieksza od liczby liter w edit2?? [cygaro]
Właśnie dlatego pytam się, czy o to chodzi. Bo można potrzebować albo jednego, albo drugiego...
A jak zrobić key generator taki ,że w pierwszym edicie wpisujemy ile chcemy i co chcemy ,a w drugim otrzymujemy kod w takim formacie ???-???-???-???