Перейти к содержанию
Авторизация  
Гость

Сколько будет?

Рекомендуемые сообщения

Гость

Л.Ашкинази

 

 

Сколько будет?

 

Я - программист.

Приходит как-то ко мне клиент, написал, говорит, программку, хотелось

бы посчитать. Беру. Программа небольшая. Что, спрашиваю,- она должна

выдавать? Да немного, говорит, одно число. Смотрю в программку - каменный

век. Эпоха каменного рубила. Учились, спрашиваю, сами? Опустил глаза

клиент и говорит - по книжкам.

Засадил я этот бред на следующий день в машину, она помигала с минуту

и напечатала 0.40000023E01. В переводе на русский язык - это 4,0000023.

Странное, однако, число. Не ошибка ли счета набежала? Все ж машина,

смотрю, шестьдесят девять с хвостиком секунд трудилась, а она, между

прочим, у нас не на счетах косточки кидает. Семьдесят секунд времени

процессора - это почти сто миллионов операций. Посчитал с двойной

точностью. Выдала 0.40000022E01. Ну что же, вполне разумное уточнение.

Значит не ошибка вычисления.

Забавным мне это показалось, стал я в программе разбираться. Понятно

ведь, что у неизвестно какой задачи ответ может быть любой. Но если он от

целого числа на две миллионные отличается, то возникает естественное

подозрение, сто ответ и должен быть целым. А отличие - какая-то

погрешность.

В программе я, конечно, разобрался, особых хитростей в ней не нашел.

Двойные ряды товарищ суммировал, и чего там только не было - и

гиперболические функции и бесселевы. Подозрительным мне все это

показалось. Позвонил знакомому математику. Тот посмотрел в книжки и

говорит - нету твоих рядов в книжках, подожди часок, я их сам пообдумаю.

Через два часа звонит - ряды твои, говорит, можешь забирать. Но я уговорил

его приехать. Посмотрел он распечатки и сразу стал серьезным. До утра мы с

ним просидели. Все верно, а двадцать две десятимиллионные все же

возникают. В шесть утра он кофе допил, встал и говорит - домой поеду, мне

к десяти в институт надо. А это ошибки вычислений набегают, можешь быть

уверен. И уехал.

Через день ко мне заказчик зашел, ответ я ему сообщил. Он спасибо

сказал и отчалил. Больше я его не видел.

Задачки свои можете ко мне смело нести, я программист не из

последних. А ту программу я еще не раз пускал. И на машинах с большой

разрядной сеткой, и с двойной точностью, и ошибки в ней искал, и другим

показывал, программистам и математикам. Ответ уточнил - 4,00000223. Это уж

железно.

А вы думали - если двойку на двойку умножить, сколько будет?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
Авторизация  

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×