Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.51/288: Рейтинг темы: голосов - 288, средняя оценка - 4.51
190 / 160 / 35
Регистрация: 22.05.2013
Сообщений: 455
Записей в блоге: 1
1

Тестовое задание на Junior C++ dev

26.07.2013, 18:40. Показов 57886. Ответов 65
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Доброго времени суток.
Неделю назад ради интереса отправил свое резюме в одну компанию, куда требуются с++ юниоры. Получил от них тестовое задание. Я ожидал, что они мне откажут (опыта то у меня действительно мизер), но хотелось бы узнать у более опытных людей, какое решение задач "ожидает" компания от соискателя для продолжения с ним отношений.
Далее идет 4 задачи и мой вариант решения каждой из них.

1. Распечатать произвольное число в двоичной системе исчисления.

Описание.
Написать функцию, принимающую на вход произвольное целочисленное значение и возвращающую строку, содержащую его представление в двоичной системе исчисления.

Декларация.
voidNumberAsBinary(
char* _result,// строка с результатом
unsignedint _number// произвольное число
)

Ожидаемый результат.
Например, для числа 13 данная функция должна вернуть строку "1101".

Проверка работы.
Решение должно демонстрировать работу функции на примере 10 случайных чисел в диапазоне 0 до 512.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
#include <iostream>
#include <stdlib.h>
#include <time.h>
using std::cout;
using std::endl;
 
void numberAsBinary(char *_result, unsigned int _number); 
 
int main()
{
    setlocale(LC_ALL, "Russian");
    char *result = new char[11];
    unsigned int number;
    
    srand((unsigned)time(NULL));
    for (int i = 1; i <= 10; i++)
    {
        number = rand() % 513;
        numberAsBinary(result, number);
        cout << "Число " << number << " в двоичной системе счисления равно " << result << endl;
    }
 
    delete [] result;
    system("pause");
    return 0;
}
 
void numberAsBinary(
char *_result,
unsigned int _number
    )
{
    static int i;
    i = 0;
 
    if (_number != 1)
        numberAsBinary(_result, _number / 2);
 
    _result[i] = (_number % 2) + '0';
    i++;
    _result[i] = '\0';
}

2. Сгенерировать неупорядоченный массив целых чисел от 1 до N.

Описание.
Написать функцию, принимающую на вход произвольное целочисленное значение и возвращающую массив, содержащий последовательность чисел от 1 до этого значения, в котором каждое число последовательности находится в заведомо случайной позиции.

Декларация.
void GenerateRandomArray(
int * _result, // возвращаемыймассив
unsignedint _maxValue// максимальное число в последовательности
)

Ожидаемый результат.
Например, 2 последовательных запуска данной функции с параметром 7 могут сгенерировать последовательности вида
{2, 5, 7, 3, 4, 1, 6}
{5, 1, 3, 4, 6, 2, 7}

Проверка работы.
Решение должно демонстрировать работу функции на примере 4 случайных чисел в диапазоне от 5 до 15.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
#include <iostream>
#include <stdlib.h>
#include <time.h>
#include <iomanip>
using std::cout;
using std::endl;
 
void generateRandomArray(int *_result, unsigned int _maxValue);
 
int main()
{
    setlocale(LC_ALL, "Russian");
    unsigned int maxValue;
    
    srand((unsigned)time(NULL));
    for (int i = 1; i <= 4; i++)
    {
        maxValue = 5 + rand() % 11;
        int *result = new int[maxValue];
        generateRandomArray(result, maxValue);
    
        cout << "Неупорядоченные числа от 1 до " 
             << std::setw(2) << maxValue << ": ";
        for (unsigned int i = 0; i < maxValue; i++)
            cout << result[i] << ' ';
        cout << endl;
        delete [] result;
    }
 
    system("pause");
    return 0;
}
 
void generateRandomArray(
int *_result, 
unsigned int _maxValue
    )
{
    int ind1, ind2, tmp;
 
    for (unsigned int i = 0, j = 1; i < _maxValue; i++, j++)
        _result[i] = j;
 
    for (int i = 1; i <= 20; i++)
    {
        ind1 = rand() % _maxValue;
        ind2 = rand() % _maxValue;
        tmp = _result[ind1];
        _result[ind1] = _result[ind2];
        _result[ind2] = tmp;
    }
}

3. Сортировка массива.

Описание.
Написать функцию, принимающую в качестве параметра массив неупорядоченных целых чисел (сгенерированный с помощью функции из задачи 2) и выполняющую его сортировку.

Декларация.
voidSort(
int* _values,// сортируемый массив
unsignedint _count// количество элементов в массиве
)

Ожидаемый результат.
Например, массив вида {2, 5, 7, 3, 4, 1, 6} будет преобразован данной функцией в {1, 2, 3, 4, 5, 6, 7}.

Проверка работы.
Решение должно демонстрировать работу функции на примере результатов, полученных при решении задачи 2 (последовательностей, сгенерированных для 4 случайных чисел в диапазоне от 5 до 15).
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
#include <iostream>
#include <stdlib.h>
#include <time.h>
#include <iomanip>
using std::cout;
using std::endl;
 
void generateRandomArray(int *_result, unsigned int _maxValue);
void Sort(int *_values, unsigned int _count);
 
 
int main()
{
    setlocale(LC_ALL, "Russian");
    unsigned int maxValue;
    
    srand((unsigned)time(NULL));
    for (int i = 1; i <= 4; i++)
    {
        maxValue = 5 + rand() % 11;
        int *result = new int[maxValue];
        generateRandomArray(result, maxValue);
    
        cout << "Неупорядоченные числа от 1 до " 
             << std::setw(2) << maxValue << ": ";
        for (unsigned int i = 0; i < maxValue; i++)
            cout << result[i] << ' ';
        cout << endl;
 
        Sort(result, maxValue - 1);
 
        cout << "Упорядоченные числа от 1 до " 
             << std::setw(2) << maxValue << ":   ";
        for (unsigned int i = 0; i < maxValue; i++)
            cout << result[i] << ' ';
        cout << endl << endl;
 
        delete [] result;
    }
 
    system("pause");
    return 0;
}
 
void generateRandomArray(
int *_result, 
unsigned int _maxValue
    )
{
    int ind1, ind2, tmp;
 
    for (unsigned int i = 0, j = 1; i < _maxValue; i++, j++)
        _result[i] = j;
 
    for (int i = 1; i <= 20; i++)
    {
        ind1 = rand() % _maxValue;
        ind2 = rand() % _maxValue;
        tmp = _result[ind1];
        _result[ind1] = _result[ind2];
        _result[ind2] = tmp;
    }
}
 
void Sort(
int *_values,
unsigned int _count
    )
{
    int i = 0, j = _count; 
    int temp, p;
 
    p = _values[_count >> 1]; 
 
    do
    {
        while (_values[i] < p) i++;
        while (_values[j] > p) j--;
 
        if (i <= j) 
        {
            temp = _values[i];
            _values[i] = _values[j];
            _values[j] = temp;
            i++;
            j--;
        }
 
    } while (i <= j);
 
    if (j > 0) 
        Sort(_values, j);
    if (_count > (unsigned)i)  
        Sort(_values+i, _count-i);
}
4. Определить недостающее число в неупорядоченной последовательности целых чисел.

Описание.
Написать функцию, принимающую в качестве параметра массив неупорядоченных целых чисел(сгенерированный с помощью функции из задачи 2) и определяющую значение последнего элемента в массиве без доступа к нему.

Декларация.
intGetMissingValue(
constint * _values,// неупорядоченный массив целых чисел от 1 до _count
unsignedint _count// количество элементов в массиве
)

Ожидаемый результат.
Например, для последовательности {5, 7, 8,3, 1, 9, 2, 6, 4} данная функция должна вернуть 4.

Проверка работы.
Решение должно демонстрировать работу функций на примере результатов, полученных при решении задачи 2 (последовательностей, сгенерированных для 4 случайных чисел в диапазоне от 5 до 15).
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
#include <iostream>
#include <stdlib.h>
#include <time.h>
#include <iomanip>
using std::cout;
using std::endl;
 
void generateRandomArray(int *_result, unsigned int _maxValue);
void Sort(int *_values, unsigned int _count);
int getMissingValue(const int *_values, unsigned int _count);
 
 
int main()
{
    setlocale(LC_ALL, "Russian");
    unsigned int maxValue;
    
    srand((unsigned)time(NULL));
    for (int i = 1; i <= 4; i++)
    {
        maxValue = 5 + rand() % 11;
        int *result = new int[maxValue];
        generateRandomArray(result, maxValue);
    
        cout << "Неупорядоченные числа от 1 до " 
             << std::setw(2) << maxValue << ": ";
        for (unsigned int i = 0; i < maxValue; i++)
            cout << result[i] << ' ';
 
        cout << endl << "Значение последнего элемента:     " 
             << getMissingValue(result, maxValue) << endl;
 
        Sort(result, maxValue - 1);
 
        cout << "Упорядоченные числа от 1 до " 
             << std::setw(2) << maxValue << ":   ";
        for (unsigned int i = 0; i < maxValue; i++)
            cout << result[i] << ' ';
        cout << endl << endl;
 
        delete [] result;
    }
 
    system("pause");
    return 0;
}
 
void generateRandomArray(
int *_result, 
unsigned int _maxValue
    )
{
    int ind1, ind2, tmp;
 
    for (unsigned int i = 0, j = 1; i < _maxValue; i++, j++)
        _result[i] = j;
 
    for (int i = 1; i <= 20; i++)
    {
        ind1 = rand() % _maxValue;
        ind2 = rand() % _maxValue;
        tmp = _result[ind1];
        _result[ind1] = _result[ind2];
        _result[ind2] = tmp;
    }
}
 
void Sort(
int *_values,
unsigned int _count
    )
{
    int i = 0, j = _count; 
    int temp, p;
 
    p = _values[_count >> 1]; 
 
    do
    {
        while (_values[i] < p) i++;
        while (_values[j] > p) j--;
 
        if (i <= j) 
        {
            temp = _values[i];
            _values[i] = _values[j];
            _values[j] = temp;
            i++;
            j--;
        }
 
    } while (i <= j);
 
    if (j > 0) 
        Sort(_values, j);
    if (_count > (unsigned)i)  
        Sort(_values+i, _count-i);
}
 
int getMissingValue(
const int *_values,
unsigned int _count
    )
{
    unsigned int checkSum = 0, sum = 0;
 
    for (unsigned int i = 0; i < _count - 1; i++)
    {
        checkSum += i + 1;
        sum += _values[i];
    }
 
    return checkSum + _count - sum;
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
26.07.2013, 18:40
Ответы с готовыми решениями:

Тестовое задание надолжность Junior C++ gamedev
Всем доброго времени суток. Месяц назад получил от потенциального работодателя тестовое задание...

Тестовое задание
private class Connect (){ public Device dev1 = new Device(); public Device dev2 = new Device();...

Тестовое задание
Помогите пройти тест. Очень надо :) Введите пропущенный оператор в функцию вставки нового...

Тестовое задание от компании Exness
У меня нет никакого вопроса, но я так и не понял в какую ветку надо написать (все изучил...

65
3257 / 2059 / 351
Регистрация: 24.11.2012
Сообщений: 4,909
26.07.2013, 20:25 21
Author24 — интернет-сервис помощи студентам
Мимино, можем пройтись по битам целого числа и не начинать запись в строку до тех пор, пока не встретим первую единицу.
0
190 / 160 / 35
Регистрация: 22.05.2013
Сообщений: 455
Записей в блоге: 1
26.07.2013, 20:29  [ТС] 22
Цитата Сообщение от 0x10 Посмотреть сообщение
Мимино, можем пройтись по битам целого числа и не начинать запись в строку до тех пор, пока не встретим первую единицу.
Вариант, но почему в данном моменте рекурсия хуже?
0
В астрале
Эксперт С++
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
26.07.2013, 20:33 23
C++
1
2
3
4
void NumberAsBinary(
char* _result,// строка с результатом
unsigned int _number// произвольное число
)
Серьезно, не стоит даже пытаться писать резюме в эту компанию. Параметры функции, начинающиеся с подчеркивания - это коротко говоря очень грустно. Все сказанное чистое ИМХО разумеется.
0
3257 / 2059 / 351
Регистрация: 24.11.2012
Сообщений: 4,909
26.07.2013, 20:34 24
Кастую в тред кого-нибудь умного, кто скажет, что рекурсия всегда хуже, когда возможна итерация)

Добавлено через 47 секунд

Не по теме:

Цитата Сообщение от ForEveR Посмотреть сообщение
Параметры функции, начинающиеся с подчеркивания - это коротко говоря очень грустно
Оставим на совести компании...

0
190 / 160 / 35
Регистрация: 22.05.2013
Сообщений: 455
Записей в блоге: 1
26.07.2013, 20:34  [ТС] 25
Цитата Сообщение от 0x10 Посмотреть сообщение
Ага, почти.
Алгоритм перемешивания массива много раз на форуме расписывали.
Нашел тему Перемешивание массива. Чем плох мой вариант? Я не использовал STL? Да, это большой минус, но... в требованиях к кандидату говорится, что знание STL это только дополнительное преимущество, а не требование.
0
В астрале
Эксперт С++
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
26.07.2013, 20:34 26
0x10, Зависит от требований эффективности, логичности все же. qsort например итеративно писать несколько сложнее, чем рекурсивно. Или обход дерева.
0
190 / 160 / 35
Регистрация: 22.05.2013
Сообщений: 455
Записей в блоге: 1
26.07.2013, 20:45  [ТС] 27
И все же, как по вашему, в чем же у меня такой минус, что даже на собеседование не позвали? Сильно заметно по коду, что я зеленый-зеленый? Или есть какие то недопустимые ошибки в решении задач?
0
3257 / 2059 / 351
Регистрация: 24.11.2012
Сообщений: 4,909
26.07.2013, 21:12 28
Цитата Сообщение от ForEveR Посмотреть сообщение
Зависит от требований эффективности, логичности все же.
Да. Но в общем случае, полагаю, о рекурсии стоит задумываться в последнюю очередь.

Цитата Сообщение от Мимино Посмотреть сообщение
Вариант, но почему в данном моменте рекурсия хуже?
Хотя бы тем, что тут она не нужна) слишком жирно тратиться на вызов функции для такой простой задачи. Плюс, битовые операции в помощь.
Сейчас просто набросал эту функцию - получилось 23 строки, из которых 12 - фигурные скобки и пустые строки. Не думаю, что это слишком громоздко.

Цитата Сообщение от Мимино Посмотреть сообщение
Чем плох мой вариант? Я не использовал STL? Да, это большой минус, но...
Не в stl дело, а в самом алгоритме)
Я допускаю, что возможно несколько реализаций, но лично мне ближе рассматривать такую функцию как предельный случай выборки без повторений, когда размер выборки равен размеру массива.
Ну и два рандома для одной операции - это в принципе не очень хорошо, поскольку числа все-таки он генерирует псевдослучайные.

Добавлено через 7 минут
Мимино, про перемешивание... Это, конечно, крайний и не особо возможный случай, но представьте, что генератор тупит и всегда выдает константу. Тогда по завершению цикла массив вообще не перемешается.

Добавлено через 7 минут
Хотя с последним уже меня заносит - такие случаи вообще не имеет смысла рассматривать.
1
190 / 160 / 35
Регистрация: 22.05.2013
Сообщений: 455
Записей в блоге: 1
26.07.2013, 21:14  [ТС] 29
Цитата Сообщение от 0x10 Посмотреть сообщение
Хотя бы тем, что тут она не нужна) слишком жирно тратиться на вызов функции для такой простой задачи.
Но требований то никаких не ставилось Вот в других компаниях требования четко стоят: сделать рекурсивно или сделать итеративно... или просят реализовать алгоритм определенной сложности... А тут делай как хочешь, а мы потом посмотрим Вот поэтому у меня и возник вопрос: посмотрев на это действительно можно понять, что я не гожусь даже в подмастерье? И если да, то по каким критериям. Критерии мы обсудили, но вопрос в том, достаточно ли их для принятия решения об отказе? У кого опыт в этом деле есть?
0
88 / 83 / 21
Регистрация: 08.08.2012
Сообщений: 737
26.07.2013, 21:15 30
а что стандартную библиотеку нельзя было использовать?
там некоторые задания на 5 строчек кода.
0
190 / 160 / 35
Регистрация: 22.05.2013
Сообщений: 455
Записей в блоге: 1
26.07.2013, 21:19  [ТС] 31
Цитата Сообщение от Хулиган Посмотреть сообщение
там некоторые задания на 5 строчек кода.
прям таки на 5? и условию соответствуют?
0
Эксперт С++
4267 / 2241 / 203
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
26.07.2013, 21:20 32
В первой задаче от вас ожидали работу с битами памяти с красивым алгоритмом, а может и не одним, во второй это модификация сортировки выбором в один цикл, а вы намудрили, конечно, в четвертой банально вычислить
https://www.cyberforum.ru/cgi-bin/latex.cgi?\frac{n(n+1)}{2}-a[0]-...-a[n-2]. Да и программы нечетабельны, конечно, тоже, наверное, бросилось в глаза.
1
190 / 160 / 35
Регистрация: 22.05.2013
Сообщений: 455
Записей в блоге: 1
26.07.2013, 21:22  [ТС] 33
Цитата Сообщение от Thinker Посмотреть сообщение
Да и программы нечетабельны, конечно, тоже, наверное, бросилось в глаза.
Почему нечитабельны?
0
Эксперт С++
4267 / 2241 / 203
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
26.07.2013, 21:25 34
Цитата Сообщение от Мимино Посмотреть сообщение
Почему нечитабельны?
код плохо отформатирован, например
C++
1
2
3
void numberAsBinary(
char *_result,
unsigned int _number
ну что это такое, да и черточки зачем эти
0
190 / 160 / 35
Регистрация: 22.05.2013
Сообщений: 455
Записей в блоге: 1
26.07.2013, 21:26  [ТС] 35
Цитата Сообщение от Thinker Посмотреть сообщение
код плохо отформатирован, например
C++
1
2
3
void numberAsBinary(
char *_result,
unsigned int _number
ну что это такое, да и черточки зачем эти, вы же классы не создаете.
Это требования работодателя, надо вот так оформить функции. Я от этого сам не в восторге
0
Эксперт С++
4267 / 2241 / 203
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
26.07.2013, 21:27 36
Цитата Сообщение от Мимино Посмотреть сообщение
Это требования работодателя, надо вот так оформить функции. Я от этого сам не в восторге

Не по теме:

а, ну тогда это их порядки, значит алгоритмы им не понравились

0
3257 / 2059 / 351
Регистрация: 24.11.2012
Сообщений: 4,909
26.07.2013, 21:28 37
Цитата Сообщение от Мимино Посмотреть сообщение
Это требования работодателя
Мало ли как у них форматирование в письме ползет) Да и за подчеркивания уже был тут им выговор)
0
190 / 160 / 35
Регистрация: 22.05.2013
Сообщений: 455
Записей в блоге: 1
26.07.2013, 21:35  [ТС] 38
Цитата Сообщение от Thinker Посмотреть сообщение
Не по теме:
...значит алгоритмы им не понравились
Я вот поэтому и хочу устроиться куда нить в подмастерье, чтобы руку набить. Самостоятельное изучение и решение тонн задач не заменит живую практику.

Всем спасибо, ошибки учел, буду работать над собой
0
DU
1500 / 1146 / 165
Регистрация: 05.12.2011
Сообщений: 2,279
26.07.2013, 21:50 39
на что я смотрю:
сперва поверхностно. тут на первом плане форматирование кода. в целом аккуратненько. но
int ind1, ind2, tmp; переменные желательно юзать поближе к месту, где они понадобились. и инициализировать.
не экономте на строчках. глазу сложнее выцепить из кода место появления переменной, если они вот так в куче.
while (_values[i] < p) i++; - то же самое. условие цикла и тело в одной строке. неудобно читать, неудобно дебажить.
далее увидел new int *result = new int[maxValue]; тут имеем возможность получить утечку. всегда используйте RAII.
отсутствует проверка входных данных. есть потенциальные обращения по нулевому укзателю, и деление на ноль.
не использование STL считаю минусом.

C++
1
2
3
4
      cout << "Неупорядоченные числа от 1 до " 
             << std::setw(2) << maxValue << ": ";
        for (unsigned int i = 0; i < maxValue; i++)
            cout << result[i] << ' ';
и чуть ниже похожий кусок. - копипаста. можно было оформить в отдельную функцию.

Задания дурацкие, мало что по ним можно понять о кандидате. отказать могли по разным причинам, не обязательно из-за кода.
0
415 / 411 / 95
Регистрация: 06.10.2011
Сообщений: 832
26.07.2013, 22:11 40
1, 2 и 4 в кратце решил бы так:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
#include <iostream>
#include <vector>
#include <string>
#include <chrono>
#include <random>
#include <algorithm>
#include <functional>
#include <numeric>
#include <cstdint>
 
std::string to_binary(uint64_t x)
{
    std::string str;
    uint64_t mask = 1ull << 64 - 1;
    do {
        str.push_back( (x & mask ? '1' : '0') );
    } while ( mask >>= 1 );
    return str;
}
 
template <class T>
std::vector<T> generateUnique(T highest)
{
    static_assert(std::is_arithmetic<T>::value, "T must be arithmetic");
    std::vector<T> v(highest);
    std::iota(begin(v), end(v), T(1));
    std::shuffle(begin(v), end(v),
        std::mt19937(std::chrono::system_clock::now().time_since_epoch().count()));
    return v;
}
 
template <class T>
T getMissingValue(const std::vector<T> &v)
{
    static_assert(std::is_arithmetic<T>::value, "T must be arithmetic");
    return (1 + v.size()) * v.size() / 2 -
        std::accumulate(begin(v), end(v) - 1, T(0), std::plus<T>());
}
 
int main()
{
    std::cout << to_binary(255) << std::endl;
    auto v = generateUnique<int>(20);
    for (auto x : v)
        std::cout << x << ", ";
    std::endl(std::cout);
    v = {5, 7, 8, 3, 1, 9, 2, 6, 4};
    std::cout << getMissingValue(v);
    return 0;
}
1
26.07.2013, 22:11
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
26.07.2013, 22:11
Помогаю со студенческими работами здесь

ООП. Тестовое задание собеседования.
Это тестовое задание для устройста на работу. Я не совсем понимаю что от меня хотят. Не могли бы вы...

Тестовое задание для трудоустройства
Решил попробовать устроиться в компанию и узнать что вообще и как. Отправил в компанию резюме,...

Небольшое тестовое задание в финской компании.
Привествую всех жителей форума. Сразу отмечу, что решения просить не хочу, а просто хочу показать...

Тестовое задание от работадателя. Хотелось бы услышать критику.
Пробую устроиться программистом. Вот одна из компаний выслала мне тестовое задание следующего...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
40
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru