pascal kerdes
Moravcsik Szilárd
mszilard at contarex.hu
Tue Sep 18 09:07:26 CEST 2007
Fuzesi Arnold írta:
> ezt vki ki tudna javítani nekem működőre?
> basszus elfelejtettem pascalul :(
>
> amit szeretnek:
> ami bejön karakter azt kiirom
> csak amikor hexa 0x4F jön, akkor egy soremelest beszurok a 0x4F utan
>
> 10000 kösz!
>
> var i: longint;
> var b: char;
> begin
> writeln('start');
>
> while i=1 do
> b:=ComReadChr();
> if (b=(0x4f)) then writeln('soremeles');
> else wite(b);
> end;
> end.
>
Szia Arnold!
Most olvastam a fentieket.
Neked byte -> hexa átalakítás is kell, ugye?
Minden byte indig 2 db hexa számjegy, kivétel a 'soremeles'?
Én pl. így csinálnám:
Const
Hex : Array[ 0 .. 15 ] Of Char = ( '0', '1', '2', '3',
'4', '5', '6', '7',
'8', '9', 'A', 'B',
'C', 'D', 'E', 'F' );
Var
b : Byte;
hh : Char;
hl : Char;
Begin
s := ''; // Inicializálás
WriteLn( 'Start' ); // Indulás!
While( True ) Do Begin // Végtelen ciklusban
b := Ord(ComReadChr); // Karakter (kód) beolvasás
hh := Hex[((b Shr 4) And $0F)]; // Felső byte hexa számjegye
hl := Hex[(b And $0F)]; // Alsó byte hexa számjegye
Write( hh ); // Felső hexa digit kiírása
Write( hl ); // Alsó hexa digit kiírása
If b = $4F Then // Ha $4F jött, akkor
Write( $0D ); // soremelés karakter kiírása
End;
End.
Üdv:
Szilárd
More information about the Elektro
mailing list