Re[3]: # как манагеров достали те, кого достали манагеры
От: Vzhyk  
Дата: 27.12.10 14:21
Оценка:
26.12.2010 9:08, Sap78 пишет:

> if(foo(myDoubleVariable))

> {
> //значение myDoubleVariable столь велико, что прибавление 1 тонет в округлении
> //факт, конечно, забавный, но что с этим делать в production code — непонятно.
> }
Ну как же что? Баги.
Posted via RSDN NNTP Server 2.1 beta
Re[6]: # как манагеров достали те, кого достали манагеры
От: Vzhyk  
Дата: 27.12.10 14:24
Оценка:
27.12.2010 13:52, Mystic пишет:

> Например, в MATLAB по умолчанию используется один тип float, в том числе

> и для индексации матриц. Соответственно, если размер массива превышает
> это значение, то нам нужно хотя бы предупреждение вывести, например...
Ты бы сначала справку матлаба почитал...
Posted via RSDN NNTP Server 2.1 beta
Re[5]: # как манагеров достали те, кого достали манагеры
От: Vzhyk  
Дата: 27.12.10 14:28
Оценка: 18 (2) +2
27.12.2010 8:13, Cyberax пишет:

> 3) Вопрос помогает найти тех, кто способен решать проблемы, которые

> ВНЕЗАПНО возникают на ровном месте.
4) А так же тех, которые будут их вам ВНЕЗАПНО создавать на ровном месте.
Posted via RSDN NNTP Server 2.1 beta
Re[7]: # как манагеров достали те, кого достали манагеры
От: Pzz Россия https://github.com/alexpevzner
Дата: 27.12.10 14:31
Оценка:
Здравствуйте, Vzhyk, Вы писали:

>> Мее кажется, такого рода тесты очень хорошо отличают людей типа "я 20

>> лет уже этим гаечным ключом гайки кручу, и ничего подобного мне никогда
>> знать было не надо" от людей, которых любопытство заставляет заглядывать
>> за пределы своего гаечного ключа.
V>А там всего-лишь обычный таракан.

Да нет же, там целый мир, а таракан у смотрящего в голове
Re[6]: # как манагеров достали те, кого достали манагеры
От: dilmah США  
Дата: 27.12.10 14:39
Оценка:
D>>А это выражение компилятор имеет право вычислять чисто во float. Я так полагаю.

M>Я тоже думал что должно в float , но селяви. Разбираться в тонкости нет желания.


ты пишешь "я тоже думал что должно быть в float". Слово "тоже" употреблено некорректно, потому что оно подразумевает, что я тоже думаю, что ДОЛЖНО быть в float. Но я же ясно написал, что "имеет право" == МОЖЕТ, а не должен. Скажем, компилятор имеет право здесь поставить SSE команды оперирующие 32-битными флоатами.
В то же время, часто промежуточные вычисления выполняются с 80-бит, значит DBL_EPSILON не достаточно.
Re[6]: # как манагеров достали те, кого достали манагеры
От: landerhigh Пират  
Дата: 27.12.10 14:41
Оценка: +3
Здравствуйте, мыщъх, Вы писали:

М>задача как задача. все же лучше, чем сдвинуть гору фудзи кстати, гугл большой. намного больше чем слон. единого стандарта набора спецов там нет. HR'ы обращаются к программерам, чтобы те составили им задачку которая не встречалась ранее и которая бы проверяла базовые знания. кстати, работа с вещественными это и есть та база без которой никуда. как тут уже справедливо заметили, что банальный цикл рискует стать бесконечным только потому что на каком-то этапе обломиться с инкрементом.


Задача Г, автор М.

Как ты правильно отметил, большинство разумных людей используют целочисленные индексы при итерациях.
Но если вдруг возникнет сферическая необходимость запихнуть вещественное число в for, то подобная бяка должна выявляться вторым юнит-тестом.

Просто некоторые предпочитают всю жизнь обосновывать, почему самолет не взлетит, в то время как те, кто знает, что взлетит, уже давно перешли к решению более насущных задач.
www.blinnov.com
Re[7]: # как манагеров достали те, кого достали манагеры
От: minorlogic Украина  
Дата: 27.12.10 14:43
Оценка:
Здравствуйте, dilmah, Вы писали:

D>>>А это выражение компилятор имеет право вычислять чисто во float. Я так полагаю.


M>>Я тоже думал что должно в float , но селяви. Разбираться в тонкости нет желания.


D>ты пишешь "я тоже думал что должно быть в float". Слово "тоже" употреблено некорректно, потому что оно подразумевает, что я тоже думаю, что ДОЛЖНО быть в float. Но я же ясно написал, что "имеет право" == МОЖЕТ, а не должен. Скажем, компилятор имеет право здесь поставить SSE команды оперирующие 32-битными флоатами.

D>В то же время, часто промежуточные вычисления выполняются с 80-бит, значит DBL_EPSILON не достаточно.

И вот имеет ли право компилятор использовать 80 бит точность для сравнения , не уверен. Буду благодарен если ткнешь в стандарт
Ищу работу, 3D, SLAM, computer graphics/vision.
Re[7]: # как манагеров достали те, кого достали манагеры
От: Олег К.  
Дата: 27.12.10 15:03
Оценка:
ОК>>>>Советую учить Си по Кернигану и Ритчи а непонятно по кому.
М>>>но до сих пор работает: foo(a,b){return a+b;}
ОК>>Кстати, как это будет работать если при вызове передашь double-ы, например? Или структуры?
Pzz>Если аргументы не описаны, подразумевается int, а не полиморфизм
Если параметры не описаны или функция вообще не объявлена, отключается type and parameter checking при вызове. Программист может передать в функцию все что угодно и компилятор не будет делать никаких проверок. Вызываемая функция, разумеется, будет считать что ей действительно были переданы int-ы. Именно поэтому ANSI C ввел C++-style function declarations and definitions.
Re[7]: # как манагеров достали те, кого достали манагеры
От: Олег К.  
Дата: 27.12.10 15:07
Оценка:
ОК>>>>Советую учить Си по Кернигану и Ритчи а непонятно по кому.
М>>>но до сих пор работает: foo(a,b){return a+b;}
ОК>>Кстати, как это будет работать если при вызове передашь double-ы, например? Или структуры?
М>какие структуры? это работает как int foo(int a, int b){return a+b;} ну и как это будет работать если при вызове передать структуры? это int по умолчанию, а вовсе не #define foo(a,b) ((a)+(b))

Здесь
Автор: Олег К.
Дата: 27.12.10
Re[7]: # как манагеров достали те, кого достали манагеры
От: Олег К.  
Дата: 27.12.10 15:13
Оценка:
Pzz>Мне кажется, во вменяемых компаниях, типа гугля, никто с секундомером сидеть не будет.
Ты действительно думаешь что Гугл вменяемая компания?

Они поработали на имя. Теперь имя работает на них.
Re[8]: # как манагеров достали те, кого достали манагеры
От: dilmah США  
Дата: 27.12.10 15:15
Оценка:
M>И вот имеет ли право компилятор использовать 80 бит точность для сравнения , не уверен. Буду благодарен если ткнешь в стандарт

Я применю простую логику. Итак, мы имеем float a;
Утверждение первое: тип (a+1) это float, a не double. Здесь нет никаких причин для промоушена в дабл.

Тест на практике:

#include <stdio.h>

int main() {
  float f = 0.f;
  double d = 0.;
  printf("%d %d %d %d\n", sizeof(f), sizeof(f+1), sizeof(f+1.), sizeof(d));
  return 0;
}


$ gcc fltdbl.c

$ ./a.exe
4 4 8 8


Значит, либо достаточно FLT_EPSILON. Но его конечно не достаточно. Но в таком случае нет никаких причин говорить что достаточно DBL_EPSILON, потому что double здесь никак не фигурирует, компилятор имеет право проводить промежуточные вычисления в любом расширенном типе какой захочет. Нет никаких оснований выделить 64-битный тип, он в данном случае ничем не выделяется.
Re[8]: # как манагеров достали те, кого достали манагеры
От: Pzz Россия https://github.com/alexpevzner
Дата: 27.12.10 15:15
Оценка:
Здравствуйте, Олег К., Вы писали:

Pzz>>Мне кажется, во вменяемых компаниях, типа гугля, никто с секундомером сидеть не будет.

ОК>Ты действительно думаешь что Гугл вменяемая компания?

Ну, относительно вменяемая. У меня там знакомые кое-какие работают.
Re[8]: # как манагеров достали те, кого достали манагеры
От: andrey.desman  
Дата: 27.12.10 15:18
Оценка:
Здравствуйте, minorlogic, Вы писали:

M>И вот имеет ли право компилятор использовать 80 бит точность для сравнения , не уверен. Буду благодарен если ткнешь в стандарт


Компилятор может и не имеет, а intel x86 fpu все действия производит над 80-битными числами (по крайней мере раньше производил), а потом при сохранении в память округляет до double. Впрочем, это не имеет значения, ведь все равно единица отсечется при сохранении в 64 бита.
Re[6]: # как манагеров достали те, кого достали манагеры
От: Олег К.  
Дата: 27.12.10 15:19
Оценка:
C>>3) Вопрос помогает найти тех, кто способен решать проблемы, которые ВНЕЗАПНО возникают на ровном месте.
E>Мне тоже понравился.
А мне не понравился. В Computer Science навалом фундаментальных вещей которые имеют большее отношение к практике чем данный вопрос.

Поддерживаю MescalitoPeyot. Тема топика тоже дурацкая.
Re[9]: # как манагеров достали те, кого достали манагеры
От: andrey.desman  
Дата: 27.12.10 15:23
Оценка:
Здравствуйте, andrey.desman, Вы писали:

AD>Компилятор может и не имеет, а intel x86 fpu все действия производит над 80-битными числами (по крайней мере раньше производил), а потом при сохранении в память округляет до double. Впрочем, это не имеет значения, ведь все равно единица отсечется при сохранении в 64 бита.


а, ну да. сравнение ведь происходит до сохранения, значит не прокатит (может не прокатить), если только не запретить это компилятору явно
Re[8]: # как манагеров достали те, кого достали манагеры
От: Mystic Украина http://mystic2000.newmail.ru
Дата: 27.12.10 15:26
Оценка:
Здравствуйте, Олег К., Вы писали:

ОК>Ты действительно думаешь что Гугл вменяемая компания?


А что есть вменяемая компания? Ведут прием сотрудников на работу в соответствие с твоими рекомендациями?

ОК>Они поработали на имя. Теперь имя работает на них.


У google вроде всегда так было.
Re[9]: # как манагеров достали те, кого достали манагеры
От: Олег К.  
Дата: 27.12.10 15:33
Оценка:
Pzz>>>Мне кажется, во вменяемых компаниях, типа гугля, никто с секундомером сидеть не будет.
ОК>>Ты действительно думаешь что Гугл вменяемая компания?
Pzz>Ну, относительно вменяемая. У меня там знакомые кое-какие работают.
У меня тоже. И еще пара ходила совсем недавно на интервью.
Re[9]: # как манагеров достали те, кого достали манагеры
От: Олег К.  
Дата: 27.12.10 15:40
Оценка:
ОК>>Ты действительно думаешь что Гугл вменяемая компания?
M>А что есть вменяемая компания? Ведут прием сотрудников на работу в соответствие с твоими рекомендациями?
Есть какой-то предел на котором сойдутся большинство толковых интервьюируемых. Гугл, имхо, перегибает палку. И, потом, имелась в виду сама работа в Гугле. Не все там так шоколодно.

ОК>>Они поработали на имя. Теперь имя работает на них.

M>У google вроде всегда так было.
Отнюдь. Сейчас Гугл уже не тот как лет восемь назад.
Re[10]: # как манагеров достали те, кого достали манагеры
От: Mystic Украина http://mystic2000.newmail.ru
Дата: 27.12.10 15:51
Оценка:
Здравствуйте, Олег К., Вы писали:

ОК>Есть какой-то предел на котором сойдутся большинство толковых интервьюируемых. Гугл, имхо, перегибает палку. И, потом, имелась в виду сама работа в Гугле. Не все там так шоколодно.


Нет единственно правильного варианта. Есть несколько возможных вариантов. И толковые интервьюеры есть в каждом из них.

ОК>>>Они поработали на имя. Теперь имя работает на них.

M>>У google вроде всегда так было.
ОК>Отнюдь. Сейчас Гугл уже не тот как лет восемь назад.
Всегда там были такие задачки, я про это еще восемь лет назад читал.
Re[7]: # как манагеров достали те, кого достали манагеры
От: Cyberax Марс  
Дата: 27.12.10 16:00
Оценка:
Здравствуйте, landerhigh, Вы писали:

L>Задача Г, автор М.

L>Как ты правильно отметил, большинство разумных людей используют целочисленные индексы при итерациях.
L>Но если вдруг возникнет сферическая необходимость запихнуть вещественное число в for, то подобная бяка должна выявляться вторым юнит-тестом.
А ты знаешь, что ВСЕ числа в JS — это double? Или ты хочешь сказать, что HTML — это никому не нужно?
Sapienti sat!
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.