Jak wylosować jakąś literkę alfabetu?

0

Hmm.. pytanie na poziomie: Jak wylosować jakąś literkę alfabetu? :-P

0

Na jakim poziomie ?

var
wylosowana_literka:string;

Randomize;
wylosowana_literka:=chr(random(120)+60);

okreslajac przedzial np. od 65 do 100 czy jak tam chcesz

0

jeszcze mozna tak copyright noxx units :P
type talphabet = object
table : array[0..26] of char;

function find_char(s : string) : byte; //cos jak chr i ord :P
procedure initialize_table; //wstaw alfabet do table[]
end;

function talphabet.find_char(s : string) : byte;
var
i : integer;
begin
s := uppercase(s);
for i:=0 to 26 do
if s = table[i] then
begin
result := i;
break;
end;
end;

procedure talphabet.initialize_table;
var
i : integer;
const
alfabet = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ';
begin
for i:=0 to 26 do
table[i] := alfabet[i];
end;

var
opek : talphabet;
w oncreate
opek.initialize_table;
randomize;

pozniej gdzies:
var
s : string;
begin
s := opek.table[random(26)];

chyba dziala :P

0

Uwazam ze procedurka ziombera jest o wiele wiele lepsza nie trzeba obliczac liter itd sam deklarujesz jakie literki i mozesz pominac jakie znaki chcesz :) pozdro

0

a ja uważam że o wiele lepsza jest procedurka widma. Możesz wylosować jaki chcesz znak. I też możesz wybraćco chcesz, wystarczy w Win98 włšczyć tablicę znaków i już wiesz jaki kod ASCII przysługuje danemu znaku i robisz:

[code]begin
ASCII := random(gorny_przedzial - dolny_przedzial) + dolny_przedzial;
if ASCII = jakas_liczba then
losuj_jeszcze_raz //i tak w kółko
char := chr(ASCII);
end;[/code]

Oczywicie można by to jeszcze bardziej uprocić, ale nie chce mi się w tej chwili myleć:)

//Sokus - dlaczego w każdym Twoim poście polskie litery są w innym kodowaniu - postaraj się dostosować do panującego na forum - m.M

0

mnie to wali ktora lepsza wazne ze oby dwie dzialaja:
literka:=chr(random(120)+65);
a nie 60 zdaje mi sie

1 użytkowników online, w tym zalogowanych: 0, gości: 1