13 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
			
		
		
	
	
			13 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
| ---
 | ||
| title: What Is a Function
 | ||
| localeTitle: Что такое функция
 | ||
| ---
 | ||
| ## Что такое функция
 | ||
| 
 | ||
| Функция математически определяется как отображение одного набора чисел в другое. Например, `f(x) = x*2.` Любой заданный вход из некоторого набора (называемый доменом) всегда дает один конкретный вывод из диапазона. В функции удвоения входы 1,3 и 5 отображаются в числах 2,6 и 10 в диапазоне, что также является совокупностью всех действительных чисел.
 | ||
| 
 | ||
| Напротив, «функция» в программировании (более точно называемая методом или подпрограммой на некоторых языках) - это метод, который принимает одно или несколько значений и выводит один или несколько выходов. Как правило, нет гарантии, что какое-то внутреннее состояние (например, глобальная переменная) может измениться таким образом, что f (2) может быть 5 за один раз или 10 при повторном запуске. В большинстве разрешенных языков, даже ожидаемых в некоторых случаях, но некоторые языки, использующие _функциональное программирование,_ математически определяют функции как функции, поскольку нет переменных состояния, которые могут меняться и иметь несогласованности, тем самым давая более «доказуемо правильный» код.
 | ||
| 
 | ||
| #### Дополнительная информация:
 | ||
| 
 | ||
| Функциональные языки: [Haskell](http://learnyouahaskell.com/chapters) , [Clojure](https://clojure.org/) |