| |
|
|
p.specht
|
Cls
font 2
declare h$,dez!
print "Test\n----\n"
Repeat
print "hex2dez: ";:input h$
if h$="":h$="1FFFFFFFFFFFFF":print h$,"=", :endif
print format$("##################0",hex2dez(h$))
print "dez2hex: ";:input dez!
case dez!=-1:dez!= 9007199254740991'1099511627775 'Testwerte
print dez2hex(dez!)
until %key=27
End
proc dez2hex :parameters dez!
if dez!>9007199254740991
print "Overflow Error"
return 0
endif
declare m!,n!,h$
repeat
n!=intf(dez!/16):
m!=round(dez!-16*n!,0)
case m!>9:m!=m!+7
h$=chr$(m!+48)+h$
dez!=n!
until dez!<=0
return h$
endproc
proc hex2dez :parameters h$
declare d$,a&,dn!
h$=upper$(h$)
h$=trim$(h$)
if left$(h$,1)="-"
print "Undefined Sign Error"
return 0
endif
whileloop len(h$)
d$=mid$(h$,&loop,1)
a&=ord(d$)-48
case a&>9:a&=a&-7
dn!=16*dn!+a&
endwhile
return dn!
endproc
proc intf :parameters x!
var s!=(x!>0)-(x!<0)
x!=abs(x!)
x!=x!-frac(x!)
return s!*x!
endproc
proc frac :parameters x!
var s!=(x!>0)-(x!<0)
x!=abs(x!)
x!=x!-round(x!,0)
case x!<0:x!=1+x!
return s!*x!
endproc
|
|
|
| XProfan 11Computer: Gerät, daß es in Mikrosekunden erlaubt, 50.000 Fehler zu machen, zB 'daß' statt 'das'... | 15.05.2021 ▲ |
|
|
|