Школа программиста

Забыли пароль?
[задачи] [курсы] [олимпиады] [регистрация]
Логин:   Пароль:    
Скрыть меню
О школе
Правила
Олимпиады
Фотоальбом
Гостевая
Форум
Архив олимпиад
Архив задач
Состояние системы
Рейтинг
Курсы
Новичкам
Работа в системе
Курсы ККДП
Дистрибутивы
Статьи
Ссылки


 
Вернуться
Тема: Можете написать максимальное значение, которое помещается в типе double на с++, а то я вчера сдал задачку, где макс значение входящего параметра было число 10^100 и используя тип double я успешно ее сдал???
1
  1  Эмилбек Сулайманов [KG_Kyzylkiya], 01 мая 2009 г. 14:50:43
      454545454
  2  Григорьевых Данил Павлович, 26 апреля 2009 г. 9:07:46
      Берут не только тех, кто был на зимних.
У меня 5-ое место на всероссе (раньше не ездил на всеросс по информатике) и мне точно сказали, что я поеду на сборы.
  3  Нигматуллин Нияз, 26 апреля 2009 г. 8:08:47
      По системе решаешь задачи и набираешь баллы)). Но вроде б на эти сборы берут только тех кто был на зимних сборах. Я на сборы наверное не попал, поздно на всерос поехал, только в 10 классе, поэтому они решили не брать меня на зимние сборы, следовательно на летние сборы поехать у меня нет шансов. тем более я только призером стал на всеросе этого года
  4  Асямов Игорь Сергеевич, 25 апреля 2009 г. 22:57:45
      Прикол действительно в том, что прочитать число 10^100 в тип double реально, вывести нет.
  5  Соболев Евгений, 25 апреля 2009 г. 22:53:17
      Вопрос к Ниязу. Не в тему. По какой системе у вас в России проходят сборы на IOI? Кого туда берут и попал ли ты?
  6  Соболев Евгений, 25 апреля 2009 г. 22:39:26
      "А числа в этом типе хранятся неточно" - именно из-за этого в задачах на вычислительную геометрию существует погрешность вычислений и её необходимо учитывать.
  7  Соболев Евгений, 25 апреля 2009 г. 22:36:34
      Коля, это зависит от задачи. Иногда бывают задачи с подвохом, типа в условии N<10^100, а на реальных тестах N<10^12 :) Хотя может у тебя возникал Runtime Error и выводился пустой файл, а может для больших N - правильный ответ как раз и есть пустой файл :)
  8  Соболев Евгений, 25 апреля 2009 г. 22:33:59
      Нияз, я понимаю как храняться числа с плавающей точкой. По поводу дробей с периодом - это все и так понятно:) У меня даже иногда, когда в тексте напишешь double x=1.0 в отладчике значение x будет 0.999999999999 (по моему double хранит только 12 знаков дробной части, но не уверен). Но то что в double 10^100 не помещается - это 100% :) На самом деле такое число считать из файла реально, но потом если выводить, будет выведено не то что нужно, а слово "NaN" (типа переполнение).
  9  Нигматуллин Нияз, 25 апреля 2009 г. 20:54:41
      Евгений, ты неправильно понимаешь как хранится число в типе с плавающей точкой. оно никогда не хранится полностью, ну это было бы невозможно только потому что есть дроби с периодом, т.е. с бесконечной дробной частью. А числа в этом типе хранятся неточно, там хранится только около 17-18 первых цифр этого числа и экспонента. и в 8-байтовом типе можно хранить числа с экспонентой примерно от -300 до 300
  10  Коля, 25 апреля 2009 г. 20:28:43
      Ну а почему же задачка успешно прошла все тесты???
  11  Соболев Евгений, 25 апреля 2009 г. 20:11:32
      10^100 точно не помещается...double - это 8 байт.
1

Чтобы оставить сообщение необходимо зарегистрироваться и авторизоваться!

Красноярский краевой Дворец пионеров, (c)2006 - 2026, ИНН 246305493507, E-mail: admin@acmp.ru