
- •Лабораторная работа № 2 Программирование алгоритмов линейной, ветвящейся и циклической структуры
- •Теоретические положения
- •Операторы присваивания и отношения
- •Условный оператор
- •Оператор переключатель
- •Оператор for
- •Оператор while
- •Оператор do…while
- •Варианты заданий
- •1. Задания по теме «Алгоритмы линейной структуры»
- •2. Задания по теме: «Ветвящиеся алгоритмы»
- •3. Задания по теме: "Циклические алгоритмы"
Лабораторная работа № 2 Программирование алгоритмов линейной, ветвящейся и циклической структуры
Цель и задача работы: научиться использовать стандартные функции и арифметические операторы; изучить операторы отношения и присваивания, логические операции, условный оператор и оператор-переключатель; научиться использовать в программах операторы цикла. Написать программы на изученные темы.
Теоретические положения
Алгоритмом линейной структуры называется алгоритм, который состоит из последовательно (один за другим) выполняющихся операторов и функций.
Операторы предназначены для описания действий, которые будут выполнены при реализации алгоритма. В программе операторы отделяются друг от друга символом «;».Точка с запятой не является частью оператора, это разделитель операторов.
Операция присваивания – это операция, которая состоит из идентификатора переменной, символа присваивания «=» и выражения.
Выполнение операции присваивания приводит к вычислению значения, определяемого выражением, и присваивания этого значения переменной, стоящей слева от символа присваивания.
Операндом называется то, над чем производится действие.
Комбинация знаков операций и операндов, результатом которой является отдельное значение, называется выражением. Знаки операций определяют действия, которые должны быть выполнены над операндами. Операнды могут быть представлены выражениями.
Выражение в программировании служат для определения действий, которые в математике обычно описываются формулами. По количеству операндов операции в языке С делятся на унарные, бинарные и тернарные. Унарные операции имеют только один операнд, перед которым располагается символ операции.
Например: -(-9). Результат этого выражения: 9.
Большинство операций являются бинарными и содержат два операнда между которыми ставится знак операции.
Например: 5+7 . Результат этого выражения: 12.
В языке программирования С предусмотрено две категории арифметических операций : мультипликативные (*,/,%) и аддитивные (+,-).
Операции над числами:
Операции над числами сведены в следующую таблицу:
- |
- вычитание |
+ |
- сложение |
/ |
- деление |
* |
- умножение |
% |
- взятие остатка от деления (только над целыми числами ) |
Операции отношения
Операции отношения представлены в следующей таблице:
< |
- меньше |
> |
- больше |
<= |
- меньше или равно |
>= |
- больше или равно |
== |
- равно |
!= |
- не равно |
Приоритет операций
Приоритет операций учитывается как:
Выражения в скобках;
Унарные операции;
Мультипликативные операции;
Аддитивные операции.
Некоторые стандартные функции
Приведем список некоторых стандартных функций языка Си:
#include<math.h> /*Библиотека, в которой описываются математические функции */
Нижеописанные функции требуют подключения в программу этой библиотеки.
Возведение значения х в степень y |
|
double pow(double x, double y); |
/* Возвращает значение типа double (аргумент также должен иметь тип double) */ |
Извлечение квадратного корня из x |
|
double sqrt(double x); |
/* Возвращает значение типа double (аргумент также должен иметь тип double) */ |
Вычисление тригонометрических функций |
|
double sin(double x); double cos(double x); double tan(double x); |
/* Возвращают значение типа double (аргумент также должен иметь тип double) */ |
Вычисление обратных тригонометрических функций |
|
double asin(double x); double аcos(double x); double atan(double x);
|
/*Возвращают значение типа double (аргумент также должен иметь тип double) */
|
Вычисление логарифмических функций |
|
double log(double x); |
/* натуральный логарифм(по основанию e) */ |
double log10(double x) |
/* десятичный логарифм(по основанию 10). Возвращают значение типа double (аргумент также должен иметь тип double) */ |
Вычисление экспоненты |
|
double exp(double x); |
/* Вычисляет значение функции ех. Возвращают значение типа double (аргумент также должен иметь тип double) */ |
Вычисление абсолютного значения |
|
#include<stdlib.h> |
/* Библиотека, где описываются функции вычисляющие абсолютное значение аргумента */ |
int abs(int x); |
/* Возвращает значение типа int (аргумент также должен иметь тип int ) */ |
double fabs(double x); |
/* Возвращает значение типа double (аргумент также должен иметь тип double) */ |
long labs(long x); |
/* Возвращает значение типа long(аргумент также должен иметь тип long) */ |