Всем привет.
Грубо говоря только начал изучать тестирование и дали задание читать книгу "Тестирование программного обеспечения" С.Куликов, без разъяснений пока что. И в самом начале книги есть задача:
"Задание 1.1.a: представьте, что ваша программа по трём введённым целым числам определяет, может ли существовать треугольник с такими длинами сторон. Допустим, что ваша программа выполняется в некоей изолированной идеальной среде, и вам все-го-то осталось проверить корректность её работы на трёх 8-байтовых знаковых целых числах. Вы используете автоматизацию, и компьютер может провести 100 миллионов проверок в секунду. Сколько займёт проверка всех вариантов?"
Ответ: около 2e+42 лет, т. е. примерно в 1.66e+32 раза больше, чем текущий возраст Вселенной.
Решение: (2 в степени 64 * 2 в степени 64 * 2 в степени 64) / (100’000’000 * 31536000примерно секунд в году) = 1.9904559029003934436313386045179e+42 лет.
Я может чтото не понимаю, но почему 2 в степени 64. Ну 64 это бит, но откуда два )
Объясните пожалуйста. Заранее спасибо.
Задача про существование треугольника — почему 2 в степени 64?
#1
Отправлено 15 февраля 2018 - 15:32
#2
Отправлено 15 февраля 2018 - 15:47
Бит может быть либо 1 либо 0. Т.е. у нас два варианта. И 64 позиции на которых эти варианты возможны. Т.е. вариантов в одном из трёх чисел у нас 2 в степени 64
#3
Отправлено 15 февраля 2018 - 20:41
Говорят, иногда, бит бывает в трех состояниях. Я не видел этого, но говорят. Так что может и 3 в 64 степени быть.
PS. Это для олдскульных инженеров.
А так Вы,
wisegrey, абсолютно правы.--
Сергей Мартыненко
Блог 255 ступеней (байки для оруженосца)
facebook (Дети диаграммы Ганта)
ВебПосиделки клуба имени Френсиса Бэкона
#4
Отправлено 15 февраля 2018 - 20:45
Теорвер для тестировщика обязательная дисциплина. Ну, если хочет подняться хотя бы на 4 уровень мага.
--
Сергей Мартыненко
Блог 255 ступеней (байки для оруженосца)
facebook (Дети диаграммы Ганта)
ВебПосиделки клуба имени Френсиса Бэкона
#5
Отправлено 16 февраля 2018 - 08:52
А тем, кто забывает про компьютеры с троичной системой счисления, скоро квантовые компьютеры кубитом по голове настучат.
#6
Отправлено 16 февраля 2018 - 09:11
А, да. Еще такая шняга. Байт это не обязательно 8 бит. Может быть и 7, и 6, и черт знает сколько еще значений. Про все даже не знаю. Но это так. Скорее история.
--
Сергей Мартыненко
Блог 255 ступеней (байки для оруженосца)
facebook (Дети диаграммы Ганта)
ВебПосиделки клуба имени Френсиса Бэкона
#7
Отправлено 16 февраля 2018 - 12:37
А ведь придем к тому, бит в байте 9, но один служит для контроля четности. И смысловой нагрузки не несет))
#8
Отправлено 16 февраля 2018 - 13:47
Коллеги, не пугайте людей))
А ведь придем к тому, бит в байте 9, но один служит для контроля четности. И смысловой нагрузки не несет))
Не пугайтесь. Это для смены аспекта мышления.
Нил: Чёрные червы, красные пики, но это же обман?
Рэй: Аа! Опыт приучил вас думать, что все червы красные, а пики чёрные, их формы схожи и мозгу проще интерпретировать их, исходя из прошлого опыта, нежели из идеи, что они могут отличаться. Мы видим то, что ожидаем увидеть, а необязательно правду. Дети, не игравшие в карты, легко проходят этот тест. Невольно задумаешься, что ещё мы можем увидеть услышать, ощутить, потому что приучены к другому. Зато, если повторить тест, вы справитесь, зная, что бывают чёрные черви и красные пики, вы можете их различить. Наш мозг — как система национальных автострад. Проще ехать от одного хорошо известного места до другого, но вот те, что между ними — как бы в стороне. Они существуют, но большинство просто пролетает мимо.
Нил: Хороший фокус. Но игр с чёрными червами и красными пиками нет.
Рэй: А откуда ты знаешь?
Вы тестировщик. Мы думаем по другому.
Сообщение отредактировал SALar: 16 февраля 2018 - 14:18
--
Сергей Мартыненко
Блог 255 ступеней (байки для оруженосца)
facebook (Дети диаграммы Ганта)
ВебПосиделки клуба имени Френсиса Бэкона
#9
Отправлено 02 марта 2019 - 07:21
Я в этом задании больше зависла над тем, что целое знаковое число, а значит там уже каждый байт 27 (один байт для знака резервируется)... Хотя мозгом понимаю, что треугольника с отрицательными сторонами как бы не бывает, но написано же "знаковое". Отрицательные числа отбросила, считала только положительные. И естественно ответ не тот получился.
Но до сих пор думаю, зачем тогда писать про знаковое число, а потом все равно брать 264... Подскажите пожалуйста, где я не в ту сторону мыслями пошла? Когда переводила 1 байт в 8 байтовое целое число, там же не в каждом байте надо резервировать 1 бит для знака? Или вообще надо выкинуть эту мысль о знаковом числе?
#10
Отправлено 23 октября 2019 - 13:01
Тоже начал читать книгу, может чего не понимаю.
(2 в степени 64 * 2 в степени 64 * 2 в степени 64) - это будет число всех вариантов проверок
их делим на 100 миллионов, и получаем количество секунд необходимых для всей проверки
Почему, что бы посчитать количество лет, мы множим а не делим на количество секунд в году
допустим у нас для выполнения проверки нужно 31536000 секунд - делим на количество секунд в году и получаем примерно один год
/ (100’000’000 * 31536000примерно секунд в году) = 1.9904559029003934436313386045179e+42 лет.
#11
Отправлено 10 декабря 2020 - 13:38
Я считал так 2^(7+8+8) * 2^(7+8+8) * 2^(7+8+8) вариантов. Первая степень 7, потому что отрицательные мы отбрасываем (а что с 0, кстати?), т.е. первый бит трёхбайтового числа уходит на знак. И это число, деленное на 10^8 и будет ответом (в секундах) на задачу. Т.е. 2^(23+23+23) / 10^8 = 5 902 958 103 587,05651712 секунд. Гугл мне подсказал, что это 187 181 лет, 6 месяцев, 3 недели, 5 суток, 20 часов, 19 минут и 30 секунд примерно...
Почему вы берёте 2^64, ведь отрицательные значения надо отбросить?
Количество пользователей, читающих эту тему: 0
0 пользователей, 0 гостей, 0 анонимных