pstr$(1e30) が "1e29" になるような気がします。 10行目で z=29 になります。