Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
мет_С_ч1_раб.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
410 Кб
Скачать
☆

Void main ()

{

// инициализация переменных

// вычисление выражения

cout<<”Result=”<<y;

// операция над результирующей переменной

cout<<”Result operation”<<y;

}

1.4.1 Согласно варианту (таблица 1.1) записать арифметическое выражение, используя библиотеку стандартных математических функций.

1.4.2 Инициализировать все входные и объявить все выходные переменные, используя известные типы данных.

1.4.3 Разместить переменные и выражение в заготовке программы.

1.4.4 Выполнить с результирующей переменной операцию, указанную в варианте (таблица 1.1).

Таблица 1.1 – Варианты заданий

№

варианта

Арифметическое выражение

Входные переменные

Константы (const)

Операция

1

a, b

c

инкремент

2

x, z

a

декремент

3

x, z

a

*= const

4

a, b

c

-=const

5

x, z

a

+=const

6

a, b

x

/=const

7

x, z

a

декремент

8

x, z

b

декремент

9

a, b

x

*= const

10

a, b

x

-=const

11

x, z

a

+=const

12

x, z

b

/=const

13

x, z

b

инкремент

14

x, z

b

декремент

15

x, z

a

*= const

16

a, b

x

-=const

Окончание таблицы 1.1

17

x, z

b

+=const

18

a, b

x

/=const

19

a, b

x

инкремент

20

x, z

a

инкремент

21

x, z

a

*= const

22

x, z

a

-=const

23

a, b

x

+=const

24

a, b

c

/=const

25

a, b

x

инкремент

26

a, b

x

декремент

27

a, b

x

*= const

28

x, z

a

-=const

29

a, b

c

+=const

30

x, z

a

/=const

1.5 Контрольные вопросы

1.5.1 Какие особенности языка следует учитывать при идентификации переменных? Как инициализируется переменная?

1.5.2 Как подключаются необходимые библиотеки? Где они размещаются?

1.5.3 Какие типы комментариев существуют в С++ и в чем их разница?

1.5.4 В чем заключаются особенности функции main()?

1.5.5 Перечислите базовые типы данных. Какие модификаторы могут быть использованы для получения новых типов?

1.5.6 Каковы особенности операции присваивания в С++?

1.5.7 Каковы преимущества использования ключевого слова const вместо директивы #define?

1.5.8 Что представляют собой перечислимые константы и как они объявляются?

1.5.9 Что представляют собой выражения и операции? Какие существуют типы операндов?

1.5.10 С какой целью выполняется преобразование типов и каких правил следует придерживаться при этом?

2 Лабораторная работа №2. Программирование алгоритмов линейной и разветвляющейся структуры

Цель работы – ознакомиться с особенностями использования операторов ввода-вывода данных и операторов передачи управления, а также с программированием алгоритмов линейной и разветвленной структур.

2.1 Линейные алгоритмы и операторы ввода-вывода

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

Редкая программа обходится без операций ввода-вывода. В языке С его авторами были реализованы две новаторские идеи: средства ввода-вывода были отделены от языка и вынесены в отдельную библиотеку stdio (стандартная библиотека ввода-вывода, входит в стандарты С/C++), а также была разработана и реализована концепция процесса ввода/вывода, независимого от устройств. Таким образом, С++ имеет большой набор функций, осуществляющих ввод-вывод данных различных типов.

Для реализации форматного ввода-вывода часто используются две функции, подключаемые с помощью заголовочного файла #include <stdio.h>: printf и scanf. Использование этих функций С++ унаследовал от своего «прародителя» языка С.

Функцию printf можно использовать для вывода любой комбинации символов, целых и вещественных чисел, строк, беззнаковых целых, длинных целых и беззнаковых длинных целых. Она описывается следующим образом:

printf (“управляющая_строка”, список_аргументов);

Список аргументов – это последовательность констант, переменных или выражений, значения которых выводятся на экран в соответствии с форматом управляющей строки, которая определяет количество, тип аргументов и обычно содержит следующие объекты:

- обычные символы, выводимые на экран без изменений;

- спецификации преобразования, каждая из которых вызывает вывод на экран значения очередного аргумента из последующего списка аргументов;

- управляющие символьные константы (список наиболее используемых констант приводится в таблице A1).

Спецификация преобразования начинается с символа % и заканчивается символом преобразования (таблица A6), между которыми могут записываться:

- знак «минус», указывающий на то, что выводимый текст выравнивается по левому краю, по умолчанию выравнивание происходит по правому краю;

- строка цифр, задающая минимальный размер поля вывода;

- точка, являющаяся разделителем;

- строка цифр, задающая точность вывода;

- символ l, указывающий, что соответствующий аргумент имеет тип long.

Например,

printf ("\nВозраст Эрика - %d. Его доход $%.2f", age, income);

Предполагается, что целой переменной age (возраст) и вещественной переменной income (доход) присвоены какие-то значения. Последовательность символов \n переводит курсор на новую строку, поэтому последовательность символов «Возраст Эрика» будет выведена с начала новой строки. Символы %d являются символами преобразования формата (спецификацией) для переменной age. Затем следует литерная строка «Его доход $» и символы %.2f - спецификация для значения переменной income, а также указание формата для вывода только двух цифр после десятичной точки.

Функция ввода данных scanf описывается аналогично функции printf:

scanf (“управляющая_строка”, список_аргументов);

Аргументы функции scanf должны быть указателями на соответствующие значения (более подробно указатели будут рассмотрены позже), для чего перед именем переменной записывается символ &. Как и в функции printf, управляющая строка содержит спецификации преобразования и используется для установления количества и типов аргументов. В ней допустимо использование пробелов, символов табуляции и перехода на новую строку, которые игнорируются при вводе. В управляющей строке спецификации преобразования должны быть отделены теми же разделителями, что и при вводе с клавиатуры. Например, scanf (“%d %f %c”, &i, &a, &ch);

Пример 2.1 - Составить программу вычисления объема V и площади поверхности полого шара S по заданным внешнему R и внутреннему r радиусам, если известно, что S = 4 (R2-r2), V = 4/3 (R3-r3).

#include <stdio.h> //подключение заголовочных файлов

#include <math.h>

#define Pi 3.1415926 //определение символической константы Pi