Formatted numeric output: Difference between revisions

Content added Content deleted
(added ocaml and c++)
m (Update C, python and add ALGOL 68)
Line 23: Line 23:
000037.25
000037.25


=={{header|ALGOL 68}}==
main:(
REAL r=7.125;
printf(($g(-9,3)l$,-r));
printf(($g(-9,3)l$,r));
printf(($g( 9,3)l$,r));
printf(($-dddd.dddl$,-r));
printf(($-dddd.dddl$,r));
printf(($+dddd.dddl$,r));
printf(($ddddd.dddl$,r));
printf(($zzzzd.dddl$,r))
)
Output:
-7.125
7.125
+7.125
-0007.125
0007.125
+0007.125
00007.125
00007.125
=={{header|C}}==
=={{header|C}}==
#include <stdio.h>
void printit(int val)
{
main(){
float r=7.125;
printf ("%08d", val); // Prints 8 digits with leading zeros
printf(" %9.3f\n",-r);
printf(" %9.3f\n",r);
printf(" %-9.3f\n",r);
printf(" %09.3f\n",-r);
printf(" %09.3f\n",r);
printf(" %-09.3f\n",r);
}
}
Output:

-7.125
7.125
7.125
-0007.125
00007.125
7.125
=={{header|C++}}==
=={{header|C++}}==


Line 121: Line 154:


=={{header|Python}}==
=={{header|Python}}==
#tested in Python 2.4.1
#tested in Python 2.5
#!/usr/bin/env python
n = 123
r=7.125
str = "%05d" % n #5 places wide, leading zeros
print n, str
print " %9.3f"%-r
print " %9.3f"%r
#output: 123 00123
print " %-9.3f"%r

print " %09.3f"%-r
print " %09.3f"%r
print " %-09.3f"%r
Output:
-7.125
7.125
7.125
-0007.125
00007.125
7.125
=={{header|Raven}}==
=={{header|Raven}}==
7.125 "%09.3f" print
7.125 "%09.3f" print