mirror of
https://github.com/pocketpy/pocketpy
synced 2026-06-22 08:27:11 +08:00
fix cases
This commit is contained in:
parent
6d2c0d0881
commit
539f780003
@ -54,9 +54,9 @@ void c11_sbuf__write_f64(c11_sbuf* self, double val, int precision) {
|
|||||||
char b[32];
|
char b[32];
|
||||||
int size;
|
int size;
|
||||||
if(precision < 0) {
|
if(precision < 0) {
|
||||||
size = snprintf(b, sizeof(b), "%.*g", 15, val);
|
for(int g = 15; g <= 17; g++) {
|
||||||
if(strtod(b, NULL) != val) {
|
size = snprintf(b, sizeof(b), "%.*g", g, val);
|
||||||
size = snprintf(b, sizeof(b), "%.*g", 17, val);
|
if(strtod(b, NULL) == val) break;
|
||||||
}
|
}
|
||||||
c11_sbuf__write_cstr(self, b);
|
c11_sbuf__write_cstr(self, b);
|
||||||
bool all_is_digit = true;
|
bool all_is_digit = true;
|
||||||
|
|||||||
@ -65,6 +65,7 @@ assert f'{a:010.2f}' == '0000010.00'
|
|||||||
assert f'{a:.2f}' == '10.00'
|
assert f'{a:.2f}' == '10.00'
|
||||||
assert f'{a:.5f}' == '10.00000'
|
assert f'{a:.5f}' == '10.00000'
|
||||||
assert f'{2.5:.0f}' == '2'
|
assert f'{2.5:.0f}' == '2'
|
||||||
|
assert '{:.0f}'.format(2.5) == '2'
|
||||||
|
|
||||||
b = '123'
|
b = '123'
|
||||||
assert f'{b:10}' == '123 '
|
assert f'{b:10}' == '123 '
|
||||||
@ -141,3 +142,9 @@ assert f'{A():10}' == 'A '
|
|||||||
|
|
||||||
a = ['1', '2', '3']
|
a = ['1', '2', '3']
|
||||||
assert f'a = {'\n'.join(a)}' == 'a = 1\n2\n3'
|
assert f'a = {'\n'.join(a)}' == 'a = 1\n2\n3'
|
||||||
|
|
||||||
|
assert str(0.1+0.2) == '0.30000000000000004'
|
||||||
|
assert str(1/2) == '0.5'
|
||||||
|
assert str(1/3) == '0.3333333333333333'
|
||||||
|
assert str(1/4) == '0.25'
|
||||||
|
assert str(1/7) == '0.14285714285714285'
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user