| 
	| 
	
	| 
		
	| 
			
			 
			
				21.07.2012, 17:21
			
			
			
		 |  
	| 
		
			|  | Профессор       |  | 
					Регистрация: 22.03.2012 
						Сообщений: 3,744
					 
		
 |  |  
	| devote, насколько я знаю, понятие чётности относится только к целым числам, не? |  |  
	| 
		
	| 
			
			 
			
				21.07.2012, 17:46
			
			
			
		 |  
	| 
		
			|  | junior       |  | 
					Регистрация: 29.11.2011 
						Сообщений: 3,924
					 
		
 |  |  
	| 
	
 
	| Сообщение от FINoM |  
	| Не очевидно. |  
	
 да не, нормально. Используется двоичное представление числа. Чтобы было очевидным, можешь в Math добавить : )
bes , да
 
Math.isEven = function( num ) {
	return !( num & 1 );
};
Math.isOdd = function( num ) {
	return !!( num & 1 );
};
alert( Math.isEven( 11 ) );
alert( Math.isOdd( 11 ) );
				__________________Чебурашка стал символом олимпийских игр. А чего достиг ты?
 Тишина - самый громкий звук
 			 Последний раз редактировалось nerv_, 21.07.2012 в 18:17.
 |  |  
	| 
		
	| 
			
			 
			
				21.07.2012, 18:01
			
			
			
		 |  
	| 
		
			
			| что-то знаю       |  | 
					Регистрация: 24.05.2009 
						Сообщений: 5,176
					 
		
 |  |  
	| 
	
 
	| Сообщение от bes |  
	| devote, насколько я знаю, понятие чётности относится только к целым числам, не? |  
	
 ну дык поэтому я и юзаю везде оператор &, что бы оперировать тока с целыми |  |  
	| 
		
	| 
			
			 
			
				22.07.2012, 09:40
			
			
			
		 |  
	| 
		
			
			| sinistral     |  | 
					Регистрация: 28.03.2011 
						Сообщений: 5,418
					 
		
 |  |  
	|  |  |  
	| 
		
	| 
			
			 
			
				22.07.2012, 09:46
			
			
			
		 |  
	| 
		
			
			| что-то знаю       |  | 
					Регистрация: 24.05.2009 
						Сообщений: 5,176
					 
		
 |  |  
	| 
	
 
	| Сообщение от melky |  
	| не сдержался |  
	
 да но лишний вызов функции в данном случае ни к чему. |  |  
	| 
		
	| 
			
			 
			
				22.07.2012, 09:53
			
			
			
		 |  
	| 
		
			
			| что-то знаю       |  | 
					Регистрация: 24.05.2009 
						Сообщений: 5,176
					 
		
 |  |  
	| 
	
 
	| Сообщение от melky |  
	| он такой загадочный |  
	
 и я понять не могу что в нем не очевидного то? обычное битовое И, проверяет присутствие указанного бита. В нашем случае присутствие первого бита. И если есть первый бит то число однозначно нечетное. |  |  
	| 
		
	| 
			
			 
			
				22.07.2012, 22:29
			
			
			
		 |  
	| 
		
			
			| Интересующийся       |  | 
					Регистрация: 04.06.2012 
						Сообщений: 17
					 
		
 |  |  
	| 
	
 
	| Сообщение от devote |  
	| и я понять не могу что в нем не очевидного то? |  
	
 имхо, неочевидное выражение 
не знаю как в js, но в других ЯП такую оптимизацию делает компилятор/интерпретатор 
x % 2 == 0  => x & 1 |  |  
	| 
		
	| 
			
			 
			
				22.07.2012, 22:51
			
			
			
		 |  
	| 
		
			
			| что-то знаю       |  | 
					Регистрация: 24.05.2009 
						Сообщений: 5,176
					 
		
 |  |  
	| 
	
 
	| Сообщение от leko |  
	| но в других ЯП такую оптимизацию делает компилятор/интерпретатор |  
	
 это я в курсе, и это не ответ на вопрос: 
	
 
	| Сообщение от devote |  
	| и я понять не могу что в нем не очевидного то? |  
	
 |  |  
	| 
		
	| 
			
			 
			
				22.07.2012, 23:21
			
			
			
		 |  
	| 
		
			
			| sinistral     |  | 
					Регистрация: 28.03.2011 
						Сообщений: 5,418
					 
		
 |  |  
	| 
	
 
	| Сообщение от devote   |  
	| да но лишний вызов функции в данном случае ни к чему. |  
	
 однако, это лучше дублирования кода    
	
 
	| Сообщение от devote   |  
	| и я понять не могу что в нем не очевидного то? обычное битовое И, проверяет присутствие указанного бита. В нашем случае присутствие первого бита. И если есть первый бит то число однозначно нечетное. |  
	
 со школы мы привыкли, что чётное число - число, делящееся на два без остатка, в этом и суть.
 
а альтернативные пути через биты приходят уже со временем. |  |  
	| 
		
	| 
			
			 
			
				22.07.2012, 23:38
			
			
			
		 |  
	| 
		
			
			| что-то знаю       |  | 
					Регистрация: 24.05.2009 
						Сообщений: 5,176
					 
		
 |  |  
	| 
	
 
	| Сообщение от melky |  
	| однако, это лучше дублирования кода |  
	
 спору нет, но не в этом случае... нет смысла вызывать функцию, ради a & 1 |  |  |  |