Hirdetés
- IFA 2025: Sokrétű tudást kínál az AGM két friss strapabírója
- Telekom T Phone 3 5G – modern tudakozó
- Valószínűleg a Honor legolcsóbb modellje lesz
- IFA 2025: Lépcsőmászó, víztisztító, szögletes és gombóc alakú robotporszívók
- 3 milliós villanyautó, AI tamagocsi és kamerás napszemüveg - megjött az AstraUX
- Samsung Galaxy A55 - új év, régi stratégia
- Motorola Edge 40 - jó bőr
- Telekom mobilszolgáltatások
- iPhone 16e - ellenvetésem lenne
- Google Pixel topik
- Google Pixel 10 Pro XL – tíz kicsi Pixel
- Redmi Note 9 Pro [joyeuse]
- Honor Magic V5 - méret a kamera mögött
- Telekom T Phone 3 5G – modern tudakozó
- Huawei P30 - kell ennél több?
Új hozzászólás Aktív témák
-
ttower
aktív tag
válasz
ViTToRe #2139 üzenetére
itt a forráskód hogy más is tanulhasson:
(nem biztos hogy a legjobb, de működik)uses crt;
var s:string; {a beadott szöveg}
c_s:string; {a kódolt szöveg}
c:char; {a billentyűzetről beolvasott karakter}
p:byte; {a kurzor pozíciója}
hany:byte; {eltolandó karakterszám}
function cesar(s:string; hany:byte):string;
var loop:byte;
eltolando:byte;
uj:byte;
begin
for loop:=1 to length(s) do
if s[loop] in [#65..#90,#97..#122] then {megnézi hogy az adott karakter betű-e}
begin
eltolando:=hany mod 25; {eltolja a betűket}
uj:=ord(s[loop])+eltolando;
if uj=91 then uj:=65;
if uj=123 then uj:=97;
s[loop]:=chr(uj);
end;
cesar:=s; {funkció visszatérési értéke az új string}
end;
begin
clrscr;
writeln ('Hány karakterrel tolja el a szöveget?');
readln (hany);
clrscr;
p:=1;
repeat
c:=readkey; {beolvas egy karaktert a billentyűzetről}
if c<>#13 then {ha nem enter akkor lefut a kiértékelés}
begin
if c in [#32..#90,#97..#122] then {ha nem speciális karater, bekerül a szövegbe}
begin
insert (c,s,p);
inc(p);
end;
if c=#8 then {ha backspace, törli a karaktert}
begin
s:=copy (s,1,p-2)+copy (s,p,length(s));
if p>1 then dec (p);
end;
if c=#0 then {ha a karakter #0 akkor megnézi mi a második része}
begin
c:=readkey;
case c of
#75: if p>1 then dec(p); {ha a jobbra nyíl a kurzor jobbra megy}
#77: if p<length(s)+1 then inc(p); {ha a balra nyíl a kurzor balra megy}
#83: s:=copy (s,1,p-1)+copy (s,p+1,length(s)); {ha delet törli a karaktert}
end;
end;
clrscr; {törtli a képernyő tartalmát}
gotoxy (1,1); {a kurzort a jobb felső sarokba állítja}
writeln (s); {szöveg kiírása}
gotoxy (1,2); {a kurzort második sor elejére állítja}
writeln (cesar(s,hany)); {a kódolt szöveg kiírása}
gotoxy (p,1); {kurzor pozícionálása}
c:=#255;
end;
until c=#13; {kilépés ha entert ütöttünk le}
end.
Új hozzászólás Aktív témák
- Csendes, slim profilú és madzagmentes Logitech klaviatúra, amit nem kell tölteni
- Mini-ITX
- Egérpad topik
- Formula-1
- Samsung Galaxy A55 - új év, régi stratégia
- Vicces képek
- PlayStation 4
- AMD Ryzen 9 / 7 / 5 7***(X) "Zen 4" (AM5)
- Motorola Edge 40 - jó bőr
- IFA 2025: e-bringa után e-láb
- További aktív témák...
- BESZÁMÍTÁS! ASUS H510M i5 10400F 32GB DDR4 512GB SSD RX 6600XT 8GB ZALMAN M4 Cooler Master 650W
- ÁRGARANCIA!Épített KomPhone i9 14900KF 32/64GB RAM RTX 5070 Ti 16GB GAMER PC termékbeszámítással
- Apple Watch Series 9 45mm GPS Starlight 1 év Garancia Beszámítás Házhozszállítás
- Azonnali készpénzes Intel i3 i5 i7 i9 12/13/14 gen processzor felvásárlás személyesen / csomagküldés
- HIBÁTLAN iPhone 13 Pro 128GB Alphine Green -1 ÉV GARANCIA - Kártyafüggetlen, MS3024, 91% Akkumulátor
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: CAMERA-PRO Hungary Kft.
Város: Budapest