- Samsung Galaxy S24 Ultra - ha működik, ne változtass!
- iPhone topik
- Hivatalos a OnePlus 13 startdátuma
- Edge 70 Fusion: új renderek, több szín és részletek a specifikációt illetően
- A világ aktív okostelefonjainak negyede iPhone, ötöde Galaxy
- Okosóra és okoskiegészítő topik
- Végre hivatalos, mikor lesz az S26 hivatalos
- Honor 200 Pro - mobilportré
- Milyen okostelefont vegyek?
- OnePlus 15R - régen minden jobb volt
-
Mobilarena

Új hozzászólás Aktív témák
-
Rover623
félisten
Ha parázol hogy lebux, használd ezt:
{ez a rutin a
Str szövegben megadott számot a
Base számrendszer (max. 16-os) szerint megpróbalja számmá alakitani.
Ha a string érvénytelen karaktert is tartalmaz, akkor Code = -1 és a visszaadott érték a hibát okozó karakter poziciója }
Const
_Nums : Array [0..16] Of Char = '0123456789ABCDEF'#0;
Function StrToNum (Str: PChar; Base : Word; Var Code: Integer): LongInt;
Var
I : Word; {mindenfélére...pl. ciklusváltozónak is jó lesz}
Mul, {az aktuális szorzó}
Work : LongInt; {ebben gyűlik a végeredmény}
Pozicio : PChar;
Begin
Code := 0; {legyünk optimisták...nincs hiba}
Work := 0; {0-ról indul az eredmény}
I := StrLen (Str); {milyen hosszú a szöveg?}
If (I > 0) Then Begin
{ha legalább egy karakter van a szövegben, akkor hajrá!}
Mul := 1; {a híres-neves nulladik hatvány}
StrUpper (Str); {nagybetűsítünk}
Dec(I); {merthogy a PChar 0-tól indexelődik}
For I := I Downto 0 Do Begin {végigmászunk a karaktereken}
Pozicio := StrScan (_Nums, Str [ i ] ); {beazonosítjuk a bütüt}
If (Pozicio = Nil) Then Begin
{ha nincs az engedélyezett karakterek között, akkor hiba van!}
Code := - 1;
StrToNum := I;
Exit; {hibával kilépünk}
End;{if}
{$IFOPT Q+}
{$DEFINE OVER}
{$Q-}
{$ENDIF}
Inc (Work, Mul * (Pozicio - _Nums) );{megnöveljük az eredményt}
Mul := Mul * Base;{ hatványozunk :) }
{$IFDEF OVER}
{$Q+}
{$UNDEF OVER}
{$ENDIF}
End; { For }
End; {ha volt valami a Str-ben}
StrToNum := Work;{nyilvánossá tesszük a végeredményt}
End; { StrToNum }
{a leggyakoribb függények, az általános rutint hívják meg}
Function HexaVal (HexaString: PChar; Var Code: Integer): LongInt;
Begin
HexaVal := StrToNum (HexaString, 16, Code);
End; { HexaVal }
Function BinaryVal (BinaryString: PChar; Var Code: Integer): LongInt;
Begin
BinaryVal := StrToNum (BinaryString, 2, Code);
End; { BinaryVal }
Function DecimalVal (DecimalString: PChar; Var Code: Integer): LongInt;
Begin
DecimalVal := StrToNum (DecimalString, 10, Code);
End; { DecimalVal }
Mivel rengeteg programozó van a világon, nem állítom hogy más nem oldotta meg hasonlóképpen, de vmivel kisebb az esélye...
[Szerkesztve]
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
- Samsung Galaxy S24 Ultra - ha működik, ne változtass!
- TCL LCD és LED TV-k
- Kormányok / autós szimulátorok topikja
- iPhone topik
- Gitáros topic
- Hivatalos a OnePlus 13 startdátuma
- Edge 70 Fusion: új renderek, több szín és részletek a specifikációt illetően
- Zyxel NAS326
- Milyen monitort vegyek?
- A világ aktív okostelefonjainak negyede iPhone, ötöde Galaxy
- További aktív témák...
- HP EliteDesk 800 G2 MT PC, I7-6700, 8GB DDR4, 120GB SSD, Nvidia Quadr 1GB VGA, Win 11, Számla, garan
- Seagate BarraCuda 3.5 4TB 5900rpm 64MB SATA3 (ST4000DM000) HDD, Számla, Garancia
- Acer Nitro XV240YPbmiiprx Gaming monitor, 24", IPS, 2 ms, 165Hz, 1920x1080, FreeSync, HDMI, DP
- Kingston FURY Beast RGB 64GB (2x32GB) DDR4 3200MHz
- Eladó újsuerű Creality Hi 3D nyomtató
- MEDION ERAZER Cooling Kit V2 Vízhűtés - MD 62737 Beast 16 X1 gamer laptophoz
- Keresek Galaxy S21/S21+/S21 Ultra/S21 FE
- LG 49sm8600pla 49" és ok. odl 58920uh-dab 58" hibás TV-k
- GYÖNYÖRŰ iPhone 12 Mini 128GB Purple-1 ÉV GARANCIA - Kártyafüggetlen, MS3630
- Apple iPhone 14 Pro Max 256GB,Újszerű,Dobozaval,12 hónap garanciával
Állásajánlatok
Cég: Central PC számítógép és laptop szerviz - Pécs
Város: Pécs
Cég: Laptopműhely Bt.
Város: Budapest



