Фэндом


Главная | Описание языка | FXD | API | Примеры | Инструменты Разработки | Новости | Ресурсы | Форум

Нахождение простых чисел Править

println(primes(100));

function primes(N: Integer): Integer[] {
    var seq = [2];
    for (n in [3..N]) {
        if (isPrime(n, seq)) insert n into seq;
    }
    return seq;
}

function isPrime(n: Integer, primes: Integer[]): Boolean {
    for (prime in primes) {
        if (n mod prime == 0) {
            return false;
            }
        }
    return true;
}

Результат исполнения программы:

 [ 2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97 ]


Перестановки Править

Перестановки на ru.wikipedia.org

function permutation(arr:Integer[]):Void{
    permutation(0, sizeof arr, arr)
}

function permutation(index: Integer, size:Integer, arr:Integer[]):Void{

    if(index == size-1){ print("  "); println(arr); return; }

    permutation(index+1, size, arr);

    for(i in [index+1..size-1]){
        permutation( index+1, size, [ arr[0..index-1], arr[i],arr[index+1..i-1],arr[index],arr[i+1..size-1]]);
    }

}


Использование:

 permutation([1..4]);
 [ 1, 2, 3, 4 ]
 [ 1, 2, 4, 3 ]
 [ 1, 3, 2, 4 ]
 [ 1, 3, 4, 2 ]
 [ 1, 4, 3, 2 ]
 [ 1, 4, 2, 3 ]
 [ 2, 1, 3, 4 ]
 [ 2, 1, 4, 3 ]
 [ 2, 3, 1, 4 ]
 [ 2, 3, 4, 1 ]
 [ 2, 4, 3, 1 ]
 [ 2, 4, 1, 3 ]
 [ 3, 2, 1, 4 ]
 [ 3, 2, 4, 1 ]
 [ 3, 1, 2, 4 ]
 [ 3, 1, 4, 2 ]
 [ 3, 4, 1, 2 ]
 [ 3, 4, 2, 1 ]
 [ 4, 2, 3, 1 ]
 [ 4, 2, 1, 3 ]
 [ 4, 3, 2, 1 ]
 [ 4, 3, 1, 2 ]
 [ 4, 1, 3, 2 ]
 [ 4, 1, 2, 3 ]

Алгоритмы сортировкиПравить

Сортировка Пузырьком Править

Сортировка пузырьком на ru.wikipedia.org

function bubbleSort(seq:Number[]):Number[]{

    var sort = seq;
    var elem:Number;

    for(n in reverse [0..sizeof seq - 2]){
        for(i in [0..n] ){
            if(sort[i+1] < sort[i] ){
                elem = sort[i];
                sort[i] = sort[i+1];
                sort[i+1] = elem;
            }
        }
    }
    
    return sort;
}


Использование:

 println(bubbleSort([3,2,1])); // output: [ 1.0, 2.0, 3.0 ]

Обнаружено использование расширения AdBlock.


Викия — это свободный ресурс, который существует и развивается за счёт рекламы. Для блокирующих рекламу пользователей мы предоставляем модифицированную версию сайта.

Викия не будет доступна для последующих модификаций. Если вы желаете продолжать работать со страницей, то, пожалуйста, отключите расширение для блокировки рекламы.

Также на Фэндоме

Случайная вики