# Learning F#

## Project Euler – Problem 68 Solution

Problem Consider the following “magic” 3-gon ring, filled with the numbers 1 to 6, and each line adding to nine. Working clockwise, and starting from the group of three with the numerically lowest external node (4,3,2 in this example), each solution can be described uniquely. For example, the above solution can be described by the …

## Project Euler – Problem 64 Solution

Problem All square roots are periodic when written as continued fractions and can be written in the form: For example, let us consider ?23: If we continue we would get the following expansion: The process can be summarised as follows: It can be seen that the sequence is repeating. For conciseness, we use the notation …

## Project Euler – Problem 80 Solution

Problem It is well known that if the square root of a natural number is not an integer, then it is irrational. The decimal expansion of such square roots is infinite without any repeating pattern at all. The square root of two is 1.41421356237309504880…, and the digital sum of the first one hundred decimal digits …

## Project Euler – Problem 61 Solution

Problem Triangle, square, pentagonal, hexagonal, heptagonal, and octagonal numbers are all figurate (polygonal) numbers and are generated by the following formulae: The ordered set of three 4-digit numbers: 8128, 2882, 8281, has three interesting properties. The set is cyclic, in that the last two digits of each number is the first two digits of the …

## Project Euler – Problem 60 Solution

Problem The primes 3, 7, 109, and 673, are quite remarkable. By taking any two primes and concatenating them in any order the result will always be prime. For example, taking 7 and 109, both 7109 and 1097 are prime. The sum of these four primes, 792, represents the lowest sum for a set of …

## F# – inline functions and member constraints

Generic type parameters were introduced in C# 2.0, and they gave us the ability to write code that works against any type that matches a set of constraints and remove the need to create type-specific overloads, e.g.: A few years passed, and dynamic types was introduced in C# 4, which allows us to bypass compile-time …

## Project Euler – Problem 65 Solution

Problem The square root of 2 can be written as an infinite continued fraction. The infinite continued fraction can be written, ?2 = [1;(2)], (2) indicates that 2 repeats ad infinitum. In a similar way, ?23 = [4;(1,3,1,8)]. It turns out that the sequence of partial values of continued fractions for square roots provide the …

## Project Euler – Problem 71 Solution

Problem Consider the fraction, n/d, where n and d are positive integers. If n < d and HCF(n,d)=1, it is called a reduced proper fraction. If we list the set of reduced proper fractions for d <= 8 in ascending order of size, we get: 1/8, 1/7, 1/6, 1/5, 1/4, 2/7, 1/3, 3/8, 2/5, 3/7, …

## Project Euler – Problem 59 Solution

Problem Each character on a computer is assigned a unique code and the preferred standard is ASCII (American Standard Code for Information Interchange). For example, uppercase A = 65, asterisk (*) = 42, and lowercase k = 107. A modern encryption method is to take a text file, convert the bytes to ASCII, then XOR …

## Project Euler – Problem 79 Solution

Problem A common security method used for online banking is to ask the user for three random characters from a passcode. For example, if the passcode was 531278, they may ask for the 2nd, 3rd, and 5th characters; the expected reply would be: 317. The text file, keylog.txt, contains fifty successful login attempts. Given that …

By continuing to use the site, you agree to the use of cookies. more information

The cookie settings on this website are set to "allow cookies" to give you the best browsing experience possible. If you continue to use this website without changing your cookie settings or you click "Accept" below then you are consenting to this.

Close