mirror of
https://github.com/pocketpy/pocketpy
synced 2026-06-21 07:57:10 +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];
|
||||
int size;
|
||||
if(precision < 0) {
|
||||
size = snprintf(b, sizeof(b), "%.*g", 15, val);
|
||||
if(strtod(b, NULL) != val) {
|
||||
size = snprintf(b, sizeof(b), "%.*g", 17, val);
|
||||
for(int g = 15; g <= 17; g++) {
|
||||
size = snprintf(b, sizeof(b), "%.*g", g, val);
|
||||
if(strtod(b, NULL) == val) break;
|
||||
}
|
||||
c11_sbuf__write_cstr(self, b);
|
||||
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:.5f}' == '10.00000'
|
||||
assert f'{2.5:.0f}' == '2'
|
||||
assert '{:.0f}'.format(2.5) == '2'
|
||||
|
||||
b = '123'
|
||||
assert f'{b:10}' == '123 '
|
||||
@ -140,4 +141,10 @@ assert f'{A():10}' == 'A '
|
||||
assert f'{A():10}' == 'A '
|
||||
|
||||
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