- •Часть I
- •Работа 1 Знакомство со средой Borland c
- •1. Введение
- •2. Начало работы в среде
- •2.1. Вызов Borland c
- •2.2. Использование меню
- •2.3. Работа с окнами. Использование мыши
- •2.4. Первая программа
- •2.5. Работа с файлами
- •2.6. Основные приемы работы с текстовым редактором
- •2.7. Меню Edit
- •3. В конце работы Вы должны уметь
- •Работа 2 Обзор элементов языка с
- •I. Теоретический раздел работы
- •1.1. Введение
- •1.2. Структура программы на языке Borland c
- •Состав языка
- •1.3.1. Константы и переменные
- •1.3.2. Типы данных в с
- •Ввод и вывод данных
- •II. Экспериментальный раздел работы
- •III. Дополнительный материал
- •IV. Раздел заданий для самостоятельной работы
- •Работа 3 Операции языка Си, оператор присваивания
- •I.Теоретический раздел работы
- •1.1. Знаки операций в Си
- •1.2.Выражения
- •2. Оператор присваивания
- •3. Алгебраические выражения
- •4. Описание пользовательских подпрограмм-функций
- •II. Экспериментальный раздел работы
- •III. Раздел заданий для самостоятельной работы
- •Работа 4 Числовые типы данных
- •I.Теоретический раздел работы
- •1.1. Целые типы данных
- •1.1.1. Операции над целыми типами данных
- •1.1.2. Представление целых чисел в компьютере
- •1.1.3. Некоторые стандартные подпрограммы для работы с целыми числами
- •1.2. Представление вещественных чисел в эвм
- •II.Экспериментальный раздел работы
- •III. Раздел заданий для самостоятельной работы.
- •Работа 5 Операторы отношений и логические операторы
- •I.Теоретический раздел работы
- •1.1. Некоторые сведения о логическом типе данных
- •1.2. Оператор условного перехода if...Else
- •1.3. Условный оператор switch
- •II. Экспериментальный раздел работы
- •Работа 6 Инструкции управления. Операторы Си, реализующие повторения
- •I. Теоретический раздел работы
- •1.1. Оператор цикла с предусловием
- •1.2. Оператор цикла с постусловием
- •1.3. Оператор цикла со счётчиком
- •1.4. Операторы завершения цикла
- •II.Экспериментальный раздел работы
- •Список литературы
II. Экспериментальный раздел работы
Пример 1. Работа с унарными операциями ++ и --.
#include <stdio.h>
void main(void)
{
int x=5, y=60;
x++;
++y;
printf(“x=%d y%d\n”,x,y);
printf(“x=%d y%d\n”,x++,++y);
int d=x--;
printf(“d=%d d %d\n”,d);
int c=--x;
printf(“c=%d c%d\n”,c);
}
Объясните полученные значения переменных c и d. Выясните различие в использовании префиксной и постфиксной форм операций инкремента и декремента.
Пример 2. Многократное использование оператора присваивания.
#include <conio.h>
void main(void)
{
int x, y,z;
cout<<”Введите три целых числа”;
cin>>x>>y>>z;
z=x=y=x*y*z;
cout<<z<<y<<x;
}
Объясните результат работы программы.
Пример 3. Найдите значение выражения, используя лишь арифметические операции y= 3x6 – 6x2 – 7.
#include <iostream.h>
#include <conio.h>
void main(void)
{
float y,x;
cout<<”Введите значение”;
cin>>x;
x*=x;
y=-6*x;
float d=x*=x*=x;
y+=3*d-7;
cout<<"Значение ="<<y<<endl;
getch();
}
Пример 4. Найдите сумму 3 значений введённых с клавиатуры.
#include <conio.h>
void main(void)
{
int x,z;
char y;
cout<<”Введите три значения”;
cin>>x>>y>>z;
cout<<"Результат ="<<x+y+z<<endl;
}
Для эксперимента введите следующие значения (1, “a”, 3), (1, “2”, 3). Объясните полученные результаты.
Пример 5. Найти максимальное из двух значений.
#include <conio.h>
void main(void)
{
int x,y,max;
cout<<”Введите два значения”;
cin>>x>>y;
max=x>y?x:y;
cout<<"Результат ="<<max <<endl;
}
III. Раздел заданий для самостоятельной работы
Все входные и выходные данные в заданиях этой группы являются вещественными величинами (типы данных :float/double).
A.
Дана сторона квадрата a. Найти его периметр P = 4·a.
Дана сторона квадрата a. Найти его площадь S = a2.
Даны стороны прямоугольника a и b. Найти его площадь S = a·b и периметр P = 2·(a + b).
Дан диаметр окружности d. Найти ее длину L = ·d. В качестве значения использовать 3.14.
Дана длина ребра куба a. Найти объем куба V = a3 и площадь его поверхности S = 6·a2.
Даны длины ребер a, b, c прямоугольного параллелепипеда. Найти его объем V = a·b·c и площадь поверхности S = 2·(a·b + b·c + a·c).
Найти длину окружности L и площадь круга S заданного радиуса R: L = 2··R, S = ·R2. В качестве значения использовать 3.14.
Даны два числа a и b. Найти их среднее арифметическое: (a + b)/2.
Даны два неотрицательных числа a и b. Найти их среднее геометрическое, то есть квадратный корень из их произведения: (a·b)1/2.
Даны два ненулевых числа. Найти сумму, разность, произведение и частное их квадратов.
Даны два ненулевых числа. Найти сумму, разность, произведение и частное их модулей.
B.
Даны катеты прямоугольного треугольника a и b. Найти его гипотенузу c и периметр P: c = (a2 + b2)1/2, P = a + b + c.
Даны два круга с общим центром и радиусами R1 и R2 (R1 > R2). Найти площади этих кругов S1 и S2, а также площадь S3 кольца, внешний радиус которого равен R1, а внутренний радиус равен R2: S1 = ·(R1)2, S2 = ·(R2)2, S3 = S1 – S2. В качестве значения использовать 3.14.
Дана длина L окружности. Найти ее радиус R и площадь S круга, ограниченного этой окружностью, учитывая, что L = 2··R, S = ·R2. В качестве значения использовать 3.14.
Дана площадь S круга. Найти его диаметр D и длину L окружности, ограничивающей этот круг, учитывая, что L = 2··R, S = ·R2. В качестве значения использовать 3.14.
Найти расстояние между двумя точками с заданными координатами x1 и x2 на числовой оси: |x2 – x1|.
Даны три точки A, B, C на числовой оси. Найти длины отрезков AC и BC и их сумму.
Даны три точки A, B, C на числовой оси. Точка C расположена между точками A и B. Найти произведение длин отрезков AC и BC.
Даны координаты двух противоположных вершин прямоугольника: (x1, y1), (x2, y2). Стороны прямоугольника параллельны осям координат. Найти периметр и площадь данного прямоугольника.
Найти расстояние между двумя точками с заданными координатами (x1, y1) и (x2, y2) на плоскости. Расстояние вычисляется по формуле ((x2 – x1)2 + (y2 – y1)2)1/2.
Даны координаты трех вершин треугольника: (x1, y1), (x2, y2), (x3, y3). Найти его периметр и площадь, используя формулу для расстояния между двумя точками на плоскости (см. задание Begin20). Для нахождения площади треугольника со сторонами a, b, c использовать формулу Герона: S = (p·(p – a)·(p – b)·(p – c))1/2, где p = (a + b + c)/2 — полупериметр.
Поменять местами содержимое переменных A и B и вывести новые значения A и B.
Даны переменные A, B, C. Изменить их значения, переместив содержимое A в B, B — в C, C — в A, и вывести новые значения переменных A, B, C.
Даны переменные A, B, C. Изменить их значения, переместив содержимое A в C, C — в B, B — в A, и вывести новые значения переменных A, B, C.
Найти значение функции y = 3x6 – 6x2 – 7 при данном значении x.
Найти значение функции y = 4(x–3)6 – 7(x–3)3 + 2 при данном значении x.
Дано число A. Вычислить A8, используя вспомогательную переменную и три операции умножения. Для этого последовательно находить A2, A4, A8. Вывести все найденные степени числа A.
Дано число A. Вычислить A15, используя две вспомогательные переменные и пять операций умножения. Для этого последовательно находить A2, A3, A5, A10, A15. Вывести все найденные степени числа A.
Дано значение угла в градусах (0 < < 360). Определить значение этого же угла в радианах, учитывая, что 180° = радианов. В качестве значения использовать 3.14.
Дано значение угла в радианах (0 < < 2·). Определить значение этого же угла в градусах, учитывая, что 180° = радианов. В качестве значения использовать 3.14.
C.
Дано значение температуры T в градусах Фаренгейта. Определить значение этой же температуры в градусах Цельсия. Температура по Цельсию TC и температура по Фаренгейту TF связаны следующим соотношением: TC = (TF – 32)·5/9.
Дано значение температуры T в градусах Цельсия. Определить значение этой же температуры в градусах Фаренгейта. Температура по Цельсию TC и температура по Фаренгейту TF связаны следующим соотношением: TC = (TF – 32)·5/9.
Известно, что X кг конфет стоит A рублей. Определить, сколько стоит 1 кг и Y кг этих же конфет.
Известно, что X кг шоколадных конфет стоит A рублей, а Y кг ирисок стоит B рублей. Определить, сколько стоит 1 кг шоколадных конфет, 1 кг ирисок, а также во сколько раз шоколадные конфеты дороже ирисок.
Скорость лодки в стоячей воде V км/ч, скорость течения реки U км/ч (U < V). Время движения лодки по озеру T1 ч, а по реке (против течения) — T2 ч. Определить путь S, пройденный лодкой (путь = время · скорость). Учесть, что при движении против течения скорость лодки уменьшается на величину скорости течения.
Скорость первого автомобиля V1 км/ч, второго — V2 км/ч, расстояние между ними S км. Определить расстояние между ними через T часов, если автомобили удаляются друг от друга. Данное расстояние равно сумме начального расстояния и общего пути, проделанного автомобилями; общий путь = время · суммарная скорость.
Скорость первого автомобиля V1 км/ч, второго — V2 км/ч, расстояние между ними S км. Определить расстояние между ними через T часов, если автомобили первоначально движутся навстречу друг другу. Данное расстояние равно модулю разности начального расстояния и общего пути, проделанного автомобилями; общий путь = время · суммарная скорость.
Решить линейное уравнение A·x + B = 0, заданное своими коэффициентами A и B (коэффициент A не равен 0).
Найти корни квадратного уравнения A·x2 + B·x + C = 0, заданного своими коэффициентами A, B, C (коэффициент A не равен 0), если известно, что дискриминант уравнения положителен. Вывести вначале меньший, а затем больший из найденных корней. Корни квадратного уравнения находятся по формуле x1, 2 = (–B ± (D)1/2)/(2·A), где D — дискриминант, равный B2 – 4·A·C.
Найти решение системы линейных уравнений вида
A1·x + B1·y = C1, A2·x + B2·y = C2,
заданной своими коэффициентами A1, B1, C1, A2, B2, C2, если известно, что данная система имеет единственное решение. Воспользоваться формулами x = (C1·B2 – C2·B1)/D, y=(A1·C2 – A2·C1)/D, где D = A1·B2 – A2·B1.