>Info zum Stichwort Quellcode | >diskutieren | >Permalink 
arbol schrieb am 19.8. 2003 um 20:20:51 Uhr über

Quellcode

Konvertierung von dezimalen Zahlen in Zahlen zu Basis b
BASIC
FUNCTION d2n$ (n, b)
nstart = n
z$ = »0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ«
conv$ = »)« + MID$(z$, (b + 1), 1)
WHILE (n > 0)
p = n MOD b
conv$ = MID$(z$, (p + 1), 1) + conv$
REM concate z.p an den Ausgabestring
n = ((n - (n MOD b)) / b)
WEND
conv$ = »(« + conv$
convert$ = conv$
END FUNCTION

REXX
D2N: procedure
arg n,b
/* initialisierung */
z='0123456789ABCDEFGHIJKLMNOPQRSTUVW'
conv = ')'||b
nstart = n
DO WHILE n > 0
p = n // b
conv = substr(z,(p+1),1)||conv
n = n % b
END
conv = '('||conv
return conv

Ein Programm, daß die externe Funktion d2n aufruft
call load 'convert.r'
do forever
pull zahl
pull base
call d2n zahl,base
say zahl'='result
end

Perl
sub d2n
{
local $n = $_[0];
local $b = $_[1];
#initialisierung
$z = »0123456789ABCDEFGHIJKLMNOPQRSTUVW«;
$conv = »)« . substr($z, $b, 1);
$nstart = $n;
while ($n > 0)
{
$p = $n % $b;
$conv = substr($z, $p, 1) . $conv;
$n = (($n - ($n % $b)) / $b);
}
$conv = »(« . $conv;
return $conv;
}

Python
def d2n(n,b):
#initialisierung
z='0123456789ABCDEFGHIJKLMNOPQRSTUVW'
conv = ')' + z[b:b+1]
nstart = n
while n > 0:
p = n % b
conv = z[p:p+1] + conv
n = n / b
conv = '(' + conv
return conv

AWK
function convert (n, b) {
nstart = n
z = »0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ«
conv = »)« substr(z, (b + 1), 1)
while (n > 0) {
p = n % b
conv = substr(z, (p + 1), 1) conv
n = ((n - (n % b)) / b)
}
conv = »(« conv
return conv
}



   User-Bewertung: +1
Die Verwendung von Gross/Kleinschreibung erleichtert das Lesen!

Dein Name:
Deine Assoziationen zu »Quellcode«:
Hier nichts eingeben, sonst wird der Text nicht gespeichert:
Hier das stehen lassen, sonst wird der Text nicht gespeichert:
 Konfiguration | Web-Blaster | Statistik | »Quellcode« | Hilfe | Startseite 
0.0035 (0.0021, 0.0005) sek. –– 722616206