Язык программирования С, лабораторная работа 1. Функции.

Инструментарий

Для подготовки текста решений задач следует использовать произвольный текстовый редактор, желательно - с подсветкой синтаксиса (geany, редактор файлового менеджера mc и т.д.).

Для компиляции - компилятор gcc.

Задания

  1. Дано натуральное N. Получить N случайных натуральных значений в диапазоне от 1 до 1000. Для каждого значения ответить на вопросы: Для ответа на каждый вопрос создать функцию, которая возвращает 0 или 1 в зависимости от соответствия исходного числа заданным требованиям. Функции должны манипулировать только локальными данными.
  2. Решить задачи 443, 460 (без использования системных функций перевода) из задачника.
  3. *Решить предыдущие задачи с использованием макроопределений вместо функций.

Для целочисленных переменных испольовать тип int, для вещественных - float.

Для ввода-вывода данных использовать функции scanf, printf.

При необходимости использовать математические функции из библиотек stdlib.h и math.h.

При использовании функций из math.h следует указывать компилятору подключать при сборке программы динамическую библиотеку libm.so, содержащую код математических функций. Это обеспечивает опция -lm в командной строке компилятора. Например: gcc my.c -o my.run -lm скомпилирует программу my.c в исполняемый файл my.run, подключив библиотеку libm.so.

Для поиска нужной функции использовать утилиту man, которая обеспечивает доступ из консоли к системе помощи linux, в том числе - к описаниям системных библиотек и функций на языке С. Например man stdlib.h возвратит описание содержимого библиотеки stdlib, в том числе - заголовки всех функций библиотеки. Найдя требуемую функцию, ее описание можно получить, например, так: man abs, где abs - имя функции.