СОДЕРЖАНИЕ
Лабораторная работа № 1. 3
Лабораторная работа № 2. 4
Лабораторная работа № 3. 7
Лабораторная работа № 4. 8
Лабораторная работа № 5. 11
Лабораторная работа № 6. 15
Лабораторная работа № 7. 19
Лабораторная работа № 8. 25
Лабораторная работа № 1.
Цель: получить практические и теоретические навыки программирования на языке С++.
Задание:
Вывод приветствия в консоль (стандартный поток вывода).
Листинг:
Hello.h
#include <iostream>
using namespace std;
void SayHello() {
cout << "Hello World!" << endl;
}
Main.cpp
#include "hello.h"
int main() {
SayHello();
system("pause");
return 0;
}
Результат выполнения:
Лабораторная работа № 2.
Задание 1. Проект «Оценка»
Реализуйте программу, спрашивающую у ученика его отметку по информатике и реагирующую на нее подходящим текстом.
Используйте для проверки значения введенной переменной оператор switch.
Листинг:
#include <iostream>
#include "score.h"
using namespace std;
int main()
{
int score;
score ();
system ("pause");
return 0;
}
#include <iostream>
using namespace std;
void score ()
{
int score;
cout << "Score: ";
cin >> score;
switch (score)
{
case 1: cout << "Poor" << endl;
break;
case 2: cout << "Sarisfactory" << endl;
break;
case 3: cout << "Good" << endl;
break;
case 4: cout << "Very Good" << endl;
break;
case 5: cout << "Excelent" << endl;
break;
default: cout << "Error" << endl;
}
}
Результат выполнения:
Задание 2. Проект «Day Of Week»
Подробно: вводится цифра — порядковый номер дня недели. Необходимо вывести название соответствующего дня недели.
Листинг:
#include "Days.h"
int main()
{
int dow;
cout << "Days=";
dow = read_day_of_week;
print_day_of_week(dow);
}
#include <iostream>
#include <stdexcept>
using namespace std;
void print_day_of_week(int dow)
{
switch (dow)
{
case 1: cout << "Monday" << endl;
break;
case 2: cout << "Tuesday" << endl;
break;
case 3: cout << "Wednesday" << endl;
break;
case 4: cout << "Thursday" << endl;
break;
case 5: cout << "Friday" << endl;
break;
case 6: cout << "Saturday" << endl;
break;
case 7: cout << "Sunday" << endl;
break;
}
}
int read_day_of_week()
{
int day;
cin >> day;
if (day<1 or day > 7) {
throw std::range_error("номер дня должен быть в диапазоне [1, 7]");
}
return day;
}
Результат выполнения:
Лабораторная работа № 3.
Задание 1: создать проект с функцией, вычисляющей квадрат числа.
Задание 2:
Создать функцию для вычисления площади треугольника, заданного тремя сторонами.
Задание 3:
Создать функцию для вычисления площади треугольника, заданного тремя точками.
Листинг:
#include <iostream>
#include <cmath>
using namespace std;
double sqr(double x);
double sqr(double x)
{
x = x * x;
cout << x << endl;
return x;
}
double square(double a, double b, double c);
double square(double a, double b, double c)
{
double s;
double r;
r = (a + b + c) / 2;
s = sqrt(r * (r - a) * (r - b) * (r - c));
cout << s << endl;
return s;
}
double distance(double x1, double y1, double x2, double y2);
double distance(double x1, double y1, double x2, double y2)
{
return sqrt((x2 - x1) * (x2 - x1) + (y2 - y1) * (y2 - y1));
}
double square_up(double xa, double ya, double xb, double yb, double xc, double yc);
double square_up(double xa, double ya, double xb, double yb, double xc, double yc)
{
double s, ab, bc, ac, r;
ab = distance(xa, ya, xb, yb);
bc = distance(xb, yb, xc, yc);
ac = distance(xa, ya, xc, yc);
r = (ab + ac + bc) / 2;
s = sqrt(r * (r - ab) * (r - bc) * (r - ac));
cout << s << endl;
return s;
}
int main()
{
sqr(4);
square(6, 3, 4);
double xa, ya, xb, yb, xc, yc;
cin >> xa >> ya >> xb >> yb >> xc >> yc;
square_up(xa, ya, xb, yb, xc, yc);
}