Every theoretical problem asks for an answer or solution. Trying to find a solution to a problem is known as problem solving. That is, a problem is a gap between an actual and desired situation. The time it takes to solve a problem is a way of measuring complexity.[1] Many problems have no discovered solution and are therefore classified as an open problem.See also: List of unsolved problems

From the mid 20th century, the field of theoretical computer science has explored the use of computers to solve problems.