+
Вход

Въведи своя e-mail и парола за вход, ако вече имаш създаден профил в DEV.BG/Jobs

Забравена парола?
+
Създай своя профил в DEV.BG/Jobs

За да потвърдите, че не сте робот, моля отговорете на въпроса, като попълните празното поле:

95+28 =
+
Забравена парола

Въведи своя e-mail и ще ти изпратим твоята парола

Задачите на Коди, част 2

Задача 1: Обръщане на думи в низ

Задача: Напишете функция, която обръща реда на думите в даден низ.

Примерен вход: "Hello world from Python"
Примерен изход: "Python from world Hello"

Решение:

Python

def reverse_words(sentence):

    return ' '.join(sentence.split()[::-1])

# Примерен тест

print(reverse_words("Hello world from Python"))  # "Python from world Hello"

JavaScript
unction reverseWords(sentence) {

    return sentence.split(' ').reverse().join(' ');

}

// Примерен тест

console.log(reverseWords("Hello world from JavaScript")); // "JavaScript from world Hello"

Функцията използва split, за да раздели думите, след което обръща масива с reverse () и го обединява обратно с join(' ').

Java
public class Main {

    public static String reverseWords(String sentence) {

        String[] words = sentence.split(" ");

        StringBuilder reversed = new StringBuilder();

        for (int i = words.length - 1; i >= 0; i--) {

            reversed.append(words[i]);

            if (i != 0) {

                reversed.append(" ");

            }

        }

        return reversed.toString();

    }

    // Примерен тест

    public static void main(String[] args) {

        System.out.println(reverseWords("Hello world from Java")); // "Java from world Hello"

    }

}

Тук split разделя думите на масив от низове, а StringBuilder добавя всяка дума в обратен ред.

Днес те питаме…

Кой е най-важният фактор за теб при избора на нова работа?
Loading ... Loading …
Задача 2: Фибоначи до определен брой числа

Задача: Напишете функция, която връща списък с първите n числа от последователността на Фибоначи.

Примерен вход: 5
Примерен изход: [0, 1, 1, 2, 3]

Решение:

Python

def fibonacci(n):
    fib = [0, 1]
    for i in range(2, n):
        fib.append(fib[-1] + fib[-2])
    return fib[:n]

# Примерен тест
print(fibonacci(5))  # [0, 1, 1, 2, 3]
JavaScript
function fibonacci(n) {
    const fib = [0, 1];
    for (let i = 2; i < n; i++) {
        fib.push(fib[i - 1] + fib[i - 2]);
    }
    return fib.slice(0, n);
}

// Примерен тест
console.log(fibonacci(5)); // [0, 1, 1, 2, 3]

Функцията fibonacci инициализира първите две числа от последователността и с push добавя нови числа до достигане на n. Резултатът се връща като списък с slice(0, n) за точен размер.

Java
import java.util.ArrayList;
import java.util.List;

public class Main {
    public static List<Integer> fibonacci(int n) {
        List<Integer> fib = new ArrayList<>();
        fib.add(0);
        if (n > 1) {
            fib.add(1);
        }
        
        for (int i = 2; i < n; i++) {
            fib.add(fib.get(i - 1) + fib.get(i - 2));
        }
        
        return fib.subList(0, n);
    }

    // Примерен тест
    public static void main(String[] args) {
        System.out.println(fibonacci(5)); // [0, 1, 1, 2, 3]
    }
}

В Java функцията използва ArrayList за съхранение на числата. Първите две числа се добавят, след което цикълът добавя нови числа до достигане на n.

Explore more

Виж
Spring Boot обявите
Събрани на едно място
Right Arrow
Виж
Prometheus обявите
Събрани на едно място
Right Arrow
Виж
Groovy обявите
Събрани на едно място
Right Arrow
Виж
Google Cloud обявите
Събрани на едно място
Right Arrow