Постановка задачи: программа должна содержать функцию, которая получает в качестве параметров имя массива и его длину (или нескольких массивов, если этого требуют условия задачи) и выполняет необходимые действия. При решении не разрешается создавать или резервировать в программе дополнительную память, соизмеримую по размерам с объемом исходных данных. То есть, нельзя создавать дополнительные массивы, если это явно не оговорено в задаче.
Функция main
должна заполнить массив числами из файла. Для определения длины массива предусматривается два варианта: 1) по значению первого числа в файле, 2) непосредственным подсчетом количества чисел в файле. Результат также выводится в файл.
Задание: циклически сдвинуть элементы массива на K позиций вправо с затратой O(N) действий (N - длина массива).
вопросПравильный ответ:
- # В чем главный недостаток первоначальной версии языка Pascal?
- # Сколько единиц в двоичной записи числа 13?
- # По логике задачи нам требуется использовать большой массив вещественных чисел, размер которого не превышает миллион элементов. Какие из перечисленных ниже решений являются корректными?
- # Числами Ферма Fk называются числа вида 22k+1. Например, F1=5, F2=17, F3=257, F4=65537. Отметьте, какие из приведенных ниже утверждений являются верными.
- # Пусть расположенный в статической памяти целочисленный массив a описан как static int a[] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 }; Пусть в программе задана функция суммирования массива с прототипом int sum(const int *m, int n); где m - константный указатель на начало массива, n - число его элементов. Укажите, чему будет равно значение переменной s в результате выполнения следующего фрагмента программы: int s = sum(a+4, 4);