#include <Windows.h>
#include <iostream>
#include <cmath>
constexpr auto pi = 3.141521;
using namespace std;
void task63(int value)
{
cout << "\nзадание № 63";
double Scircle, Ssquare, a, ds;
do
{
cout << "\nвведите площадь круга" << endl;
if (!(cin >> Scircle) || cin.get() != '\n')
{
cin.clear();
cin.ignore(65535, '\n');
cout << "неправильный ввод" << endl;
}
} while (Scircle == value);
do
{
cout << "введите площадь квадрата" << endl;
if (!(cin >> Ssquare) || cin.get() != '\n')
{
cin.clear();
cin.ignore(65535, '\n');
cout << "ошибка ввода" << endl;
}
} while (Ssquare == value);
a = sqrt(Ssquare);
ds = sqrt(4 * Scircle / pi);
if (ds <= a)
cout << "\nкруг поместится в квадрат" << endl;
else if (a * sqrt(2) / 2 <= ds)
cout << "\nквадрат поместится в круге" << endl;
else
{
cout << "\nошибка. отпишитесь создателю" << endl;
}
}
void task74(int value)
{
cout << "\nзадание № 74";
int n, t, s, d, a;
do {
cout << "\nвведите трехзначное число " << endl;
if (!(cin >> n) || cin.get() != '\n')
{
cin.clear();
cin.ignore(65535, '\n');
cout << "неправильный ввод" << endl;
}
} while (n == value);
if (n > 99)
{
t = n / 100;
s = (n / 10) % 10;
d = n % 10;
if ((t + s + d > 9) && (t + s + d < 100))
cout << "сумма цифр двузначное число" << endl;
else
cout << "сумма цифр не двузначное число" << endl;
if ((t * s * d > 99) && (t * s * d < 999))
cout << "произведение цифр трехзначное число" << endl;
else
cout << "произведение цифр не трехзначное число" << endl;
if ((t + s + d) % 5 == 0)
cout << "сумма цифр кратна 5" << endl;
else
{
cout << "сумма цифр не кратна 5" << endl;
}
do {
cout << "введите целочисленное а" << endl;
if (!(cin >> a) || cin.get() != '\n')
{
cin.clear();
cin.ignore(65535, '\n');
cout << "неправильный ввод" << endl;
}
} while (a == value);
if ((t + s + d) % a == 0)
cout << "сумма цифр кратна числу а" << endl;
else
cout << "сумма цифр не кратна числу а" << endl;
}
else
cout << "введено не трехзначное число";
}
void task85(int value)
{
cout << "задание № 85"<<endl;
int a, b, c;
cout << "\nвведите переменные a,b,c" << endl;
do
{
if (!(cin >> a) || cin.get() != '\n')
{
cin.clear();
cin.ignore(65535, '\n');
cout << "неправильный ввод" << endl;
}
} while (a == value);
do
{
if (!(cin >> b) || cin.get() != '\n')
{
cin.clear();
cin.ignore(65535, '\n');
cout << "неправильный ввод" << endl;
}
} while (b == value);
do
{
if (!(cin >> c) || cin.get() != '\n')
{
cin.clear();
cin.ignore(65535, '\n');
cout << "неправильный ввод" << endl;
}
} while (c == value);
if ((a >= 0) && (b >= 0) && (c >= 0))
cout << "отрицательных чисел нет" << endl;
else if (((a < 0) && (b >= 0) && (c >= 0)) || ((b < 0) && (a >= 0) && (c >= 0)) || ((c < 0) && (a >= 0) && (b >= 0)))
cout << "1 отрицательное число" << endl;
else if (((a < 0) && (b < 0) && (c >= 0)) || ((a < 0) && (b >= 0) && (c < 0)) || ((a >= 0) && (b < 0) && (c < 0)))
cout << "2 отрицательных числа" << endl;
else if ((a < 0) && (b < 0) && (c < 0))
cout << "3 отрицательных числа" << endl;
else cout << "ошибка!" << endl;
}
void task96(int value)
{
cout << "задание № 96";
double m, n;
do
{
cout << "введите массу пакета c рисом m \nm:" << endl;
if (!(cin >> m) || cin.get() != '\n')
{
cin.clear();
cin.ignore(65535, '\n');
cout << "неправильный ввод" << endl;
}
} while (m == value);
do
{
cout << "введите массу пакета c рисом n" << endl;
if (!(cin >> n) || cin.get() != '\n')
{
cin.clear();
cin.ignore(65535, '\n');
cout << "неправильный ввод" << endl;
}
} while (n == value);
if (m > n)
cout << "первый пакет тяжелее второго. Его вес " << m << " кг"<<endl;
else
{
if (m < n)
cout << "второй пакет тяжелее первого. Его вес " << n << " кг"<<endl;
else
{
if (m == n)
cout << "масса пакетов равна"<<endl;
else
{
cout << "ошибка"<<endl;
}
}
}
}
void task107(int value)
{
double a, b, d, e, g, h, k, l;
cout << "задание № 107" << endl;
do
{
cout << "введите координаты первой вершины треугольника \nx:" << endl;
if (!(cin >> a) || cin.get() != '\n')
{
cin.clear();
cin.ignore(65535, '\n');
cout << "неправильный ввод" << endl;
}
} while (a == value);
do
{
cout << "y:" << endl;
if (!(cin >> b) || cin.get() != '\n')
{
cin.clear();
cin.ignore(65535, '\n');
cout << "неправильный ввод" << endl;
}
} while (b == value);
cout << "введите координаты второй вершины треугольника" << endl;
do
{
cout << "x:" << endl;
if (!(cin >> d) || cin.get() != '\n')
{
cin.clear();
cin.ignore(65535, '\n');
cout << "неправильный ввод" << endl;
}
} while (d == value);
do
{
cout << "y:" << endl;
if (!(cin >> e) || cin.get() != '\n')
{
cin.clear();
cin.ignore(65535, '\n');
cout << "неправильный ввод" << endl;
}
} while (e == value);
cout << "введите координаты третей вершины треугольника" << endl;
do
{
cout << "x:" << endl;
if (!(cin >> g) || cin.get() != '\n')
{
cin.clear();
cin.ignore(65535, '\n');
cout << "неправильный ввод" << endl;
}
} while (g == value);
do
{
cout << "y:" << endl;
if (!(cin >> h) || cin.get() != '\n')
{
cin.clear();
cin.ignore(65535, '\n');
cout << "неправильный ввод" << endl;
}
} while (h == value);
cout << "введите координаты точки" << endl;
do
{
cout << "x:" << endl;
if (!(cin >> k) || cin.get() != '\n')
{
cin.clear();
cin.ignore(65535, '\n');
cout << "неправильный ввод" << endl;
}
} while (k == value);
do
{
cout << "y:" << endl;
if (!(cin >> l) || cin.get() != '\n')
{
cin.clear();
cin.ignore(65535, '\n');
cout << "неправильный ввод" << endl;
}
} while (l == value);
if (((k <= a)&&(k <= d)&&(k <= g)) && ((l <= b)&&(l <= e)&&(l <= h)))
cout << "точка пренадлежит треугольнику" << endl;
else
cout << "точка не пренадлежит треугольнику" << endl;
}
void task118(int value)
{
cout << "\nзадание № 118";
double a, r, R;
cout << "\nвведите сторону правильного треугольника" << endl;
do
{
if (!(cin >> a) || cin.get() != '\n')
{
cin.clear();
cin.ignore(65535, '\n');
cout << "неправильный ввод" << endl;
}
} while (a == value);
cout << "\nвведите радиус круга" << endl;
do
{
if (!(cin >> r) || cin.get() != '\n')
{
cin.clear();
cin.ignore(65535, '\n');
cout << "неправильный ввод" << endl;
}
} while (r == value);
R = a * sqrt(3) / 3;
if (r >= R)
cout << "\nтреугольник поместится в круг" << endl;
else
{
cout << "\nтреугольник не поместится в круг" << endl;
}
}
void task129(int value)
{
cout << "задание № 129";
double sale, input;
cout << "\nвведите стоимость книг" << endl;
do
{
if (!(cin >> sale) || cin.get() != '\n')
{
cin.clear();
cin.ignore(65535, '\n');
cout << "неправильный ввод" << endl;
}
} while (sale == value);
cout << "введите сумму денег внесенную покупателем" << endl;
do
{
if (!(cin >> input) || cin.get() != '\n')
{
cin.clear();
cin.ignore(65535, '\n');
cout << "неправильный ввод" << endl;
}
} while (input == value);
if (sale > input)
cout << "недостаточная сумма. внесите еще " << sale - input << endl;
else if (sale == input)
cout << "спасибо" << endl;
else if (sale < input)
cout << "возьмите сдачу " << input - sale << endl;
}
void task140(int value)
{
cout << "задание № 140";
double a, b, c;
cout << "\nвведите длины сторон, после каждого ввода нажимайте enter" << endl;
do
{
cout << "a:" << endl;
if (!(cin >> a) || cin.get() != '\n')
{
cin.clear();
cin.ignore(65535, '\n');
cout << "неправильный ввод" << endl;
}
} while (a == value);
do
{
cout << "b:" << endl;
if (!(cin >> b) || cin.get() != '\n')
{
cin.clear();
cin.ignore(65535, '\n');
cout << "неправильный ввод" << endl;
}
} while (b == value);
do
{
cout << "c:" << endl;
if (!(cin >> c) || cin.get() != '\n')
{
cin.clear();
cin.ignore(65535, '\n');
cout << "неправильный ввод" << endl;
}
} while (c == value);
if (a == b == c)
cout << "\nтреугольник равносторонний" << endl;
else
cout << "\nтреугольник не равносторонний" << endl;
}
void task151(int value)
{
cout << "задание № 151" << endl; // ноль не принимает и не одна защита от дурака это не может обойти
int x11, x21, y11, y21, d1, d2, s1, s2, x12, y12, x13, y13, x14, y14, x22, y22, x23, y23, x24, y24;
cout << "введите координаты левого нижнего угла первого прямоугольника" << endl;
do
{
cout << "x:" << endl;
if (!(cin >> x11) || cin.get() != '\n')
{
cin.clear();
cin.ignore(65535, '\n');
cout << "неправильный ввод" << endl;
}
} while (x11 == value);
do
{
cout << "y:" << endl;
if (!(cin >> y11) || cin.get() != '\n')
{
cin.clear();
cin.ignore(65535, '\n');
cout << "неправильный ввод" << endl;
}
} while (y11 == value);
cout << "введите координаты левого нижнего угла второго прямоугольника" << endl;
do
{
cout << "x:" << endl;
if (!(cin >> x21) || cin.get() != '\n')
{
cin.clear();
cin.ignore(65535, '\n');
cout << "неправильный ввод" << endl;
}
} while (x21 == value);
do
{
cout << "y:" << endl;
if (!(cin >> y21) || cin.get() != '\n')
{
cin.clear();
cin.ignore(65535, '\n');
cout << "неправильный ввод" << endl;
}
} while (y21 == value);
cout << "введите длину и ширину первого прямоугольника" << endl;
do
{
cout << "введите длину:" << endl;
if (!(cin >> d1) || cin.get() != '\n')
{
cin.clear();
cin.ignore(65535, '\n');
cout << "неправильный ввод" << endl;
}
} while (d1 == value);
do
{
cout << "введите ширину:" << endl;
if (!(cin >> s1) || cin.get() != '\n')
{
cin.clear();
cin.ignore(65535, '\n');
cout << "неправильный ввод" << endl;
}
} while (s1 == value);
cout << "введите длину и ширину второго прямоугольника" << endl;
do
{
cout << "введите длину:" << endl;
if (!(cin >> d2) || cin.get() != '\n')
{
cin.clear();
cin.ignore(65535, '\n');
cout << "неправильный ввод" << endl;
}
} while (d2 == value);
do
{
cout << "введите ширину:" << endl;
if (!(cin >> s2) || cin.get() != '\n')
{
cin.clear();
cin.ignore(65535, '\n');
cout << "неправильный ввод" << endl;
}
} while (s2 == value);
if ((x11 == x21) && (y11 == y21) && (d1 <= d2) && (s1 <= s2))
cout << "все точки первого прямоугольника пренадлежат второму" << endl;
else
cout << "все точки первого прямоугольника не пренадлежат второму" << endl;
if (((x11 == x21) && (y11 == y21) && (d1 <= d2) && (s1 <= s2)) || ((x11 == x21) && (y11 == y21) && (d1 >= d2) && (s1 >= s2)))
cout << "точки одного из прямоугольников пренадлежат другому" << endl;
else
cout << "точки одного из прямоугольников не пренадлежат другому" << endl;
x12 = x11 + d1;
x14 = x11 + s1;
x13 = x12 + s1;
x22 = x21 + d2;
x24 = x21 + s2;
x23 = x22 + s2;
y12 = y11 + d1;
y14 = y11 + s1;
y13 = y12 + s1;
y22 = y21 + d2;
y24 = y21 + s2;
y23 = y22 + s2;
if (((x11 == x21) && (x12 == x22) && (x13 == x23) && (x14 = x24)) && ((y11 == y21) && (y12 == y22) && (y13 == y23) && (y14 = y24)))
cout << "прямоугольники друг в друге" << endl;
else if ((((x11 < x21) && (x12 < x22) && (x13 >= x23) && (x14 >= x24)) && (y11 < y21) && (y12 < y22) && (y13 >= y23) && (y14 >= y24)) || (((x11 >= x21) && (x12 < x22) && (x13 < x23) && (x14 >= x24)) && ((y11 >= y21) && (y12 < y22) && (y13 < y23) && (y14 >= y24))) || (((x11 >= x21) && (x12 >= x22) && (x13 < x23) && (x14 < x24)) && ((y11 >= y21) && (y12 >= y22) && (y13 < y23) && (y14 < y24))) || (((x11 < x21) && (x12 >= x22) && (x13 >= x23) && (x14 < x24)) && ((y11 < y21) && (y12 >= y22) && (y13 >= y23) && (y14 < y24))) || (((x11 > x21) && (x12 > x22) && (x13 >= x23) && (x14 >= x24)) && ((y11 > y21) && (y12 > y22) && (y13 >= y23) && (y14 >= y24))) || (((x11 >= x21) && (x12 > x22) && (x13 > x23) && (x14 >= x24)) && ((y11 >= y21) && (y12 > y22) && (y13 > y23) && (y14 >= y24))) || (((x11 >= x21) && (x12 >= x22) && (x13 > x23) && (x14 > x24)) && ((y11 >= y21) && (y12 >= y22) && (y13 > y23) && (y14 > y24))) || (((x11 >= x21) && (x12 >= x22) && (x13 > x23) && (x14 > x24) && (y11 >= y21) && (y12 >= y22) && (y13 > y23) && (y14 > y24))) || (((x11 > x21) && (x12 >= x22) && (x13 >= x23) && (x14 > x24)) && ((y11 > y21) && (y12 >= y22) && (y13 >= y23) && (y14 > y24))))
cout << "прямоугольники пересекаются" << endl;
else cout << "прямоугольники не пересекаются" << endl;
}
void task162(int value)
{
cout << "задание № 162" << endl;
int x1, y1, x2, y2, x3, y3, x4, y4, s;
cout << "введите координаты первой вершины прямоугольника " << endl;
do
{
cout << "x:" << endl;
if (!(cin >> x1) || cin.get() != '\n')
{
cin.clear();
cin.ignore(65535, '\n');
cout << "неправильный ввод" << endl;
}
} while (x1 == value);
do
{
cout << "y:" << endl;
if (!(cin >> y1) || cin.get() != '\n')
{
cin.clear();
cin.ignore(65535, '\n');
cout << "неправильный ввод" << endl;
}
} while (y1 == value);
cout << "введите координаты второй вершины прямоугольника " << endl;
do
{
cout << "x:" << endl;
if (!(cin >> x2) || cin.get() != '\n')
{
cin.clear();
cin.ignore(65535, '\n');
cout << "неправильный ввод" << endl;
}
} while (x2 == value);
do
{
cout << "y:" << endl;
if (!(cin >> y2) || cin.get() != '\n')
{
cin.clear();
cin.ignore(65535, '\n');
cout << "неправильный ввод" << endl;
}
} while (y2 == value);
cout << "введите координаты третей вершины прямоугольника " << endl;
do
{
cout << "x:" << endl;
if (!(cin >> x3) || cin.get() != '\n')
{
cin.clear();
cin.ignore(65535, '\n');
cout << "неправильный ввод" << endl;
}
} while (x3 == value);
do
{
cout << "y:" << endl;
if (!(cin >> y3) || cin.get() != '\n')
{
cin.clear();
cin.ignore(65535, '\n');
cout << "неправильный ввод" << endl;
}
} while (y3 == value);
cout << "введите координаты четвертой вершины прямоугольника " << endl;
do
{
cout << "x:" << endl;
if (!(cin >> x4) || cin.get() != '\n')
{
cin.clear();
cin.ignore(65535, '\n');
cout << "неправильный ввод" << endl;
}
} while (x4 == value);
do
{
cout << "y:" << endl;
if (!(cin >> y4) || cin.get() != '\n')
{
cin.clear();
cin.ignore(65535, '\n');
cout << "неправильный ввод" << endl;
}
} while (y4 == value);
if ((x1 == 0) && (x2 > 0) && (x3 > 0) && (x4 == 0) && (y1 > 0) && (y2 > 0) && (y3 > 0) && (y4 > 0))
{
s = (x2 - x1) * (y2 - y3);
cout << "площадь части прямоугольника, расположенной в первом квадранте равняется " << s << endl;
}
else if ((x1 > 0) && (x2 > 0) && (x3 > 0) && (x4 > 0) && (y1 > 0) && (y2 > 0) && (y3 == 0) && (y4 == 0))
{
s = (x2 - x1) * (y2 - y3);
cout << "площадь части прямоугольника, расположенной в первом квадранте равняется " << s << endl;
}
else if ((x1 > 0) && (x2 > 0) && (x3 > 0) && (x4 > 0) && (y1 > 0) && (y2 > 0) && (y3 > 0) && (y4 > 0))
{
s = (x2 - x1) * (y2 - y3);
cout << "площадь части прямоугольника, расположенной в первом квадранте равняется " << s << endl;
}
else if ((x1 == 0) && (x2 > 0) && (x3 > 0) && (x4 == 0) && (y1 > 0) && (y2 > 0) && (y3 == 0) && (y4 == 0))
{
s = (x2 - x1) * (y2 - y3);
cout << "площадь части прямоугольника, расположенной в первом квадранте равняется " << s << endl;
}
else if ((x1 < 0) && (x2 > 0) && (x3 > 0) && (x4 < 0) && (y1 > 0) && (y2 > 0) && (y3 > 0) && (y4 > 0))
{
s = x2 * (y2 - y3);
cout << "площадь части прямоугольника, расположенной в первом квадранте равняется " << s << endl;
}
else if ((x1 > 0) && (x2 > 0) && (x3 > 0) && (x4 > 0) && (y1 > 0) && (y2 > 0) && (y3 < 0) && (y4 < 0))
{
s = (x2 - x1) * y1;
cout << "площадь части прямоугольника, расположенной в первом квадранте равняется " << s << endl;
}
else
{
cout << "неправильный ввод координат" << endl;
}
}
int main()
{
int value = 0;
system("color 17");
setlocale(LC_CTYPE, "rus");
cout << "\nдратути" << endl;
task63(value);
task74(value);
task85(value);
task96(value);
task118(value);
task129(value);
task140(value);
task151(value);
task162(value);
return 0;
}