diff --git a/5, 6 лаб/1, 2 лаб 5/WindowsProject1.sln b/5, 6 лаб/1, 2 лаб 5/WindowsProject1.sln
new file mode 100644
index 0000000..5c05fe3
--- /dev/null
+++ b/5, 6 лаб/1, 2 лаб 5/WindowsProject1.sln
@@ -0,0 +1,31 @@
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio Version 17
+VisualStudioVersion = 17.11.35222.181
+MinimumVisualStudioVersion = 10.0.40219.1
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "WindowsProject1", "WindowsProject1\WindowsProject1.vcxproj", "{C592C569-F3ED-4207-8D48-D82EA2833261}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|x64 = Debug|x64
+ Debug|x86 = Debug|x86
+ Release|x64 = Release|x64
+ Release|x86 = Release|x86
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {C592C569-F3ED-4207-8D48-D82EA2833261}.Debug|x64.ActiveCfg = Debug|x64
+ {C592C569-F3ED-4207-8D48-D82EA2833261}.Debug|x64.Build.0 = Debug|x64
+ {C592C569-F3ED-4207-8D48-D82EA2833261}.Debug|x86.ActiveCfg = Debug|Win32
+ {C592C569-F3ED-4207-8D48-D82EA2833261}.Debug|x86.Build.0 = Debug|Win32
+ {C592C569-F3ED-4207-8D48-D82EA2833261}.Release|x64.ActiveCfg = Release|x64
+ {C592C569-F3ED-4207-8D48-D82EA2833261}.Release|x64.Build.0 = Release|x64
+ {C592C569-F3ED-4207-8D48-D82EA2833261}.Release|x86.ActiveCfg = Release|Win32
+ {C592C569-F3ED-4207-8D48-D82EA2833261}.Release|x86.Build.0 = Release|Win32
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+ GlobalSection(ExtensibilityGlobals) = postSolution
+ SolutionGuid = {2FA3B26A-CF78-4F7F-9849-50DD421AFD2A}
+ EndGlobalSection
+EndGlobal
diff --git a/5, 6 лаб/1, 2 лаб 5/WindowsProject1/Resource.h b/5, 6 лаб/1, 2 лаб 5/WindowsProject1/Resource.h
new file mode 100644
index 0000000..b711f91
--- /dev/null
+++ b/5, 6 лаб/1, 2 лаб 5/WindowsProject1/Resource.h
@@ -0,0 +1,30 @@
+//{{NO_DEPENDENCIES}}
+// Включаемый файл, созданный в Microsoft Visual C++.
+// Используется WindowsProject1.rc
+
+#define IDS_APP_TITLE 103
+
+#define IDR_MAINFRAME 128
+#define IDD_WINDOWSPROJECT1_DIALOG 102
+#define IDD_ABOUTBOX 103
+#define IDM_ABOUT 104
+#define IDM_EXIT 105
+#define IDI_WINDOWSPROJECT1 107
+#define IDI_SMALL 108
+#define IDC_WINDOWSPROJECT1 109
+#define IDC_MYICON 2
+#ifndef IDC_STATIC
+#define IDC_STATIC -1
+#endif
+// Следующие стандартные значения для новых объектов
+//
+#ifdef APSTUDIO_INVOKED
+#ifndef APSTUDIO_READONLY_SYMBOLS
+
+#define _APS_NO_MFC 130
+#define _APS_NEXT_RESOURCE_VALUE 129
+#define _APS_NEXT_COMMAND_VALUE 32771
+#define _APS_NEXT_CONTROL_VALUE 1000
+#define _APS_NEXT_SYMED_VALUE 110
+#endif
+#endif
diff --git a/5, 6 лаб/1, 2 лаб 5/WindowsProject1/WindowsProject1.cpp b/5, 6 лаб/1, 2 лаб 5/WindowsProject1/WindowsProject1.cpp
new file mode 100644
index 0000000..fe26157
--- /dev/null
+++ b/5, 6 лаб/1, 2 лаб 5/WindowsProject1/WindowsProject1.cpp
@@ -0,0 +1,233 @@
+// WindowsProject1.cpp : Определяет точку входа для приложения.
+//
+
+#include "framework.h"
+#include "WindowsProject1.h"
+
+#define MAX_LOADSTRING 100
+
+// Глобальные переменные:
+HINSTANCE hInst; // текущий экземпляр
+WCHAR szTitle[MAX_LOADSTRING]; // Текст строки заголовка
+WCHAR szWindowClass[MAX_LOADSTRING]; // имя класса главного окна
+
+// Отправить объявления функций, включенных в этот модуль кода:
+ATOM MyRegisterClass(HINSTANCE hInstance);
+BOOL InitInstance(HINSTANCE, int);
+LRESULT CALLBACK WndProc(HWND, UINT, WPARAM, LPARAM);
+INT_PTR CALLBACK About(HWND, UINT, WPARAM, LPARAM);
+
+int APIENTRY wWinMain(_In_ HINSTANCE hInstance,
+ _In_opt_ HINSTANCE hPrevInstance,
+ _In_ LPWSTR lpCmdLine,
+ _In_ int nCmdShow)
+{
+ UNREFERENCED_PARAMETER(hPrevInstance);
+ UNREFERENCED_PARAMETER(lpCmdLine);
+
+ // TODO: Разместите код здесь.
+
+ // Инициализация глобальных строк
+ LoadStringW(hInstance, IDS_APP_TITLE, szTitle, MAX_LOADSTRING);
+ LoadStringW(hInstance, IDC_WINDOWSPROJECT1, szWindowClass, MAX_LOADSTRING);
+ MyRegisterClass(hInstance);
+
+ // Выполнить инициализацию приложения:
+ if (!InitInstance (hInstance, nCmdShow))
+ {
+ return FALSE;
+ }
+
+ HACCEL hAccelTable = LoadAccelerators(hInstance, MAKEINTRESOURCE(IDC_WINDOWSPROJECT1));
+
+ MSG msg;
+
+ // Цикл основного сообщения:
+ while (GetMessage(&msg, nullptr, 0, 0))
+ {
+ if (!TranslateAccelerator(msg.hwnd, hAccelTable, &msg))
+ {
+ TranslateMessage(&msg);
+ DispatchMessage(&msg);
+ }
+ }
+
+ return (int) msg.wParam;
+}
+
+
+
+//
+// ФУНКЦИЯ: MyRegisterClass()
+//
+// ЦЕЛЬ: Регистрирует класс окна.
+//
+ATOM MyRegisterClass(HINSTANCE hInstance)
+{
+ WNDCLASSEXW wcex;
+
+ wcex.cbSize = sizeof(WNDCLASSEX);
+
+ wcex.style = CS_HREDRAW | CS_VREDRAW;
+ wcex.lpfnWndProc = WndProc;
+ wcex.cbClsExtra = 0;
+ wcex.cbWndExtra = 0;
+ wcex.hInstance = hInstance;
+ wcex.hIcon = LoadIcon(hInstance, MAKEINTRESOURCE(IDI_WINDOWSPROJECT1));
+ wcex.hCursor = LoadCursor(nullptr, IDC_ARROW);
+ wcex.hbrBackground = (HBRUSH)(COLOR_WINDOW+1);
+ wcex.lpszMenuName = MAKEINTRESOURCEW(IDC_WINDOWSPROJECT1);
+ wcex.lpszClassName = szWindowClass;
+ wcex.hIconSm = LoadIcon(wcex.hInstance, MAKEINTRESOURCE(IDI_SMALL));
+
+ return RegisterClassExW(&wcex);
+}
+
+//
+// ФУНКЦИЯ: InitInstance(HINSTANCE, int)
+//
+// ЦЕЛЬ: Сохраняет маркер экземпляра и создает главное окно
+//
+// КОММЕНТАРИИ:
+//
+// В этой функции маркер экземпляра сохраняется в глобальной переменной, а также
+// создается и выводится главное окно программы.
+//
+BOOL InitInstance(HINSTANCE hInstance, int nCmdShow)
+{
+ hInst = hInstance; // Сохранить маркер экземпляра в глобальной переменной
+
+ HWND hWnd = CreateWindowW(szWindowClass, szTitle, WS_OVERLAPPEDWINDOW,
+ CW_USEDEFAULT, 0, CW_USEDEFAULT, 0, nullptr, nullptr, hInstance, nullptr);
+
+ if (!hWnd)
+ {
+ return FALSE;
+ }
+
+ ShowWindow(hWnd, nCmdShow);
+ UpdateWindow(hWnd);
+
+ return TRUE;
+}
+
+//
+// ФУНКЦИЯ: WndProc(HWND, UINT, WPARAM, LPARAM)
+//
+// ЦЕЛЬ: Обрабатывает сообщения в главном окне.
+//
+// WM_COMMAND - обработать меню приложения
+// WM_PAINT - Отрисовка главного окна
+// WM_DESTROY - отправить сообщение о выходе и вернуться
+//
+//
+LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
+{
+ switch (message)
+ {
+ case WM_COMMAND:
+ {
+ int wmId = LOWORD(wParam);
+ // Разобрать выбор в меню:
+ switch (wmId)
+ {
+ case IDM_ABOUT:
+ DialogBox(hInst, MAKEINTRESOURCE(IDD_ABOUTBOX), hWnd, About);
+ break;
+ case IDM_EXIT:
+ DestroyWindow(hWnd);
+ break;
+ default:
+ return DefWindowProc(hWnd, message, wParam, lParam);
+ }
+ }
+ break;
+ case WM_PAINT:
+ {
+ PAINTSTRUCT ps;
+ HDC hdc = BeginPaint(hWnd, &ps);
+ // TODO: Добавьте сюда любой код прорисовки, использующий HDC...
+
+ //ДОМ
+
+ // Крыша
+ MoveToEx(hdc, 150, 350, NULL);
+ LineTo(hdc, 275, 250);
+ LineTo(hdc, 400, 350);
+
+ // Дом
+ LineTo(hdc, 400, 525);
+ LineTo(hdc, 150, 525);
+ LineTo(hdc, 150, 350);
+ LineTo(hdc, 400, 350);
+
+ // Окно
+ MoveToEx(hdc, 225, 400, NULL);
+ LineTo(hdc, 225, 475);
+ LineTo(hdc, 325, 475);
+ LineTo(hdc, 325, 400);
+ LineTo(hdc, 225, 400);
+
+ // Рама
+ MoveToEx(hdc, 275, 400, NULL);
+ LineTo(hdc, 275, 475);
+ MoveToEx(hdc, 275, 425, NULL);
+ LineTo(hdc, 325, 425);
+
+ HPEN hPen = CreatePen(PS_SOLID, 3, RGB(0, 128, 0));
+ SelectObject(hdc, hPen);
+
+ //ЕЛКА
+
+ // Нижний ярус
+ MoveToEx(hdc, 470, 525, NULL);
+ LineTo(hdc, 520, 475);
+ LineTo(hdc, 570, 525);
+ LineTo(hdc, 470, 525);
+
+ // Средний ярус
+ MoveToEx(hdc, 490, 470, NULL);
+ LineTo(hdc, 520, 440);
+ LineTo(hdc, 550, 470);
+ LineTo(hdc, 490, 470);
+
+ // Верхний ярус
+ MoveToEx(hdc, 500, 435, NULL);
+ LineTo(hdc, 520, 415);
+ LineTo(hdc, 540, 435);
+ LineTo(hdc, 500, 435);
+
+
+
+ EndPaint(hWnd, &ps);
+
+ }
+ break;
+ case WM_DESTROY:
+ PostQuitMessage(0);
+ break;
+ default:
+ return DefWindowProc(hWnd, message, wParam, lParam);
+ }
+ return 0;
+}
+
+// Обработчик сообщений для окна "О программе".
+INT_PTR CALLBACK About(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam)
+{
+ UNREFERENCED_PARAMETER(lParam);
+ switch (message)
+ {
+ case WM_INITDIALOG:
+ return (INT_PTR)TRUE;
+
+ case WM_COMMAND:
+ if (LOWORD(wParam) == IDOK || LOWORD(wParam) == IDCANCEL)
+ {
+ EndDialog(hDlg, LOWORD(wParam));
+ return (INT_PTR)TRUE;
+ }
+ break;
+ }
+ return (INT_PTR)FALSE;
+}
diff --git a/5, 6 лаб/1, 2 лаб 5/WindowsProject1/WindowsProject1.h b/5, 6 лаб/1, 2 лаб 5/WindowsProject1/WindowsProject1.h
new file mode 100644
index 0000000..d00d47e
--- /dev/null
+++ b/5, 6 лаб/1, 2 лаб 5/WindowsProject1/WindowsProject1.h
@@ -0,0 +1,3 @@
+#pragma once
+
+#include "resource.h"
diff --git a/5, 6 лаб/1, 2 лаб 5/WindowsProject1/WindowsProject1.ico b/5, 6 лаб/1, 2 лаб 5/WindowsProject1/WindowsProject1.ico
new file mode 100644
index 0000000..b3ec03b
Binary files /dev/null and b/5, 6 лаб/1, 2 лаб 5/WindowsProject1/WindowsProject1.ico differ
diff --git a/5, 6 лаб/1, 2 лаб 5/WindowsProject1/WindowsProject1.rc b/5, 6 лаб/1, 2 лаб 5/WindowsProject1/WindowsProject1.rc
new file mode 100644
index 0000000..5d0e123
Binary files /dev/null and b/5, 6 лаб/1, 2 лаб 5/WindowsProject1/WindowsProject1.rc differ
diff --git a/5, 6 лаб/1, 2 лаб 5/WindowsProject1/WindowsProject1.vcxproj b/5, 6 лаб/1, 2 лаб 5/WindowsProject1/WindowsProject1.vcxproj
new file mode 100644
index 0000000..2d69329
--- /dev/null
+++ b/5, 6 лаб/1, 2 лаб 5/WindowsProject1/WindowsProject1.vcxproj
@@ -0,0 +1,148 @@
+
+
+
+
+ Debug
+ Win32
+
+
+ Release
+ Win32
+
+
+ Debug
+ x64
+
+
+ Release
+ x64
+
+
+
+ 17.0
+ Win32Proj
+ {c592c569-f3ed-4207-8d48-d82ea2833261}
+ WindowsProject1
+ 10.0
+
+
+
+ Application
+ true
+ v143
+ Unicode
+
+
+ Application
+ false
+ v143
+ true
+ Unicode
+
+
+ Application
+ true
+ v143
+ Unicode
+
+
+ Application
+ false
+ v143
+ true
+ Unicode
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Level3
+ true
+ WIN32;_DEBUG;_WINDOWS;%(PreprocessorDefinitions)
+ true
+
+
+ Windows
+ true
+
+
+
+
+ Level3
+ true
+ true
+ true
+ WIN32;NDEBUG;_WINDOWS;%(PreprocessorDefinitions)
+ true
+
+
+ Windows
+ true
+ true
+ true
+
+
+
+
+ Level3
+ true
+ _DEBUG;_WINDOWS;%(PreprocessorDefinitions)
+ true
+
+
+ Windows
+ true
+
+
+
+
+ Level3
+ true
+ true
+ true
+ NDEBUG;_WINDOWS;%(PreprocessorDefinitions)
+ true
+
+
+ Windows
+ true
+ true
+ true
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/5, 6 лаб/1, 2 лаб 5/WindowsProject1/WindowsProject1.vcxproj.filters b/5, 6 лаб/1, 2 лаб 5/WindowsProject1/WindowsProject1.vcxproj.filters
new file mode 100644
index 0000000..9cbeb4d
--- /dev/null
+++ b/5, 6 лаб/1, 2 лаб 5/WindowsProject1/WindowsProject1.vcxproj.filters
@@ -0,0 +1,49 @@
+
+
+
+
+ {4FC737F1-C7A5-4376-A066-2A32D752A2FF}
+ cpp;c;cc;cxx;c++;cppm;ixx;def;odl;idl;hpj;bat;asm;asmx
+
+
+ {93995380-89BD-4b04-88EB-625FBE52EBFB}
+ h;hh;hpp;hxx;h++;hm;inl;inc;ipp;xsd
+
+
+ {67DA6AB6-F800-4c08-8B7A-83BB121AAD01}
+ rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms
+
+
+
+
+ Файлы заголовков
+
+
+ Файлы заголовков
+
+
+ Файлы заголовков
+
+
+ Файлы заголовков
+
+
+
+
+ Исходные файлы
+
+
+
+
+ Файлы ресурсов
+
+
+
+
+ Файлы ресурсов
+
+
+ Файлы ресурсов
+
+
+
\ No newline at end of file
diff --git a/5, 6 лаб/1, 2 лаб 5/WindowsProject1/framework.h b/5, 6 лаб/1, 2 лаб 5/WindowsProject1/framework.h
new file mode 100644
index 0000000..a8f6dc8
--- /dev/null
+++ b/5, 6 лаб/1, 2 лаб 5/WindowsProject1/framework.h
@@ -0,0 +1,15 @@
+// header.h: включаемый файл для стандартных системных включаемых файлов
+// или включаемые файлы для конкретного проекта
+//
+
+#pragma once
+
+#include "targetver.h"
+#define WIN32_LEAN_AND_MEAN // Исключите редко используемые компоненты из заголовков Windows
+// Файлы заголовков Windows
+#include
+// Файлы заголовков среды выполнения C
+#include
+#include
+#include
+#include
diff --git a/5, 6 лаб/1, 2 лаб 5/WindowsProject1/small.ico b/5, 6 лаб/1, 2 лаб 5/WindowsProject1/small.ico
new file mode 100644
index 0000000..b3ec03b
Binary files /dev/null and b/5, 6 лаб/1, 2 лаб 5/WindowsProject1/small.ico differ
diff --git a/5, 6 лаб/1, 2 лаб 5/WindowsProject1/targetver.h b/5, 6 лаб/1, 2 лаб 5/WindowsProject1/targetver.h
new file mode 100644
index 0000000..d90003d
--- /dev/null
+++ b/5, 6 лаб/1, 2 лаб 5/WindowsProject1/targetver.h
@@ -0,0 +1,6 @@
+#pragma once
+
+// // При включении SDKDDKVer.h будет задана самая новая из доступных платформ Windows.
+// Если вы планируете сборку приложения для предыдущей версии платформы Windows, включите WinSDKVer.h и
+// задайте желаемую платформу в макросе _WIN32_WINNT, прежде чем включать SDKDDKVer.h.
+#include
diff --git a/5, 6 лаб/1, 2 лаб 6/1 лаб 6.sln b/5, 6 лаб/1, 2 лаб 6/1 лаб 6.sln
new file mode 100644
index 0000000..e58e97e
--- /dev/null
+++ b/5, 6 лаб/1, 2 лаб 6/1 лаб 6.sln
@@ -0,0 +1,31 @@
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio Version 17
+VisualStudioVersion = 17.11.35222.181
+MinimumVisualStudioVersion = 10.0.40219.1
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "1 лаб 6", "1 лаб 6\1 лаб 6.vcxproj", "{2AE5987E-2E90-4FB7-8A70-1176777E19FE}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|x64 = Debug|x64
+ Debug|x86 = Debug|x86
+ Release|x64 = Release|x64
+ Release|x86 = Release|x86
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {2AE5987E-2E90-4FB7-8A70-1176777E19FE}.Debug|x64.ActiveCfg = Debug|x64
+ {2AE5987E-2E90-4FB7-8A70-1176777E19FE}.Debug|x64.Build.0 = Debug|x64
+ {2AE5987E-2E90-4FB7-8A70-1176777E19FE}.Debug|x86.ActiveCfg = Debug|Win32
+ {2AE5987E-2E90-4FB7-8A70-1176777E19FE}.Debug|x86.Build.0 = Debug|Win32
+ {2AE5987E-2E90-4FB7-8A70-1176777E19FE}.Release|x64.ActiveCfg = Release|x64
+ {2AE5987E-2E90-4FB7-8A70-1176777E19FE}.Release|x64.Build.0 = Release|x64
+ {2AE5987E-2E90-4FB7-8A70-1176777E19FE}.Release|x86.ActiveCfg = Release|Win32
+ {2AE5987E-2E90-4FB7-8A70-1176777E19FE}.Release|x86.Build.0 = Release|Win32
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+ GlobalSection(ExtensibilityGlobals) = postSolution
+ SolutionGuid = {BFF92255-DADB-4FEF-8764-B93D054D4ACA}
+ EndGlobalSection
+EndGlobal
diff --git a/5, 6 лаб/1, 2 лаб 6/1 лаб 6/1 лаб 6.cpp b/5, 6 лаб/1, 2 лаб 6/1 лаб 6/1 лаб 6.cpp
new file mode 100644
index 0000000..0b295b7
--- /dev/null
+++ b/5, 6 лаб/1, 2 лаб 6/1 лаб 6/1 лаб 6.cpp
@@ -0,0 +1,310 @@
+// 1 лаб 6.cpp : Определяет точку входа для приложения.
+//
+
+#include "framework.h"
+#include "1 лаб 6.h"
+
+#define MAX_LOADSTRING 100
+
+// Глобальные переменные:
+HINSTANCE hInst; // текущий экземпляр
+WCHAR szTitle[MAX_LOADSTRING]; // Текст строки заголовка
+WCHAR szWindowClass[MAX_LOADSTRING]; // имя класса главного окна
+
+// Отправить объявления функций, включенных в этот модуль кода:
+ATOM MyRegisterClass(HINSTANCE hInstance);
+BOOL InitInstance(HINSTANCE, int);
+LRESULT CALLBACK WndProc(HWND, UINT, WPARAM, LPARAM);
+INT_PTR CALLBACK About(HWND, UINT, WPARAM, LPARAM);
+
+int APIENTRY wWinMain(_In_ HINSTANCE hInstance,
+ _In_opt_ HINSTANCE hPrevInstance,
+ _In_ LPWSTR lpCmdLine,
+ _In_ int nCmdShow)
+{
+ UNREFERENCED_PARAMETER(hPrevInstance);
+ UNREFERENCED_PARAMETER(lpCmdLine);
+
+ // TODO: Разместите код здесь.
+
+ // Инициализация глобальных строк
+ LoadStringW(hInstance, IDS_APP_TITLE, szTitle, MAX_LOADSTRING);
+ LoadStringW(hInstance, IDC_MY16, szWindowClass, MAX_LOADSTRING);
+ MyRegisterClass(hInstance);
+
+ // Выполнить инициализацию приложения:
+ if (!InitInstance (hInstance, nCmdShow))
+ {
+ return FALSE;
+ }
+
+ HACCEL hAccelTable = LoadAccelerators(hInstance, MAKEINTRESOURCE(IDC_MY16));
+
+ MSG msg;
+
+ // Цикл основного сообщения:
+ while (GetMessage(&msg, nullptr, 0, 0))
+ {
+ if (!TranslateAccelerator(msg.hwnd, hAccelTable, &msg))
+ {
+ TranslateMessage(&msg);
+ DispatchMessage(&msg);
+ }
+ }
+
+ return (int) msg.wParam;
+}
+
+
+
+//
+// ФУНКЦИЯ: MyRegisterClass()
+//
+// ЦЕЛЬ: Регистрирует класс окна.
+//
+ATOM MyRegisterClass(HINSTANCE hInstance)
+{
+ WNDCLASSEXW wcex;
+
+ wcex.cbSize = sizeof(WNDCLASSEX);
+
+ wcex.style = CS_HREDRAW | CS_VREDRAW;
+ wcex.lpfnWndProc = WndProc;
+ wcex.cbClsExtra = 0;
+ wcex.cbWndExtra = 0;
+ wcex.hInstance = hInstance;
+ wcex.hIcon = LoadIcon(hInstance, MAKEINTRESOURCE(IDI_MY16));
+ wcex.hCursor = LoadCursor(nullptr, IDC_ARROW);
+ wcex.hbrBackground = (HBRUSH)(COLOR_WINDOW+1);
+ wcex.lpszMenuName = MAKEINTRESOURCEW(IDC_MY16);
+ wcex.lpszClassName = szWindowClass;
+ wcex.hIconSm = LoadIcon(wcex.hInstance, MAKEINTRESOURCE(IDI_SMALL));
+
+ return RegisterClassExW(&wcex);
+}
+
+//
+// ФУНКЦИЯ: InitInstance(HINSTANCE, int)
+//
+// ЦЕЛЬ: Сохраняет маркер экземпляра и создает главное окно
+//
+// КОММЕНТАРИИ:
+//
+// В этой функции маркер экземпляра сохраняется в глобальной переменной, а также
+// создается и выводится главное окно программы.
+//
+BOOL InitInstance(HINSTANCE hInstance, int nCmdShow)
+{
+ hInst = hInstance; // Сохранить маркер экземпляра в глобальной переменной
+
+ HWND hWnd = CreateWindowW(szWindowClass, szTitle, WS_OVERLAPPEDWINDOW,
+ CW_USEDEFAULT, 0, CW_USEDEFAULT, 0, nullptr, nullptr, hInstance, nullptr);
+
+ if (!hWnd)
+ {
+ return FALSE;
+ }
+
+ ShowWindow(hWnd, nCmdShow);
+ UpdateWindow(hWnd);
+
+ return TRUE;
+}
+
+//
+// ФУНКЦИЯ: WndProc(HWND, UINT, WPARAM, LPARAM)
+//
+// ЦЕЛЬ: Обрабатывает сообщения в главном окне.
+//
+// WM_COMMAND - обработать меню приложения
+// WM_PAINT - Отрисовка главного окна
+// WM_DESTROY - отправить сообщение о выходе и вернуться
+//
+//
+LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
+{
+ switch (message)
+ {
+ case WM_COMMAND:
+ {
+ int wmId = LOWORD(wParam);
+ // Разобрать выбор в меню:
+ switch (wmId)
+ {
+ case IDM_ABOUT:
+ DialogBox(hInst, MAKEINTRESOURCE(IDD_ABOUTBOX), hWnd, About);
+ break;
+ case IDM_EXIT:
+ DestroyWindow(hWnd);
+ break;
+ default:
+ return DefWindowProc(hWnd, message, wParam, lParam);
+ }
+ }
+ break;
+ case WM_PAINT:
+ {
+ PAINTSTRUCT ps;
+ HDC hdc = BeginPaint(hWnd, &ps);
+ // TODO: Добавьте сюда любой код прорисовки, использующий HDC...
+
+
+ HPEN hPen = CreatePen(PS_SOLID, 3, RGB(255, 192, 203));
+ SelectObject(hdc, hPen);
+ //ДОМ
+
+ // Крыша
+ MoveToEx(hdc, 150, 350, NULL);
+ LineTo(hdc, 275, 250);
+ LineTo(hdc, 400, 350);
+
+ // Дом
+ LineTo(hdc, 400, 525);
+ LineTo(hdc, 150, 525);
+ LineTo(hdc, 150, 350);
+ LineTo(hdc, 400, 350);
+
+ // Окно
+ MoveToEx(hdc, 225, 400, NULL);
+ LineTo(hdc, 225, 475);
+ LineTo(hdc, 325, 475);
+ LineTo(hdc, 325, 400);
+ LineTo(hdc, 225, 400);
+
+ // Рама
+ MoveToEx(hdc, 275, 400, NULL);
+ LineTo(hdc, 275, 475);
+ MoveToEx(hdc, 275, 425, NULL);
+ LineTo(hdc, 325, 425);
+
+ hPen = CreatePen(PS_SOLID, 3, RGB(0, 128, 0));
+ SelectObject(hdc, hPen);
+
+ //ЕЛКА
+
+ // Нижний ярус
+ MoveToEx(hdc, 470, 525, NULL);
+ LineTo(hdc, 520, 475);
+ LineTo(hdc, 570, 525);
+ LineTo(hdc, 470, 525);
+
+ // Средний ярус
+ MoveToEx(hdc, 490, 470, NULL);
+ LineTo(hdc, 520, 440);
+ LineTo(hdc, 550, 470);
+ LineTo(hdc, 490, 470);
+
+ // Верхний ярус
+ MoveToEx(hdc, 500, 435, NULL);
+ LineTo(hdc, 520, 415);
+ LineTo(hdc, 540, 435);
+ LineTo(hdc, 500, 435);
+
+ hPen = CreatePen(PS_SOLID, 3, RGB(139, 0, 255));
+ SelectObject(hdc, hPen);
+ // 1 лаб 6
+
+ // первая точка - конец ветки куста
+ int x1 = 400, y1 = 150;
+ // вторая точка - корень куста
+ int x2 = 500, y2 = 250;
+
+ // соединяем линией первую точку со второй
+ do {
+ MoveToEx(hdc, x1, y1, NULL);
+ LineTo(hdc, x2, y2);
+
+ // первую точку перемещаем вправо на 25 пикселей
+ x1 += 25;
+ } while (x1 <= 600);
+
+
+ //2 лаб 6
+ hPen = CreatePen(PS_SOLID, 3, RGB(0, 0, 128));
+ SelectObject(hdc, hPen);
+
+ { // Начало блока - чтобы можно было создавать локальные переменные!
+ // первая точка - кончик ветки куста
+ int x1 = 0, y1 = 250;
+ // вторая точка - корень куста
+ int x2 = 100, y2 = 250;
+
+ do {
+ // соединяем линией первую точку со второй
+ MoveToEx(hdc, x1, y1, NULL);
+ LineTo(hdc, x2, y2);
+
+ // первую точку перемещаем вправо на 25 пикселей
+ x1 += 25;
+ // перемещаем вверх на 50 пикселей
+ y1 -= 50;
+ } while (x1 <= 100);
+
+ x1 = 100;
+ y1 = 50;
+
+ do {
+ // соединяем линией первую точку со второй
+ MoveToEx(hdc, x1, y1, NULL);
+ LineTo(hdc, x2, y2);
+
+ // первую точку перемещаем вправо на 25 пикселей
+ x1 += 25;
+ // перемещаем вниз на 50 пикселей
+ y1 += 50;
+ } while (x1 <= 200);
+
+ }
+
+ // 4 лаб 6
+ hPen = CreatePen(PS_SOLID, 3, RGB(128, 0, 0));
+ SelectObject(hdc, hPen);
+
+ {
+ int x1 = 150, y1 = 0;
+ int x2 = 150, y2 = 100;
+
+ do{
+ MoveToEx(hdc, x1, y1, NULL);
+ LineTo(hdc, x2, y2);
+
+ x1 += 25;
+ x2 += 25;
+ } while (x1 <= 450);
+
+ }
+
+
+
+
+ EndPaint(hWnd, &ps);
+ }
+ break;
+ case WM_DESTROY:
+ PostQuitMessage(0);
+ break;
+ default:
+ return DefWindowProc(hWnd, message, wParam, lParam);
+ }
+ return 0;
+}
+
+// Обработчик сообщений для окна "О программе".
+INT_PTR CALLBACK About(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam)
+{
+ UNREFERENCED_PARAMETER(lParam);
+ switch (message)
+ {
+ case WM_INITDIALOG:
+ return (INT_PTR)TRUE;
+
+ case WM_COMMAND:
+ if (LOWORD(wParam) == IDOK || LOWORD(wParam) == IDCANCEL)
+ {
+ EndDialog(hDlg, LOWORD(wParam));
+ return (INT_PTR)TRUE;
+ }
+ break;
+ }
+ return (INT_PTR)FALSE;
+}
diff --git a/5, 6 лаб/1, 2 лаб 6/1 лаб 6/1 лаб 6.h b/5, 6 лаб/1, 2 лаб 6/1 лаб 6/1 лаб 6.h
new file mode 100644
index 0000000..b798bf5
--- /dev/null
+++ b/5, 6 лаб/1, 2 лаб 6/1 лаб 6/1 лаб 6.h
@@ -0,0 +1,3 @@
+#pragma once
+
+#include "resource.h"
diff --git a/5, 6 лаб/1, 2 лаб 6/1 лаб 6/1 лаб 6.ico b/5, 6 лаб/1, 2 лаб 6/1 лаб 6/1 лаб 6.ico
new file mode 100644
index 0000000..b3ec03b
Binary files /dev/null and b/5, 6 лаб/1, 2 лаб 6/1 лаб 6/1 лаб 6.ico differ
diff --git a/5, 6 лаб/1, 2 лаб 6/1 лаб 6/1 лаб 6.rc b/5, 6 лаб/1, 2 лаб 6/1 лаб 6/1 лаб 6.rc
new file mode 100644
index 0000000..9b7851c
Binary files /dev/null and b/5, 6 лаб/1, 2 лаб 6/1 лаб 6/1 лаб 6.rc differ
diff --git a/5, 6 лаб/1, 2 лаб 6/1 лаб 6/1 лаб 6.vcxproj b/5, 6 лаб/1, 2 лаб 6/1 лаб 6/1 лаб 6.vcxproj
new file mode 100644
index 0000000..2c24c6b
--- /dev/null
+++ b/5, 6 лаб/1, 2 лаб 6/1 лаб 6/1 лаб 6.vcxproj
@@ -0,0 +1,148 @@
+
+
+
+
+ Debug
+ Win32
+
+
+ Release
+ Win32
+
+
+ Debug
+ x64
+
+
+ Release
+ x64
+
+
+
+ 17.0
+ Win32Proj
+ {2ae5987e-2e90-4fb7-8a70-1176777e19fe}
+ My1лаб6
+ 10.0
+
+
+
+ Application
+ true
+ v143
+ Unicode
+
+
+ Application
+ false
+ v143
+ true
+ Unicode
+
+
+ Application
+ true
+ v143
+ Unicode
+
+
+ Application
+ false
+ v143
+ true
+ Unicode
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Level3
+ true
+ WIN32;_DEBUG;_WINDOWS;%(PreprocessorDefinitions)
+ true
+
+
+ Windows
+ true
+
+
+
+
+ Level3
+ true
+ true
+ true
+ WIN32;NDEBUG;_WINDOWS;%(PreprocessorDefinitions)
+ true
+
+
+ Windows
+ true
+ true
+ true
+
+
+
+
+ Level3
+ true
+ _DEBUG;_WINDOWS;%(PreprocessorDefinitions)
+ true
+
+
+ Windows
+ true
+
+
+
+
+ Level3
+ true
+ true
+ true
+ NDEBUG;_WINDOWS;%(PreprocessorDefinitions)
+ true
+
+
+ Windows
+ true
+ true
+ true
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/5, 6 лаб/1, 2 лаб 6/1 лаб 6/1 лаб 6.vcxproj.filters b/5, 6 лаб/1, 2 лаб 6/1 лаб 6/1 лаб 6.vcxproj.filters
new file mode 100644
index 0000000..800bc0f
--- /dev/null
+++ b/5, 6 лаб/1, 2 лаб 6/1 лаб 6/1 лаб 6.vcxproj.filters
@@ -0,0 +1,49 @@
+
+
+
+
+ {4FC737F1-C7A5-4376-A066-2A32D752A2FF}
+ cpp;c;cc;cxx;c++;cppm;ixx;def;odl;idl;hpj;bat;asm;asmx
+
+
+ {93995380-89BD-4b04-88EB-625FBE52EBFB}
+ h;hh;hpp;hxx;h++;hm;inl;inc;ipp;xsd
+
+
+ {67DA6AB6-F800-4c08-8B7A-83BB121AAD01}
+ rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms
+
+
+
+
+ Файлы заголовков
+
+
+ Файлы заголовков
+
+
+ Файлы заголовков
+
+
+ Файлы заголовков
+
+
+
+
+ Исходные файлы
+
+
+
+
+ Файлы ресурсов
+
+
+
+
+ Файлы ресурсов
+
+
+ Файлы ресурсов
+
+
+
\ No newline at end of file
diff --git a/5, 6 лаб/1, 2 лаб 6/1 лаб 6/Resource.h b/5, 6 лаб/1, 2 лаб 6/1 лаб 6/Resource.h
new file mode 100644
index 0000000..f078cfd
--- /dev/null
+++ b/5, 6 лаб/1, 2 лаб 6/1 лаб 6/Resource.h
@@ -0,0 +1,30 @@
+//{{NO_DEPENDENCIES}}
+// Включаемый файл, созданный в Microsoft Visual C++.
+// Используется 1 лаб 6.rc
+
+#define IDS_APP_TITLE 103
+
+#define IDR_MAINFRAME 128
+#define IDD_MY16_DIALOG 102
+#define IDD_ABOUTBOX 103
+#define IDM_ABOUT 104
+#define IDM_EXIT 105
+#define IDI_MY16 107
+#define IDI_SMALL 108
+#define IDC_MY16 109
+#define IDC_MYICON 2
+#ifndef IDC_STATIC
+#define IDC_STATIC -1
+#endif
+// Следующие стандартные значения для новых объектов
+//
+#ifdef APSTUDIO_INVOKED
+#ifndef APSTUDIO_READONLY_SYMBOLS
+
+#define _APS_NO_MFC 130
+#define _APS_NEXT_RESOURCE_VALUE 129
+#define _APS_NEXT_COMMAND_VALUE 32771
+#define _APS_NEXT_CONTROL_VALUE 1000
+#define _APS_NEXT_SYMED_VALUE 110
+#endif
+#endif
diff --git a/5, 6 лаб/1, 2 лаб 6/1 лаб 6/framework.h b/5, 6 лаб/1, 2 лаб 6/1 лаб 6/framework.h
new file mode 100644
index 0000000..a8f6dc8
--- /dev/null
+++ b/5, 6 лаб/1, 2 лаб 6/1 лаб 6/framework.h
@@ -0,0 +1,15 @@
+// header.h: включаемый файл для стандартных системных включаемых файлов
+// или включаемые файлы для конкретного проекта
+//
+
+#pragma once
+
+#include "targetver.h"
+#define WIN32_LEAN_AND_MEAN // Исключите редко используемые компоненты из заголовков Windows
+// Файлы заголовков Windows
+#include
+// Файлы заголовков среды выполнения C
+#include
+#include
+#include
+#include
diff --git a/5, 6 лаб/1, 2 лаб 6/1 лаб 6/small.ico b/5, 6 лаб/1, 2 лаб 6/1 лаб 6/small.ico
new file mode 100644
index 0000000..b3ec03b
Binary files /dev/null and b/5, 6 лаб/1, 2 лаб 6/1 лаб 6/small.ico differ
diff --git a/5, 6 лаб/1, 2 лаб 6/1 лаб 6/targetver.h b/5, 6 лаб/1, 2 лаб 6/1 лаб 6/targetver.h
new file mode 100644
index 0000000..d90003d
--- /dev/null
+++ b/5, 6 лаб/1, 2 лаб 6/1 лаб 6/targetver.h
@@ -0,0 +1,6 @@
+#pragma once
+
+// // При включении SDKDDKVer.h будет задана самая новая из доступных платформ Windows.
+// Если вы планируете сборку приложения для предыдущей версии платформы Windows, включите WinSDKVer.h и
+// задайте желаемую платформу в макросе _WIN32_WINNT, прежде чем включать SDKDDKVer.h.
+#include
diff --git a/5, 6 лаб/3 лаб 5/3 лаб 5.sln b/5, 6 лаб/3 лаб 5/3 лаб 5.sln
new file mode 100644
index 0000000..9afd28b
--- /dev/null
+++ b/5, 6 лаб/3 лаб 5/3 лаб 5.sln
@@ -0,0 +1,31 @@
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio Version 17
+VisualStudioVersion = 17.11.35222.181
+MinimumVisualStudioVersion = 10.0.40219.1
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "3 лаб 5", "3 лаб 5\3 лаб 5.vcxproj", "{AAEB3953-232E-4664-899B-AA57BCAF0CA0}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|x64 = Debug|x64
+ Debug|x86 = Debug|x86
+ Release|x64 = Release|x64
+ Release|x86 = Release|x86
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {AAEB3953-232E-4664-899B-AA57BCAF0CA0}.Debug|x64.ActiveCfg = Debug|x64
+ {AAEB3953-232E-4664-899B-AA57BCAF0CA0}.Debug|x64.Build.0 = Debug|x64
+ {AAEB3953-232E-4664-899B-AA57BCAF0CA0}.Debug|x86.ActiveCfg = Debug|Win32
+ {AAEB3953-232E-4664-899B-AA57BCAF0CA0}.Debug|x86.Build.0 = Debug|Win32
+ {AAEB3953-232E-4664-899B-AA57BCAF0CA0}.Release|x64.ActiveCfg = Release|x64
+ {AAEB3953-232E-4664-899B-AA57BCAF0CA0}.Release|x64.Build.0 = Release|x64
+ {AAEB3953-232E-4664-899B-AA57BCAF0CA0}.Release|x86.ActiveCfg = Release|Win32
+ {AAEB3953-232E-4664-899B-AA57BCAF0CA0}.Release|x86.Build.0 = Release|Win32
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+ GlobalSection(ExtensibilityGlobals) = postSolution
+ SolutionGuid = {3C4188F6-A53A-41BC-9FB6-087803ECBDEF}
+ EndGlobalSection
+EndGlobal
diff --git a/5, 6 лаб/3 лаб 5/3 лаб 5/3 лаб 5.cpp b/5, 6 лаб/3 лаб 5/3 лаб 5/3 лаб 5.cpp
new file mode 100644
index 0000000..31c0c60
--- /dev/null
+++ b/5, 6 лаб/3 лаб 5/3 лаб 5/3 лаб 5.cpp
@@ -0,0 +1,219 @@
+// 3 лаб 5.cpp : Определяет точку входа для приложения.
+//
+
+#include "framework.h"
+#include "3 лаб 5.h"
+
+#define MAX_LOADSTRING 100
+
+// Глобальные переменные:
+HINSTANCE hInst; // текущий экземпляр
+WCHAR szTitle[MAX_LOADSTRING]; // Текст строки заголовка
+WCHAR szWindowClass[MAX_LOADSTRING]; // имя класса главного окна
+
+// Отправить объявления функций, включенных в этот модуль кода:
+ATOM MyRegisterClass(HINSTANCE hInstance);
+BOOL InitInstance(HINSTANCE, int);
+LRESULT CALLBACK WndProc(HWND, UINT, WPARAM, LPARAM);
+INT_PTR CALLBACK About(HWND, UINT, WPARAM, LPARAM);
+
+int APIENTRY wWinMain(_In_ HINSTANCE hInstance,
+ _In_opt_ HINSTANCE hPrevInstance,
+ _In_ LPWSTR lpCmdLine,
+ _In_ int nCmdShow)
+{
+ UNREFERENCED_PARAMETER(hPrevInstance);
+ UNREFERENCED_PARAMETER(lpCmdLine);
+
+ // TODO: Разместите код здесь.
+
+ // Инициализация глобальных строк
+ LoadStringW(hInstance, IDS_APP_TITLE, szTitle, MAX_LOADSTRING);
+ LoadStringW(hInstance, IDC_MY35, szWindowClass, MAX_LOADSTRING);
+ MyRegisterClass(hInstance);
+
+ // Выполнить инициализацию приложения:
+ if (!InitInstance (hInstance, nCmdShow))
+ {
+ return FALSE;
+ }
+
+ HACCEL hAccelTable = LoadAccelerators(hInstance, MAKEINTRESOURCE(IDC_MY35));
+
+ MSG msg;
+
+ // Цикл основного сообщения:
+ while (GetMessage(&msg, nullptr, 0, 0))
+ {
+ if (!TranslateAccelerator(msg.hwnd, hAccelTable, &msg))
+ {
+ TranslateMessage(&msg);
+ DispatchMessage(&msg);
+ }
+ }
+
+ return (int) msg.wParam;
+}
+
+
+
+//
+// ФУНКЦИЯ: MyRegisterClass()
+//
+// ЦЕЛЬ: Регистрирует класс окна.
+//
+ATOM MyRegisterClass(HINSTANCE hInstance)
+{
+ WNDCLASSEXW wcex;
+
+ wcex.cbSize = sizeof(WNDCLASSEX);
+
+ wcex.style = CS_HREDRAW | CS_VREDRAW;
+ wcex.lpfnWndProc = WndProc;
+ wcex.cbClsExtra = 0;
+ wcex.cbWndExtra = 0;
+ wcex.hInstance = hInstance;
+ wcex.hIcon = LoadIcon(hInstance, MAKEINTRESOURCE(IDI_MY35));
+ wcex.hCursor = LoadCursor(nullptr, IDC_ARROW);
+ wcex.hbrBackground = (HBRUSH)(COLOR_WINDOW+1);
+ wcex.lpszMenuName = MAKEINTRESOURCEW(IDC_MY35);
+ wcex.lpszClassName = szWindowClass;
+ wcex.hIconSm = LoadIcon(wcex.hInstance, MAKEINTRESOURCE(IDI_SMALL));
+
+ return RegisterClassExW(&wcex);
+}
+
+//
+// ФУНКЦИЯ: InitInstance(HINSTANCE, int)
+//
+// ЦЕЛЬ: Сохраняет маркер экземпляра и создает главное окно
+//
+// КОММЕНТАРИИ:
+//
+// В этой функции маркер экземпляра сохраняется в глобальной переменной, а также
+// создается и выводится главное окно программы.
+//
+BOOL InitInstance(HINSTANCE hInstance, int nCmdShow)
+{
+ hInst = hInstance; // Сохранить маркер экземпляра в глобальной переменной
+
+ HWND hWnd = CreateWindowW(szWindowClass, szTitle, WS_OVERLAPPEDWINDOW,
+ CW_USEDEFAULT, 0, CW_USEDEFAULT, 0, nullptr, nullptr, hInstance, nullptr);
+
+ if (!hWnd)
+ {
+ return FALSE;
+ }
+
+ ShowWindow(hWnd, nCmdShow);
+ UpdateWindow(hWnd);
+
+ return TRUE;
+}
+
+//
+// ФУНКЦИЯ: WndProc(HWND, UINT, WPARAM, LPARAM)
+//
+// ЦЕЛЬ: Обрабатывает сообщения в главном окне.
+//
+// WM_COMMAND - обработать меню приложения
+// WM_PAINT - Отрисовка главного окна
+// WM_DESTROY - отправить сообщение о выходе и вернуться
+//
+//
+LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
+{
+ switch (message)
+ {
+ case WM_COMMAND:
+ {
+ int wmId = LOWORD(wParam);
+ // Разобрать выбор в меню:
+ switch (wmId)
+ {
+ case IDM_ABOUT:
+ DialogBox(hInst, MAKEINTRESOURCE(IDD_ABOUTBOX), hWnd, About);
+ break;
+ case IDM_EXIT:
+ DestroyWindow(hWnd);
+ break;
+ default:
+ return DefWindowProc(hWnd, message, wParam, lParam);
+ }
+ }
+ break;
+ case WM_PAINT:
+ {
+ PAINTSTRUCT ps;
+ HDC hdc = BeginPaint(hWnd, &ps);
+ // TODO: Добавьте сюда любой код прорисовки, использующий HDC...
+
+
+ HPEN hPen = CreatePen(PS_SOLID, 3, RGB(128, 0, 0));
+ SelectObject(hdc, hPen);
+
+ HBRUSH hBrush;
+ hBrush = CreateSolidBrush(RGB(255, 128, 67));
+ SelectObject(hdc, hBrush);
+
+ // Прямоугольник
+ Rectangle(hdc, 50, 200, 300, 250);
+
+ // Линия
+ MoveToEx(hdc, 100, 200, NULL);
+ LineTo(hdc, 150, 150);
+ LineTo(hdc, 250, 150);
+ LineTo(hdc, 300, 200);
+
+
+ hPen = CreatePen(PS_SOLID, 7, RGB(0, 0, 128));
+ SelectObject(hdc, hPen);
+
+ hBrush = CreateHatchBrush(HS_DIAGCROSS, RGB(255, 0, 0));
+ SelectObject(hdc, hBrush);
+
+ // Эллипс
+ Ellipse(hdc, 75, 225, 125, 275);
+
+ hPen = CreatePen(PS_SOLID, 7, RGB(0, 128, 0));
+ SelectObject(hdc, hPen);
+
+ hBrush = CreateHatchBrush(HS_DIAGCROSS, RGB(0, 128, 0));
+ SelectObject(hdc, hBrush);
+ Ellipse(hdc, 220, 225, 270, 275);
+
+ DeleteObject(hPen);
+ DeleteObject(hBrush);
+
+
+ EndPaint(hWnd, &ps);
+ }
+ break;
+ case WM_DESTROY:
+ PostQuitMessage(0);
+ break;
+ default:
+ return DefWindowProc(hWnd, message, wParam, lParam);
+ }
+ return 0;
+}
+
+// Обработчик сообщений для окна "О программе".
+INT_PTR CALLBACK About(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam)
+{
+ UNREFERENCED_PARAMETER(lParam);
+ switch (message)
+ {
+ case WM_INITDIALOG:
+ return (INT_PTR)TRUE;
+
+ case WM_COMMAND:
+ if (LOWORD(wParam) == IDOK || LOWORD(wParam) == IDCANCEL)
+ {
+ EndDialog(hDlg, LOWORD(wParam));
+ return (INT_PTR)TRUE;
+ }
+ break;
+ }
+ return (INT_PTR)FALSE;
+}
diff --git a/5, 6 лаб/3 лаб 5/3 лаб 5/3 лаб 5.h b/5, 6 лаб/3 лаб 5/3 лаб 5/3 лаб 5.h
new file mode 100644
index 0000000..b798bf5
--- /dev/null
+++ b/5, 6 лаб/3 лаб 5/3 лаб 5/3 лаб 5.h
@@ -0,0 +1,3 @@
+#pragma once
+
+#include "resource.h"
diff --git a/5, 6 лаб/3 лаб 5/3 лаб 5/3 лаб 5.ico b/5, 6 лаб/3 лаб 5/3 лаб 5/3 лаб 5.ico
new file mode 100644
index 0000000..b3ec03b
Binary files /dev/null and b/5, 6 лаб/3 лаб 5/3 лаб 5/3 лаб 5.ico differ
diff --git a/5, 6 лаб/3 лаб 5/3 лаб 5/3 лаб 5.rc b/5, 6 лаб/3 лаб 5/3 лаб 5/3 лаб 5.rc
new file mode 100644
index 0000000..6683bbf
Binary files /dev/null and b/5, 6 лаб/3 лаб 5/3 лаб 5/3 лаб 5.rc differ
diff --git a/5, 6 лаб/3 лаб 5/3 лаб 5/3 лаб 5.vcxproj b/5, 6 лаб/3 лаб 5/3 лаб 5/3 лаб 5.vcxproj
new file mode 100644
index 0000000..39193a9
--- /dev/null
+++ b/5, 6 лаб/3 лаб 5/3 лаб 5/3 лаб 5.vcxproj
@@ -0,0 +1,148 @@
+
+
+
+
+ Debug
+ Win32
+
+
+ Release
+ Win32
+
+
+ Debug
+ x64
+
+
+ Release
+ x64
+
+
+
+ 17.0
+ Win32Proj
+ {aaeb3953-232e-4664-899b-aa57bcaf0ca0}
+ My3лаб5
+ 10.0
+
+
+
+ Application
+ true
+ v143
+ Unicode
+
+
+ Application
+ false
+ v143
+ true
+ Unicode
+
+
+ Application
+ true
+ v143
+ Unicode
+
+
+ Application
+ false
+ v143
+ true
+ Unicode
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Level3
+ true
+ WIN32;_DEBUG;_WINDOWS;%(PreprocessorDefinitions)
+ true
+
+
+ Windows
+ true
+
+
+
+
+ Level3
+ true
+ true
+ true
+ WIN32;NDEBUG;_WINDOWS;%(PreprocessorDefinitions)
+ true
+
+
+ Windows
+ true
+ true
+ true
+
+
+
+
+ Level3
+ true
+ _DEBUG;_WINDOWS;%(PreprocessorDefinitions)
+ true
+
+
+ Windows
+ true
+
+
+
+
+ Level3
+ true
+ true
+ true
+ NDEBUG;_WINDOWS;%(PreprocessorDefinitions)
+ true
+
+
+ Windows
+ true
+ true
+ true
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/5, 6 лаб/3 лаб 5/3 лаб 5/3 лаб 5.vcxproj.filters b/5, 6 лаб/3 лаб 5/3 лаб 5/3 лаб 5.vcxproj.filters
new file mode 100644
index 0000000..43aa33e
--- /dev/null
+++ b/5, 6 лаб/3 лаб 5/3 лаб 5/3 лаб 5.vcxproj.filters
@@ -0,0 +1,49 @@
+
+
+
+
+ {4FC737F1-C7A5-4376-A066-2A32D752A2FF}
+ cpp;c;cc;cxx;c++;cppm;ixx;def;odl;idl;hpj;bat;asm;asmx
+
+
+ {93995380-89BD-4b04-88EB-625FBE52EBFB}
+ h;hh;hpp;hxx;h++;hm;inl;inc;ipp;xsd
+
+
+ {67DA6AB6-F800-4c08-8B7A-83BB121AAD01}
+ rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms
+
+
+
+
+ Файлы заголовков
+
+
+ Файлы заголовков
+
+
+ Файлы заголовков
+
+
+ Файлы заголовков
+
+
+
+
+ Исходные файлы
+
+
+
+
+ Файлы ресурсов
+
+
+
+
+ Файлы ресурсов
+
+
+ Файлы ресурсов
+
+
+
\ No newline at end of file
diff --git a/5, 6 лаб/3 лаб 5/3 лаб 5/Resource.h b/5, 6 лаб/3 лаб 5/3 лаб 5/Resource.h
new file mode 100644
index 0000000..c471a1a
--- /dev/null
+++ b/5, 6 лаб/3 лаб 5/3 лаб 5/Resource.h
@@ -0,0 +1,30 @@
+//{{NO_DEPENDENCIES}}
+// Включаемый файл, созданный в Microsoft Visual C++.
+// Используется 3 лаб 5.rc
+
+#define IDS_APP_TITLE 103
+
+#define IDR_MAINFRAME 128
+#define IDD_MY35_DIALOG 102
+#define IDD_ABOUTBOX 103
+#define IDM_ABOUT 104
+#define IDM_EXIT 105
+#define IDI_MY35 107
+#define IDI_SMALL 108
+#define IDC_MY35 109
+#define IDC_MYICON 2
+#ifndef IDC_STATIC
+#define IDC_STATIC -1
+#endif
+// Следующие стандартные значения для новых объектов
+//
+#ifdef APSTUDIO_INVOKED
+#ifndef APSTUDIO_READONLY_SYMBOLS
+
+#define _APS_NO_MFC 130
+#define _APS_NEXT_RESOURCE_VALUE 129
+#define _APS_NEXT_COMMAND_VALUE 32771
+#define _APS_NEXT_CONTROL_VALUE 1000
+#define _APS_NEXT_SYMED_VALUE 110
+#endif
+#endif
diff --git a/5, 6 лаб/3 лаб 5/3 лаб 5/framework.h b/5, 6 лаб/3 лаб 5/3 лаб 5/framework.h
new file mode 100644
index 0000000..a8f6dc8
--- /dev/null
+++ b/5, 6 лаб/3 лаб 5/3 лаб 5/framework.h
@@ -0,0 +1,15 @@
+// header.h: включаемый файл для стандартных системных включаемых файлов
+// или включаемые файлы для конкретного проекта
+//
+
+#pragma once
+
+#include "targetver.h"
+#define WIN32_LEAN_AND_MEAN // Исключите редко используемые компоненты из заголовков Windows
+// Файлы заголовков Windows
+#include
+// Файлы заголовков среды выполнения C
+#include
+#include
+#include
+#include
diff --git a/5, 6 лаб/3 лаб 5/3 лаб 5/small.ico b/5, 6 лаб/3 лаб 5/3 лаб 5/small.ico
new file mode 100644
index 0000000..b3ec03b
Binary files /dev/null and b/5, 6 лаб/3 лаб 5/3 лаб 5/small.ico differ
diff --git a/5, 6 лаб/3 лаб 5/3 лаб 5/targetver.h b/5, 6 лаб/3 лаб 5/3 лаб 5/targetver.h
new file mode 100644
index 0000000..d90003d
--- /dev/null
+++ b/5, 6 лаб/3 лаб 5/3 лаб 5/targetver.h
@@ -0,0 +1,6 @@
+#pragma once
+
+// // При включении SDKDDKVer.h будет задана самая новая из доступных платформ Windows.
+// Если вы планируете сборку приложения для предыдущей версии платформы Windows, включите WinSDKVer.h и
+// задайте желаемую платформу в макросе _WIN32_WINNT, прежде чем включать SDKDDKVer.h.
+#include
diff --git a/5, 6 лаб/3 лаб 6/3 лаб 6.sln b/5, 6 лаб/3 лаб 6/3 лаб 6.sln
new file mode 100644
index 0000000..4bc07c8
--- /dev/null
+++ b/5, 6 лаб/3 лаб 6/3 лаб 6.sln
@@ -0,0 +1,31 @@
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio Version 17
+VisualStudioVersion = 17.11.35222.181
+MinimumVisualStudioVersion = 10.0.40219.1
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "3 лаб 6", "3 лаб 6\3 лаб 6.vcxproj", "{1E163531-7D21-42E8-BC42-DA6EF78E7477}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|x64 = Debug|x64
+ Debug|x86 = Debug|x86
+ Release|x64 = Release|x64
+ Release|x86 = Release|x86
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {1E163531-7D21-42E8-BC42-DA6EF78E7477}.Debug|x64.ActiveCfg = Debug|x64
+ {1E163531-7D21-42E8-BC42-DA6EF78E7477}.Debug|x64.Build.0 = Debug|x64
+ {1E163531-7D21-42E8-BC42-DA6EF78E7477}.Debug|x86.ActiveCfg = Debug|Win32
+ {1E163531-7D21-42E8-BC42-DA6EF78E7477}.Debug|x86.Build.0 = Debug|Win32
+ {1E163531-7D21-42E8-BC42-DA6EF78E7477}.Release|x64.ActiveCfg = Release|x64
+ {1E163531-7D21-42E8-BC42-DA6EF78E7477}.Release|x64.Build.0 = Release|x64
+ {1E163531-7D21-42E8-BC42-DA6EF78E7477}.Release|x86.ActiveCfg = Release|Win32
+ {1E163531-7D21-42E8-BC42-DA6EF78E7477}.Release|x86.Build.0 = Release|Win32
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+ GlobalSection(ExtensibilityGlobals) = postSolution
+ SolutionGuid = {2C885694-9676-4E51-AEAC-232145CC28B1}
+ EndGlobalSection
+EndGlobal
diff --git a/5, 6 лаб/3 лаб 6/3 лаб 6/3 лаб 6.cpp b/5, 6 лаб/3 лаб 6/3 лаб 6/3 лаб 6.cpp
new file mode 100644
index 0000000..ac4f003
--- /dev/null
+++ b/5, 6 лаб/3 лаб 6/3 лаб 6/3 лаб 6.cpp
@@ -0,0 +1,229 @@
+// 3 лаб 6.cpp : Определяет точку входа для приложения.
+//
+
+#include "framework.h"
+#include "3 лаб 6.h"
+
+#define MAX_LOADSTRING 100
+
+// Глобальные переменные:
+HINSTANCE hInst; // текущий экземпляр
+WCHAR szTitle[MAX_LOADSTRING]; // Текст строки заголовка
+WCHAR szWindowClass[MAX_LOADSTRING]; // имя класса главного окна
+
+// Отправить объявления функций, включенных в этот модуль кода:
+ATOM MyRegisterClass(HINSTANCE hInstance);
+BOOL InitInstance(HINSTANCE, int);
+LRESULT CALLBACK WndProc(HWND, UINT, WPARAM, LPARAM);
+INT_PTR CALLBACK About(HWND, UINT, WPARAM, LPARAM);
+
+int APIENTRY wWinMain(_In_ HINSTANCE hInstance,
+ _In_opt_ HINSTANCE hPrevInstance,
+ _In_ LPWSTR lpCmdLine,
+ _In_ int nCmdShow)
+{
+ UNREFERENCED_PARAMETER(hPrevInstance);
+ UNREFERENCED_PARAMETER(lpCmdLine);
+
+ // TODO: Разместите код здесь.
+
+ // Инициализация глобальных строк
+ LoadStringW(hInstance, IDS_APP_TITLE, szTitle, MAX_LOADSTRING);
+ LoadStringW(hInstance, IDC_MY36, szWindowClass, MAX_LOADSTRING);
+ MyRegisterClass(hInstance);
+
+ // Выполнить инициализацию приложения:
+ if (!InitInstance (hInstance, nCmdShow))
+ {
+ return FALSE;
+ }
+
+ HACCEL hAccelTable = LoadAccelerators(hInstance, MAKEINTRESOURCE(IDC_MY36));
+
+ MSG msg;
+
+ // Цикл основного сообщения:
+ while (GetMessage(&msg, nullptr, 0, 0))
+ {
+ if (!TranslateAccelerator(msg.hwnd, hAccelTable, &msg))
+ {
+ TranslateMessage(&msg);
+ DispatchMessage(&msg);
+ }
+ }
+
+ return (int) msg.wParam;
+}
+
+
+
+//
+// ФУНКЦИЯ: MyRegisterClass()
+//
+// ЦЕЛЬ: Регистрирует класс окна.
+//
+ATOM MyRegisterClass(HINSTANCE hInstance)
+{
+ WNDCLASSEXW wcex;
+
+ wcex.cbSize = sizeof(WNDCLASSEX);
+
+ wcex.style = CS_HREDRAW | CS_VREDRAW;
+ wcex.lpfnWndProc = WndProc;
+ wcex.cbClsExtra = 0;
+ wcex.cbWndExtra = 0;
+ wcex.hInstance = hInstance;
+ wcex.hIcon = LoadIcon(hInstance, MAKEINTRESOURCE(IDI_MY36));
+ wcex.hCursor = LoadCursor(nullptr, IDC_ARROW);
+ wcex.hbrBackground = (HBRUSH)(COLOR_WINDOW+1);
+ wcex.lpszMenuName = MAKEINTRESOURCEW(IDC_MY36);
+ wcex.lpszClassName = szWindowClass;
+ wcex.hIconSm = LoadIcon(wcex.hInstance, MAKEINTRESOURCE(IDI_SMALL));
+
+ return RegisterClassExW(&wcex);
+}
+
+//
+// ФУНКЦИЯ: InitInstance(HINSTANCE, int)
+//
+// ЦЕЛЬ: Сохраняет маркер экземпляра и создает главное окно
+//
+// КОММЕНТАРИИ:
+//
+// В этой функции маркер экземпляра сохраняется в глобальной переменной, а также
+// создается и выводится главное окно программы.
+//
+BOOL InitInstance(HINSTANCE hInstance, int nCmdShow)
+{
+ hInst = hInstance; // Сохранить маркер экземпляра в глобальной переменной
+
+ HWND hWnd = CreateWindowW(szWindowClass, szTitle, WS_OVERLAPPEDWINDOW,
+ CW_USEDEFAULT, 0, CW_USEDEFAULT, 0, nullptr, nullptr, hInstance, nullptr);
+
+ if (!hWnd)
+ {
+ return FALSE;
+ }
+
+ ShowWindow(hWnd, nCmdShow);
+ UpdateWindow(hWnd);
+
+ return TRUE;
+}
+
+//
+// ФУНКЦИЯ: WndProc(HWND, UINT, WPARAM, LPARAM)
+//
+// ЦЕЛЬ: Обрабатывает сообщения в главном окне.
+//
+// WM_COMMAND - обработать меню приложения
+// WM_PAINT - Отрисовка главного окна
+// WM_DESTROY - отправить сообщение о выходе и вернуться
+//
+//
+LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
+{
+ switch (message)
+ {
+ case WM_COMMAND:
+ {
+ int wmId = LOWORD(wParam);
+ // Разобрать выбор в меню:
+ switch (wmId)
+ {
+ case IDM_ABOUT:
+ DialogBox(hInst, MAKEINTRESOURCE(IDD_ABOUTBOX), hWnd, About);
+ break;
+ case IDM_EXIT:
+ DestroyWindow(hWnd);
+ break;
+ default:
+ return DefWindowProc(hWnd, message, wParam, lParam);
+ }
+ }
+ break;
+ case WM_PAINT:
+ {
+ PAINTSTRUCT ps;
+ HDC hdc = BeginPaint(hWnd, &ps);
+ // TODO: Добавьте сюда любой код прорисовки, использующий HDC...
+
+ // конец ветки куста
+ int x1 = 400, y1 = 150;
+ // корень куста
+ int x2 = 500, y2 = 250;
+
+ do {
+ MoveToEx(hdc, x1, y1, NULL);
+ LineTo(hdc, x2, y2);
+
+ // первую точку перемещаем вправо на 5 пикселей
+ x1 += 5;
+ } while (x1 <= 600);
+
+
+
+
+ { // Начало блока - чтобы можно было создавать локальные переменные!
+ // кончик ветки куста
+ int x1 = 0, y1 = 250;
+ // корень куста
+ int x2 = 100, y2 = 250;
+
+ do {
+ MoveToEx(hdc, x1, y1, NULL);
+ LineTo(hdc, x2, y2);
+
+ // первую точку перемещаем вправо на 5 пикселей
+ x1 += 5;
+ // перемещаем вверх на 10 пикселей
+ y1 -= 10;
+ } while (x1 <= 100);
+
+ x1 = 100;
+ y1 = 50;
+
+ do {
+ // соединяем линией первую точку со второй
+ MoveToEx(hdc, x1, y1, NULL);
+ LineTo(hdc, x2, y2);
+
+ // первую точку перемещаем вправо на 5 пикселей
+ x1 += 5;
+ // перемещаем вниз на 10 пикселей
+ y1 += 10;
+ } while (x1 <= 200);
+
+ }
+
+ EndPaint(hWnd, &ps);
+ }
+ break;
+ case WM_DESTROY:
+ PostQuitMessage(0);
+ break;
+ default:
+ return DefWindowProc(hWnd, message, wParam, lParam);
+ }
+ return 0;
+}
+
+// Обработчик сообщений для окна "О программе".
+INT_PTR CALLBACK About(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam)
+{
+ UNREFERENCED_PARAMETER(lParam);
+ switch (message)
+ {
+ case WM_INITDIALOG:
+ return (INT_PTR)TRUE;
+
+ case WM_COMMAND:
+ if (LOWORD(wParam) == IDOK || LOWORD(wParam) == IDCANCEL)
+ {
+ EndDialog(hDlg, LOWORD(wParam));
+ return (INT_PTR)TRUE;
+ }
+ break;
+ }
+ return (INT_PTR)FALSE;
+}
diff --git a/5, 6 лаб/3 лаб 6/3 лаб 6/3 лаб 6.h b/5, 6 лаб/3 лаб 6/3 лаб 6/3 лаб 6.h
new file mode 100644
index 0000000..b798bf5
--- /dev/null
+++ b/5, 6 лаб/3 лаб 6/3 лаб 6/3 лаб 6.h
@@ -0,0 +1,3 @@
+#pragma once
+
+#include "resource.h"
diff --git a/5, 6 лаб/3 лаб 6/3 лаб 6/3 лаб 6.ico b/5, 6 лаб/3 лаб 6/3 лаб 6/3 лаб 6.ico
new file mode 100644
index 0000000..b3ec03b
Binary files /dev/null and b/5, 6 лаб/3 лаб 6/3 лаб 6/3 лаб 6.ico differ
diff --git a/5, 6 лаб/3 лаб 6/3 лаб 6/3 лаб 6.rc b/5, 6 лаб/3 лаб 6/3 лаб 6/3 лаб 6.rc
new file mode 100644
index 0000000..cad8583
Binary files /dev/null and b/5, 6 лаб/3 лаб 6/3 лаб 6/3 лаб 6.rc differ
diff --git a/5, 6 лаб/3 лаб 6/3 лаб 6/3 лаб 6.vcxproj b/5, 6 лаб/3 лаб 6/3 лаб 6/3 лаб 6.vcxproj
new file mode 100644
index 0000000..a0b8021
--- /dev/null
+++ b/5, 6 лаб/3 лаб 6/3 лаб 6/3 лаб 6.vcxproj
@@ -0,0 +1,148 @@
+
+
+
+
+ Debug
+ Win32
+
+
+ Release
+ Win32
+
+
+ Debug
+ x64
+
+
+ Release
+ x64
+
+
+
+ 17.0
+ Win32Proj
+ {1e163531-7d21-42e8-bc42-da6ef78e7477}
+ My3лаб6
+ 10.0
+
+
+
+ Application
+ true
+ v143
+ Unicode
+
+
+ Application
+ false
+ v143
+ true
+ Unicode
+
+
+ Application
+ true
+ v143
+ Unicode
+
+
+ Application
+ false
+ v143
+ true
+ Unicode
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Level3
+ true
+ WIN32;_DEBUG;_WINDOWS;%(PreprocessorDefinitions)
+ true
+
+
+ Windows
+ true
+
+
+
+
+ Level3
+ true
+ true
+ true
+ WIN32;NDEBUG;_WINDOWS;%(PreprocessorDefinitions)
+ true
+
+
+ Windows
+ true
+ true
+ true
+
+
+
+
+ Level3
+ true
+ _DEBUG;_WINDOWS;%(PreprocessorDefinitions)
+ true
+
+
+ Windows
+ true
+
+
+
+
+ Level3
+ true
+ true
+ true
+ NDEBUG;_WINDOWS;%(PreprocessorDefinitions)
+ true
+
+
+ Windows
+ true
+ true
+ true
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/5, 6 лаб/3 лаб 6/3 лаб 6/3 лаб 6.vcxproj.filters b/5, 6 лаб/3 лаб 6/3 лаб 6/3 лаб 6.vcxproj.filters
new file mode 100644
index 0000000..64aaeee
--- /dev/null
+++ b/5, 6 лаб/3 лаб 6/3 лаб 6/3 лаб 6.vcxproj.filters
@@ -0,0 +1,49 @@
+
+
+
+
+ {4FC737F1-C7A5-4376-A066-2A32D752A2FF}
+ cpp;c;cc;cxx;c++;cppm;ixx;def;odl;idl;hpj;bat;asm;asmx
+
+
+ {93995380-89BD-4b04-88EB-625FBE52EBFB}
+ h;hh;hpp;hxx;h++;hm;inl;inc;ipp;xsd
+
+
+ {67DA6AB6-F800-4c08-8B7A-83BB121AAD01}
+ rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms
+
+
+
+
+ Файлы заголовков
+
+
+ Файлы заголовков
+
+
+ Файлы заголовков
+
+
+ Файлы заголовков
+
+
+
+
+ Исходные файлы
+
+
+
+
+ Файлы ресурсов
+
+
+
+
+ Файлы ресурсов
+
+
+ Файлы ресурсов
+
+
+
\ No newline at end of file
diff --git a/5, 6 лаб/3 лаб 6/3 лаб 6/Resource.h b/5, 6 лаб/3 лаб 6/3 лаб 6/Resource.h
new file mode 100644
index 0000000..f244ce3
--- /dev/null
+++ b/5, 6 лаб/3 лаб 6/3 лаб 6/Resource.h
@@ -0,0 +1,30 @@
+//{{NO_DEPENDENCIES}}
+// Включаемый файл, созданный в Microsoft Visual C++.
+// Используется 3 лаб 6.rc
+
+#define IDS_APP_TITLE 103
+
+#define IDR_MAINFRAME 128
+#define IDD_MY36_DIALOG 102
+#define IDD_ABOUTBOX 103
+#define IDM_ABOUT 104
+#define IDM_EXIT 105
+#define IDI_MY36 107
+#define IDI_SMALL 108
+#define IDC_MY36 109
+#define IDC_MYICON 2
+#ifndef IDC_STATIC
+#define IDC_STATIC -1
+#endif
+// Следующие стандартные значения для новых объектов
+//
+#ifdef APSTUDIO_INVOKED
+#ifndef APSTUDIO_READONLY_SYMBOLS
+
+#define _APS_NO_MFC 130
+#define _APS_NEXT_RESOURCE_VALUE 129
+#define _APS_NEXT_COMMAND_VALUE 32771
+#define _APS_NEXT_CONTROL_VALUE 1000
+#define _APS_NEXT_SYMED_VALUE 110
+#endif
+#endif
diff --git a/5, 6 лаб/3 лаб 6/3 лаб 6/framework.h b/5, 6 лаб/3 лаб 6/3 лаб 6/framework.h
new file mode 100644
index 0000000..a8f6dc8
--- /dev/null
+++ b/5, 6 лаб/3 лаб 6/3 лаб 6/framework.h
@@ -0,0 +1,15 @@
+// header.h: включаемый файл для стандартных системных включаемых файлов
+// или включаемые файлы для конкретного проекта
+//
+
+#pragma once
+
+#include "targetver.h"
+#define WIN32_LEAN_AND_MEAN // Исключите редко используемые компоненты из заголовков Windows
+// Файлы заголовков Windows
+#include
+// Файлы заголовков среды выполнения C
+#include
+#include
+#include
+#include
diff --git a/5, 6 лаб/3 лаб 6/3 лаб 6/small.ico b/5, 6 лаб/3 лаб 6/3 лаб 6/small.ico
new file mode 100644
index 0000000..b3ec03b
Binary files /dev/null and b/5, 6 лаб/3 лаб 6/3 лаб 6/small.ico differ
diff --git a/5, 6 лаб/3 лаб 6/3 лаб 6/targetver.h b/5, 6 лаб/3 лаб 6/3 лаб 6/targetver.h
new file mode 100644
index 0000000..d90003d
--- /dev/null
+++ b/5, 6 лаб/3 лаб 6/3 лаб 6/targetver.h
@@ -0,0 +1,6 @@
+#pragma once
+
+// // При включении SDKDDKVer.h будет задана самая новая из доступных платформ Windows.
+// Если вы планируете сборку приложения для предыдущей версии платформы Windows, включите WinSDKVer.h и
+// задайте желаемую платформу в макросе _WIN32_WINNT, прежде чем включать SDKDDKVer.h.
+#include
diff --git a/5, 6 лаб/4.1 лаб 6/4.1 лаб 6.sln b/5, 6 лаб/4.1 лаб 6/4.1 лаб 6.sln
new file mode 100644
index 0000000..09d4a2b
--- /dev/null
+++ b/5, 6 лаб/4.1 лаб 6/4.1 лаб 6.sln
@@ -0,0 +1,31 @@
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio Version 17
+VisualStudioVersion = 17.11.35222.181
+MinimumVisualStudioVersion = 10.0.40219.1
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "4.1 лаб 6", "4.1 лаб 6\4.1 лаб 6.vcxproj", "{8C5089D9-5A09-4B64-8AC8-03E710BB80F3}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|x64 = Debug|x64
+ Debug|x86 = Debug|x86
+ Release|x64 = Release|x64
+ Release|x86 = Release|x86
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {8C5089D9-5A09-4B64-8AC8-03E710BB80F3}.Debug|x64.ActiveCfg = Debug|x64
+ {8C5089D9-5A09-4B64-8AC8-03E710BB80F3}.Debug|x64.Build.0 = Debug|x64
+ {8C5089D9-5A09-4B64-8AC8-03E710BB80F3}.Debug|x86.ActiveCfg = Debug|Win32
+ {8C5089D9-5A09-4B64-8AC8-03E710BB80F3}.Debug|x86.Build.0 = Debug|Win32
+ {8C5089D9-5A09-4B64-8AC8-03E710BB80F3}.Release|x64.ActiveCfg = Release|x64
+ {8C5089D9-5A09-4B64-8AC8-03E710BB80F3}.Release|x64.Build.0 = Release|x64
+ {8C5089D9-5A09-4B64-8AC8-03E710BB80F3}.Release|x86.ActiveCfg = Release|Win32
+ {8C5089D9-5A09-4B64-8AC8-03E710BB80F3}.Release|x86.Build.0 = Release|Win32
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+ GlobalSection(ExtensibilityGlobals) = postSolution
+ SolutionGuid = {525245A4-D3F8-480C-B4C8-92EB5DE7BF1F}
+ EndGlobalSection
+EndGlobal
diff --git a/5, 6 лаб/4.1 лаб 6/4.1 лаб 6/4.1 лаб 6.cpp b/5, 6 лаб/4.1 лаб 6/4.1 лаб 6/4.1 лаб 6.cpp
new file mode 100644
index 0000000..fc2d562
--- /dev/null
+++ b/5, 6 лаб/4.1 лаб 6/4.1 лаб 6/4.1 лаб 6.cpp
@@ -0,0 +1,198 @@
+// 4.1 лаб 6.cpp : Определяет точку входа для приложения.
+//
+
+#include "framework.h"
+#include "4.1 лаб 6.h"
+
+#define MAX_LOADSTRING 100
+
+// Глобальные переменные:
+HINSTANCE hInst; // текущий экземпляр
+WCHAR szTitle[MAX_LOADSTRING]; // Текст строки заголовка
+WCHAR szWindowClass[MAX_LOADSTRING]; // имя класса главного окна
+
+// Отправить объявления функций, включенных в этот модуль кода:
+ATOM MyRegisterClass(HINSTANCE hInstance);
+BOOL InitInstance(HINSTANCE, int);
+LRESULT CALLBACK WndProc(HWND, UINT, WPARAM, LPARAM);
+INT_PTR CALLBACK About(HWND, UINT, WPARAM, LPARAM);
+
+int APIENTRY wWinMain(_In_ HINSTANCE hInstance,
+ _In_opt_ HINSTANCE hPrevInstance,
+ _In_ LPWSTR lpCmdLine,
+ _In_ int nCmdShow)
+{
+ UNREFERENCED_PARAMETER(hPrevInstance);
+ UNREFERENCED_PARAMETER(lpCmdLine);
+
+ // TODO: Разместите код здесь.
+
+ // Инициализация глобальных строк
+ LoadStringW(hInstance, IDS_APP_TITLE, szTitle, MAX_LOADSTRING);
+ LoadStringW(hInstance, IDC_MY416, szWindowClass, MAX_LOADSTRING);
+ MyRegisterClass(hInstance);
+
+ // Выполнить инициализацию приложения:
+ if (!InitInstance (hInstance, nCmdShow))
+ {
+ return FALSE;
+ }
+
+ HACCEL hAccelTable = LoadAccelerators(hInstance, MAKEINTRESOURCE(IDC_MY416));
+
+ MSG msg;
+
+ // Цикл основного сообщения:
+ while (GetMessage(&msg, nullptr, 0, 0))
+ {
+ if (!TranslateAccelerator(msg.hwnd, hAccelTable, &msg))
+ {
+ TranslateMessage(&msg);
+ DispatchMessage(&msg);
+ }
+ }
+
+ return (int) msg.wParam;
+}
+
+
+
+//
+// ФУНКЦИЯ: MyRegisterClass()
+//
+// ЦЕЛЬ: Регистрирует класс окна.
+//
+ATOM MyRegisterClass(HINSTANCE hInstance)
+{
+ WNDCLASSEXW wcex;
+
+ wcex.cbSize = sizeof(WNDCLASSEX);
+
+ wcex.style = CS_HREDRAW | CS_VREDRAW;
+ wcex.lpfnWndProc = WndProc;
+ wcex.cbClsExtra = 0;
+ wcex.cbWndExtra = 0;
+ wcex.hInstance = hInstance;
+ wcex.hIcon = LoadIcon(hInstance, MAKEINTRESOURCE(IDI_MY416));
+ wcex.hCursor = LoadCursor(nullptr, IDC_ARROW);
+ wcex.hbrBackground = (HBRUSH)(COLOR_WINDOW+1);
+ wcex.lpszMenuName = MAKEINTRESOURCEW(IDC_MY416);
+ wcex.lpszClassName = szWindowClass;
+ wcex.hIconSm = LoadIcon(wcex.hInstance, MAKEINTRESOURCE(IDI_SMALL));
+
+ return RegisterClassExW(&wcex);
+}
+
+//
+// ФУНКЦИЯ: InitInstance(HINSTANCE, int)
+//
+// ЦЕЛЬ: Сохраняет маркер экземпляра и создает главное окно
+//
+// КОММЕНТАРИИ:
+//
+// В этой функции маркер экземпляра сохраняется в глобальной переменной, а также
+// создается и выводится главное окно программы.
+//
+BOOL InitInstance(HINSTANCE hInstance, int nCmdShow)
+{
+ hInst = hInstance; // Сохранить маркер экземпляра в глобальной переменной
+
+ HWND hWnd = CreateWindowW(szWindowClass, szTitle, WS_OVERLAPPEDWINDOW,
+ CW_USEDEFAULT, 0, CW_USEDEFAULT, 0, nullptr, nullptr, hInstance, nullptr);
+
+ if (!hWnd)
+ {
+ return FALSE;
+ }
+
+ ShowWindow(hWnd, nCmdShow);
+ UpdateWindow(hWnd);
+
+ return TRUE;
+}
+
+//
+// ФУНКЦИЯ: WndProc(HWND, UINT, WPARAM, LPARAM)
+//
+// ЦЕЛЬ: Обрабатывает сообщения в главном окне.
+//
+// WM_COMMAND - обработать меню приложения
+// WM_PAINT - Отрисовка главного окна
+// WM_DESTROY - отправить сообщение о выходе и вернуться
+//
+//
+LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
+{
+ switch (message)
+ {
+ case WM_COMMAND:
+ {
+ int wmId = LOWORD(wParam);
+ // Разобрать выбор в меню:
+ switch (wmId)
+ {
+ case IDM_ABOUT:
+ DialogBox(hInst, MAKEINTRESOURCE(IDD_ABOUTBOX), hWnd, About);
+ break;
+ case IDM_EXIT:
+ DestroyWindow(hWnd);
+ break;
+ default:
+ return DefWindowProc(hWnd, message, wParam, lParam);
+ }
+ }
+ break;
+ case WM_PAINT:
+ {
+ PAINTSTRUCT ps;
+ HDC hdc = BeginPaint(hWnd, &ps);
+ // TODO: Добавьте сюда любой код прорисовки, использующий HDC...
+ // 4.1 лаб 6
+ HPEN hPen = CreatePen(PS_SOLID, 3, RGB(128, 0, 0));
+ SelectObject(hdc, hPen);
+
+ {
+ int x1 = 150, y1 = 0;
+ int x2 = 150, y2 = 100;
+
+ do {
+ MoveToEx(hdc, x1, y1, NULL);
+ LineTo(hdc, x2, y2);
+
+ x1 += 5;
+ x2 += 5;
+ } while (x1 <= 450);
+
+ }
+
+ EndPaint(hWnd, &ps);
+ }
+ break;
+ case WM_DESTROY:
+ PostQuitMessage(0);
+ break;
+ default:
+ return DefWindowProc(hWnd, message, wParam, lParam);
+ }
+ return 0;
+}
+
+// Обработчик сообщений для окна "О программе".
+INT_PTR CALLBACK About(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam)
+{
+ UNREFERENCED_PARAMETER(lParam);
+ switch (message)
+ {
+ case WM_INITDIALOG:
+ return (INT_PTR)TRUE;
+
+ case WM_COMMAND:
+ if (LOWORD(wParam) == IDOK || LOWORD(wParam) == IDCANCEL)
+ {
+ EndDialog(hDlg, LOWORD(wParam));
+ return (INT_PTR)TRUE;
+ }
+ break;
+ }
+ return (INT_PTR)FALSE;
+}
diff --git a/5, 6 лаб/4.1 лаб 6/4.1 лаб 6/4.1 лаб 6.h b/5, 6 лаб/4.1 лаб 6/4.1 лаб 6/4.1 лаб 6.h
new file mode 100644
index 0000000..b798bf5
--- /dev/null
+++ b/5, 6 лаб/4.1 лаб 6/4.1 лаб 6/4.1 лаб 6.h
@@ -0,0 +1,3 @@
+#pragma once
+
+#include "resource.h"
diff --git a/5, 6 лаб/4.1 лаб 6/4.1 лаб 6/4.1 лаб 6.ico b/5, 6 лаб/4.1 лаб 6/4.1 лаб 6/4.1 лаб 6.ico
new file mode 100644
index 0000000..b3ec03b
Binary files /dev/null and b/5, 6 лаб/4.1 лаб 6/4.1 лаб 6/4.1 лаб 6.ico differ
diff --git a/5, 6 лаб/4.1 лаб 6/4.1 лаб 6/4.1 лаб 6.rc b/5, 6 лаб/4.1 лаб 6/4.1 лаб 6/4.1 лаб 6.rc
new file mode 100644
index 0000000..37120df
Binary files /dev/null and b/5, 6 лаб/4.1 лаб 6/4.1 лаб 6/4.1 лаб 6.rc differ
diff --git a/5, 6 лаб/4.1 лаб 6/4.1 лаб 6/4.1 лаб 6.vcxproj b/5, 6 лаб/4.1 лаб 6/4.1 лаб 6/4.1 лаб 6.vcxproj
new file mode 100644
index 0000000..248006d
--- /dev/null
+++ b/5, 6 лаб/4.1 лаб 6/4.1 лаб 6/4.1 лаб 6.vcxproj
@@ -0,0 +1,148 @@
+
+
+
+
+ Debug
+ Win32
+
+
+ Release
+ Win32
+
+
+ Debug
+ x64
+
+
+ Release
+ x64
+
+
+
+ 17.0
+ Win32Proj
+ {8c5089d9-5a09-4b64-8ac8-03e710bb80f3}
+ My41лаб6
+ 10.0
+
+
+
+ Application
+ true
+ v143
+ Unicode
+
+
+ Application
+ false
+ v143
+ true
+ Unicode
+
+
+ Application
+ true
+ v143
+ Unicode
+
+
+ Application
+ false
+ v143
+ true
+ Unicode
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Level3
+ true
+ WIN32;_DEBUG;_WINDOWS;%(PreprocessorDefinitions)
+ true
+
+
+ Windows
+ true
+
+
+
+
+ Level3
+ true
+ true
+ true
+ WIN32;NDEBUG;_WINDOWS;%(PreprocessorDefinitions)
+ true
+
+
+ Windows
+ true
+ true
+ true
+
+
+
+
+ Level3
+ true
+ _DEBUG;_WINDOWS;%(PreprocessorDefinitions)
+ true
+
+
+ Windows
+ true
+
+
+
+
+ Level3
+ true
+ true
+ true
+ NDEBUG;_WINDOWS;%(PreprocessorDefinitions)
+ true
+
+
+ Windows
+ true
+ true
+ true
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/5, 6 лаб/4.1 лаб 6/4.1 лаб 6/4.1 лаб 6.vcxproj.filters b/5, 6 лаб/4.1 лаб 6/4.1 лаб 6/4.1 лаб 6.vcxproj.filters
new file mode 100644
index 0000000..6bfecfb
--- /dev/null
+++ b/5, 6 лаб/4.1 лаб 6/4.1 лаб 6/4.1 лаб 6.vcxproj.filters
@@ -0,0 +1,49 @@
+
+
+
+
+ {4FC737F1-C7A5-4376-A066-2A32D752A2FF}
+ cpp;c;cc;cxx;c++;cppm;ixx;def;odl;idl;hpj;bat;asm;asmx
+
+
+ {93995380-89BD-4b04-88EB-625FBE52EBFB}
+ h;hh;hpp;hxx;h++;hm;inl;inc;ipp;xsd
+
+
+ {67DA6AB6-F800-4c08-8B7A-83BB121AAD01}
+ rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms
+
+
+
+
+ Файлы заголовков
+
+
+ Файлы заголовков
+
+
+ Файлы заголовков
+
+
+ Файлы заголовков
+
+
+
+
+ Исходные файлы
+
+
+
+
+ Файлы ресурсов
+
+
+
+
+ Файлы ресурсов
+
+
+ Файлы ресурсов
+
+
+
\ No newline at end of file
diff --git a/5, 6 лаб/4.1 лаб 6/4.1 лаб 6/Resource.h b/5, 6 лаб/4.1 лаб 6/4.1 лаб 6/Resource.h
new file mode 100644
index 0000000..cc80cfc
--- /dev/null
+++ b/5, 6 лаб/4.1 лаб 6/4.1 лаб 6/Resource.h
@@ -0,0 +1,30 @@
+//{{NO_DEPENDENCIES}}
+// Включаемый файл, созданный в Microsoft Visual C++.
+// Используется 4.1 лаб 6.rc
+
+#define IDS_APP_TITLE 103
+
+#define IDR_MAINFRAME 128
+#define IDD_MY416_DIALOG 102
+#define IDD_ABOUTBOX 103
+#define IDM_ABOUT 104
+#define IDM_EXIT 105
+#define IDI_MY416 107
+#define IDI_SMALL 108
+#define IDC_MY416 109
+#define IDC_MYICON 2
+#ifndef IDC_STATIC
+#define IDC_STATIC -1
+#endif
+// Следующие стандартные значения для новых объектов
+//
+#ifdef APSTUDIO_INVOKED
+#ifndef APSTUDIO_READONLY_SYMBOLS
+
+#define _APS_NO_MFC 130
+#define _APS_NEXT_RESOURCE_VALUE 129
+#define _APS_NEXT_COMMAND_VALUE 32771
+#define _APS_NEXT_CONTROL_VALUE 1000
+#define _APS_NEXT_SYMED_VALUE 110
+#endif
+#endif
diff --git a/5, 6 лаб/4.1 лаб 6/4.1 лаб 6/framework.h b/5, 6 лаб/4.1 лаб 6/4.1 лаб 6/framework.h
new file mode 100644
index 0000000..a8f6dc8
--- /dev/null
+++ b/5, 6 лаб/4.1 лаб 6/4.1 лаб 6/framework.h
@@ -0,0 +1,15 @@
+// header.h: включаемый файл для стандартных системных включаемых файлов
+// или включаемые файлы для конкретного проекта
+//
+
+#pragma once
+
+#include "targetver.h"
+#define WIN32_LEAN_AND_MEAN // Исключите редко используемые компоненты из заголовков Windows
+// Файлы заголовков Windows
+#include
+// Файлы заголовков среды выполнения C
+#include
+#include
+#include
+#include
diff --git a/5, 6 лаб/4.1 лаб 6/4.1 лаб 6/small.ico b/5, 6 лаб/4.1 лаб 6/4.1 лаб 6/small.ico
new file mode 100644
index 0000000..b3ec03b
Binary files /dev/null and b/5, 6 лаб/4.1 лаб 6/4.1 лаб 6/small.ico differ
diff --git a/5, 6 лаб/4.1 лаб 6/4.1 лаб 6/targetver.h b/5, 6 лаб/4.1 лаб 6/4.1 лаб 6/targetver.h
new file mode 100644
index 0000000..d90003d
--- /dev/null
+++ b/5, 6 лаб/4.1 лаб 6/4.1 лаб 6/targetver.h
@@ -0,0 +1,6 @@
+#pragma once
+
+// // При включении SDKDDKVer.h будет задана самая новая из доступных платформ Windows.
+// Если вы планируете сборку приложения для предыдущей версии платформы Windows, включите WinSDKVer.h и
+// задайте желаемую платформу в макросе _WIN32_WINNT, прежде чем включать SDKDDKVer.h.
+#include
diff --git a/5, 6 лаб/5 лаб 5/5 лаб 5.sln b/5, 6 лаб/5 лаб 5/5 лаб 5.sln
new file mode 100644
index 0000000..a63f687
--- /dev/null
+++ b/5, 6 лаб/5 лаб 5/5 лаб 5.sln
@@ -0,0 +1,31 @@
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio Version 17
+VisualStudioVersion = 17.11.35222.181
+MinimumVisualStudioVersion = 10.0.40219.1
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "5 лаб 5", "5 лаб 5\5 лаб 5.vcxproj", "{885D8EE4-8D3D-42A9-B268-9F01F2858F5D}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|x64 = Debug|x64
+ Debug|x86 = Debug|x86
+ Release|x64 = Release|x64
+ Release|x86 = Release|x86
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {885D8EE4-8D3D-42A9-B268-9F01F2858F5D}.Debug|x64.ActiveCfg = Debug|x64
+ {885D8EE4-8D3D-42A9-B268-9F01F2858F5D}.Debug|x64.Build.0 = Debug|x64
+ {885D8EE4-8D3D-42A9-B268-9F01F2858F5D}.Debug|x86.ActiveCfg = Debug|Win32
+ {885D8EE4-8D3D-42A9-B268-9F01F2858F5D}.Debug|x86.Build.0 = Debug|Win32
+ {885D8EE4-8D3D-42A9-B268-9F01F2858F5D}.Release|x64.ActiveCfg = Release|x64
+ {885D8EE4-8D3D-42A9-B268-9F01F2858F5D}.Release|x64.Build.0 = Release|x64
+ {885D8EE4-8D3D-42A9-B268-9F01F2858F5D}.Release|x86.ActiveCfg = Release|Win32
+ {885D8EE4-8D3D-42A9-B268-9F01F2858F5D}.Release|x86.Build.0 = Release|Win32
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+ GlobalSection(ExtensibilityGlobals) = postSolution
+ SolutionGuid = {6972BFCD-1E2F-45DB-9ECA-F547F2C88FD0}
+ EndGlobalSection
+EndGlobal
diff --git a/5, 6 лаб/5 лаб 5/5 лаб 5/5 лаб 5.cpp b/5, 6 лаб/5 лаб 5/5 лаб 5/5 лаб 5.cpp
new file mode 100644
index 0000000..e0055d4
--- /dev/null
+++ b/5, 6 лаб/5 лаб 5/5 лаб 5/5 лаб 5.cpp
@@ -0,0 +1,304 @@
+// 5 лаб 5.cpp : Определяет точку входа для приложения.
+//
+
+#include "framework.h"
+#include "5 лаб 5.h"
+
+#define MAX_LOADSTRING 100
+
+// Глобальные переменные:
+HINSTANCE hInst; // текущий экземпляр
+WCHAR szTitle[MAX_LOADSTRING]; // Текст строки заголовка
+WCHAR szWindowClass[MAX_LOADSTRING]; // имя класса главного окна
+
+// Отправить объявления функций, включенных в этот модуль кода:
+ATOM MyRegisterClass(HINSTANCE hInstance);
+BOOL InitInstance(HINSTANCE, int);
+LRESULT CALLBACK WndProc(HWND, UINT, WPARAM, LPARAM);
+INT_PTR CALLBACK About(HWND, UINT, WPARAM, LPARAM);
+
+int APIENTRY wWinMain(_In_ HINSTANCE hInstance,
+ _In_opt_ HINSTANCE hPrevInstance,
+ _In_ LPWSTR lpCmdLine,
+ _In_ int nCmdShow)
+{
+ UNREFERENCED_PARAMETER(hPrevInstance);
+ UNREFERENCED_PARAMETER(lpCmdLine);
+
+ // TODO: Разместите код здесь.
+
+ // Инициализация глобальных строк
+ LoadStringW(hInstance, IDS_APP_TITLE, szTitle, MAX_LOADSTRING);
+ LoadStringW(hInstance, IDC_MY55, szWindowClass, MAX_LOADSTRING);
+ MyRegisterClass(hInstance);
+
+ // Выполнить инициализацию приложения:
+ if (!InitInstance (hInstance, nCmdShow))
+ {
+ return FALSE;
+ }
+
+ HACCEL hAccelTable = LoadAccelerators(hInstance, MAKEINTRESOURCE(IDC_MY55));
+
+ MSG msg;
+
+ // Цикл основного сообщения:
+ while (GetMessage(&msg, nullptr, 0, 0))
+ {
+ if (!TranslateAccelerator(msg.hwnd, hAccelTable, &msg))
+ {
+ TranslateMessage(&msg);
+ DispatchMessage(&msg);
+ }
+ }
+
+ return (int) msg.wParam;
+}
+
+
+
+//
+// ФУНКЦИЯ: MyRegisterClass()
+//
+// ЦЕЛЬ: Регистрирует класс окна.
+//
+ATOM MyRegisterClass(HINSTANCE hInstance)
+{
+ WNDCLASSEXW wcex;
+
+ wcex.cbSize = sizeof(WNDCLASSEX);
+
+ wcex.style = CS_HREDRAW | CS_VREDRAW;
+ wcex.lpfnWndProc = WndProc;
+ wcex.cbClsExtra = 0;
+ wcex.cbWndExtra = 0;
+ wcex.hInstance = hInstance;
+ wcex.hIcon = LoadIcon(hInstance, MAKEINTRESOURCE(IDI_MY55));
+ wcex.hCursor = LoadCursor(nullptr, IDC_ARROW);
+ wcex.hbrBackground = (HBRUSH)(COLOR_WINDOW+1);
+ wcex.lpszMenuName = MAKEINTRESOURCEW(IDC_MY55);
+ wcex.lpszClassName = szWindowClass;
+ wcex.hIconSm = LoadIcon(wcex.hInstance, MAKEINTRESOURCE(IDI_SMALL));
+
+ return RegisterClassExW(&wcex);
+}
+
+//
+// ФУНКЦИЯ: InitInstance(HINSTANCE, int)
+//
+// ЦЕЛЬ: Сохраняет маркер экземпляра и создает главное окно
+//
+// КОММЕНТАРИИ:
+//
+// В этой функции маркер экземпляра сохраняется в глобальной переменной, а также
+// создается и выводится главное окно программы.
+//
+BOOL InitInstance(HINSTANCE hInstance, int nCmdShow)
+{
+ hInst = hInstance; // Сохранить маркер экземпляра в глобальной переменной
+
+ HWND hWnd = CreateWindowW(szWindowClass, szTitle, WS_OVERLAPPEDWINDOW,
+ CW_USEDEFAULT, 0, CW_USEDEFAULT, 0, nullptr, nullptr, hInstance, nullptr);
+
+ if (!hWnd)
+ {
+ return FALSE;
+ }
+
+ ShowWindow(hWnd, nCmdShow);
+ UpdateWindow(hWnd);
+
+ return TRUE;
+}
+
+//
+// ФУНКЦИЯ: WndProc(HWND, UINT, WPARAM, LPARAM)
+//
+// ЦЕЛЬ: Обрабатывает сообщения в главном окне.
+//
+// WM_COMMAND - обработать меню приложения
+// WM_PAINT - Отрисовка главного окна
+// WM_DESTROY - отправить сообщение о выходе и вернуться
+//
+//
+LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
+{
+ switch (message)
+ {
+ case WM_COMMAND:
+ {
+ int wmId = LOWORD(wParam);
+ // Разобрать выбор в меню:
+ switch (wmId)
+ {
+ case IDM_ABOUT:
+ DialogBox(hInst, MAKEINTRESOURCE(IDD_ABOUTBOX), hWnd, About);
+ break;
+ case IDM_EXIT:
+ DestroyWindow(hWnd);
+ break;
+ default:
+ return DefWindowProc(hWnd, message, wParam, lParam);
+ }
+ }
+ break;
+ case WM_PAINT:
+ {
+ PAINTSTRUCT ps;
+ HDC hdc = BeginPaint(hWnd, &ps);
+ // TODO: Добавьте сюда любой код прорисовки, использующий HDC...
+ //ДОМ
+
+ // Крыша
+ MoveToEx(hdc, 150, 350, NULL);
+ LineTo(hdc, 275, 250);
+ LineTo(hdc, 400, 350);
+
+ // Дом
+ LineTo(hdc, 400, 525);
+ LineTo(hdc, 150, 525);
+ LineTo(hdc, 150, 350);
+ LineTo(hdc, 400, 350);
+
+ // Окно
+ MoveToEx(hdc, 225, 400, NULL);
+ LineTo(hdc, 225, 475);
+ LineTo(hdc, 325, 475);
+ LineTo(hdc, 325, 400);
+ LineTo(hdc, 225, 400);
+
+ // Рама
+ MoveToEx(hdc, 275, 400, NULL);
+ LineTo(hdc, 275, 475);
+ MoveToEx(hdc, 275, 425, NULL);
+ LineTo(hdc, 325, 425);
+
+ HPEN hPen = CreatePen(PS_SOLID, 3, RGB(0, 128, 0));
+ SelectObject(hdc, hPen);
+
+ //ЕЛКА
+
+ // Нижний ярус
+ MoveToEx(hdc, 470, 525, NULL);
+ LineTo(hdc, 520, 475);
+ LineTo(hdc, 570, 525);
+ LineTo(hdc, 470, 525);
+
+ // Средний ярус
+ MoveToEx(hdc, 490, 470, NULL);
+ LineTo(hdc, 520, 440);
+ LineTo(hdc, 550, 470);
+ LineTo(hdc, 490, 470);
+
+ // Верхний ярус
+ MoveToEx(hdc, 500, 435, NULL);
+ LineTo(hdc, 520, 415);
+ LineTo(hdc, 540, 435);
+ LineTo(hdc, 500, 435);
+
+ //Дерево
+
+ hPen = CreatePen(PS_SOLID, 3, RGB(150, 75, 0));
+ SelectObject(hdc, hPen);
+
+ HBRUSH hBrush;
+ hBrush = CreateSolidBrush(RGB(150, 75, 0));
+ SelectObject(hdc, hBrush);
+
+ // Прямоугольник
+ Rectangle(hdc, 40, 530, 50, 450);
+
+
+ hPen = CreatePen(PS_SOLID, 3, RGB(0, 128, 0));
+ SelectObject(hdc, hPen);
+
+ hBrush;
+ hBrush = CreateSolidBrush(RGB(0, 128, 0));
+ SelectObject(hdc, hBrush);
+ // Эллипс Кусты/Листья
+ Ellipse(hdc, 9, 420, 50, 450);
+ Ellipse(hdc, 40, 423, 80, 460);
+ Ellipse(hdc, 32, 370, 60, 440);
+ Ellipse(hdc, 5, 400, 40, 430);
+ Ellipse(hdc, 50, 400, 90, 430);
+
+ // забор
+ hPen = CreatePen(PS_SOLID, 3, RGB(128, 0, 0));
+ SelectObject(hdc, hPen);
+
+ {
+ int x1 = 80, y1 = 435;
+ int x2 = 80, y2 = 520;
+
+ do {
+ MoveToEx(hdc, x1, y1, NULL);
+ LineTo(hdc, x2, y2);
+
+ x1 += 25;
+ x2 += 25;
+ } while (x1 <= 200);
+
+ }
+ // горизонтальный забор
+ {
+ int x1 = 60, y1 = 460;
+ int x2 = 190, y2 = 460;
+
+ do {
+ MoveToEx(hdc, x1, y1, NULL);
+ LineTo(hdc, x2, y2);
+
+ y1 += 25;
+ y2 += 25;
+ } while (y2 <= 500);
+
+ }
+
+ // солнце
+ hBrush = CreateSolidBrush(RGB(255, 255, 255));
+ SelectObject(hdc, hBrush);
+
+ hPen = CreatePen(PS_SOLID, 3, RGB(255, 255, 0));
+ SelectObject(hdc, hPen);
+ Ellipse(hdc, 425, 150, 505, 230);
+ // лучи
+ MoveToEx(hdc, 350, 190, NULL);
+ LineTo(hdc, 410, 180);
+ MoveToEx(hdc, 390, 245, NULL);
+ LineTo(hdc, 420, 210);
+ MoveToEx(hdc, 440, 280, NULL);
+ LineTo(hdc, 450, 240);
+
+
+ EndPaint(hWnd, &ps);
+ }
+
+ break;
+ case WM_DESTROY:
+ PostQuitMessage(0);
+ break;
+ default:
+ return DefWindowProc(hWnd, message, wParam, lParam);
+ }
+ return 0;
+}
+
+// Обработчик сообщений для окна "О программе".
+INT_PTR CALLBACK About(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam)
+{
+ UNREFERENCED_PARAMETER(lParam);
+ switch (message)
+ {
+ case WM_INITDIALOG:
+ return (INT_PTR)TRUE;
+
+ case WM_COMMAND:
+ if (LOWORD(wParam) == IDOK || LOWORD(wParam) == IDCANCEL)
+ {
+ EndDialog(hDlg, LOWORD(wParam));
+ return (INT_PTR)TRUE;
+ }
+ break;
+ }
+ return (INT_PTR)FALSE;
+}
diff --git a/5, 6 лаб/5 лаб 5/5 лаб 5/5 лаб 5.h b/5, 6 лаб/5 лаб 5/5 лаб 5/5 лаб 5.h
new file mode 100644
index 0000000..b798bf5
--- /dev/null
+++ b/5, 6 лаб/5 лаб 5/5 лаб 5/5 лаб 5.h
@@ -0,0 +1,3 @@
+#pragma once
+
+#include "resource.h"
diff --git a/5, 6 лаб/5 лаб 5/5 лаб 5/5 лаб 5.ico b/5, 6 лаб/5 лаб 5/5 лаб 5/5 лаб 5.ico
new file mode 100644
index 0000000..b3ec03b
Binary files /dev/null and b/5, 6 лаб/5 лаб 5/5 лаб 5/5 лаб 5.ico differ
diff --git a/5, 6 лаб/5 лаб 5/5 лаб 5/5 лаб 5.rc b/5, 6 лаб/5 лаб 5/5 лаб 5/5 лаб 5.rc
new file mode 100644
index 0000000..6ab6295
Binary files /dev/null and b/5, 6 лаб/5 лаб 5/5 лаб 5/5 лаб 5.rc differ
diff --git a/5, 6 лаб/5 лаб 5/5 лаб 5/5 лаб 5.vcxproj b/5, 6 лаб/5 лаб 5/5 лаб 5/5 лаб 5.vcxproj
new file mode 100644
index 0000000..173583b
--- /dev/null
+++ b/5, 6 лаб/5 лаб 5/5 лаб 5/5 лаб 5.vcxproj
@@ -0,0 +1,148 @@
+
+
+
+
+ Debug
+ Win32
+
+
+ Release
+ Win32
+
+
+ Debug
+ x64
+
+
+ Release
+ x64
+
+
+
+ 17.0
+ Win32Proj
+ {885d8ee4-8d3d-42a9-b268-9f01f2858f5d}
+ My5лаб5
+ 10.0
+
+
+
+ Application
+ true
+ v143
+ Unicode
+
+
+ Application
+ false
+ v143
+ true
+ Unicode
+
+
+ Application
+ true
+ v143
+ Unicode
+
+
+ Application
+ false
+ v143
+ true
+ Unicode
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Level3
+ true
+ WIN32;_DEBUG;_WINDOWS;%(PreprocessorDefinitions)
+ true
+
+
+ Windows
+ true
+
+
+
+
+ Level3
+ true
+ true
+ true
+ WIN32;NDEBUG;_WINDOWS;%(PreprocessorDefinitions)
+ true
+
+
+ Windows
+ true
+ true
+ true
+
+
+
+
+ Level3
+ true
+ _DEBUG;_WINDOWS;%(PreprocessorDefinitions)
+ true
+
+
+ Windows
+ true
+
+
+
+
+ Level3
+ true
+ true
+ true
+ NDEBUG;_WINDOWS;%(PreprocessorDefinitions)
+ true
+
+
+ Windows
+ true
+ true
+ true
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/5, 6 лаб/5 лаб 5/5 лаб 5/5 лаб 5.vcxproj.filters b/5, 6 лаб/5 лаб 5/5 лаб 5/5 лаб 5.vcxproj.filters
new file mode 100644
index 0000000..1357b8c
--- /dev/null
+++ b/5, 6 лаб/5 лаб 5/5 лаб 5/5 лаб 5.vcxproj.filters
@@ -0,0 +1,49 @@
+
+
+
+
+ {4FC737F1-C7A5-4376-A066-2A32D752A2FF}
+ cpp;c;cc;cxx;c++;cppm;ixx;def;odl;idl;hpj;bat;asm;asmx
+
+
+ {93995380-89BD-4b04-88EB-625FBE52EBFB}
+ h;hh;hpp;hxx;h++;hm;inl;inc;ipp;xsd
+
+
+ {67DA6AB6-F800-4c08-8B7A-83BB121AAD01}
+ rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms
+
+
+
+
+ Файлы заголовков
+
+
+ Файлы заголовков
+
+
+ Файлы заголовков
+
+
+ Файлы заголовков
+
+
+
+
+ Исходные файлы
+
+
+
+
+ Файлы ресурсов
+
+
+
+
+ Файлы ресурсов
+
+
+ Файлы ресурсов
+
+
+
\ No newline at end of file
diff --git a/5, 6 лаб/5 лаб 5/5 лаб 5/Resource.h b/5, 6 лаб/5 лаб 5/5 лаб 5/Resource.h
new file mode 100644
index 0000000..769547c
--- /dev/null
+++ b/5, 6 лаб/5 лаб 5/5 лаб 5/Resource.h
@@ -0,0 +1,30 @@
+//{{NO_DEPENDENCIES}}
+// Включаемый файл, созданный в Microsoft Visual C++.
+// Используется 5 лаб 5.rc
+
+#define IDS_APP_TITLE 103
+
+#define IDR_MAINFRAME 128
+#define IDD_MY55_DIALOG 102
+#define IDD_ABOUTBOX 103
+#define IDM_ABOUT 104
+#define IDM_EXIT 105
+#define IDI_MY55 107
+#define IDI_SMALL 108
+#define IDC_MY55 109
+#define IDC_MYICON 2
+#ifndef IDC_STATIC
+#define IDC_STATIC -1
+#endif
+// Следующие стандартные значения для новых объектов
+//
+#ifdef APSTUDIO_INVOKED
+#ifndef APSTUDIO_READONLY_SYMBOLS
+
+#define _APS_NO_MFC 130
+#define _APS_NEXT_RESOURCE_VALUE 129
+#define _APS_NEXT_COMMAND_VALUE 32771
+#define _APS_NEXT_CONTROL_VALUE 1000
+#define _APS_NEXT_SYMED_VALUE 110
+#endif
+#endif
diff --git a/5, 6 лаб/5 лаб 5/5 лаб 5/framework.h b/5, 6 лаб/5 лаб 5/5 лаб 5/framework.h
new file mode 100644
index 0000000..a8f6dc8
--- /dev/null
+++ b/5, 6 лаб/5 лаб 5/5 лаб 5/framework.h
@@ -0,0 +1,15 @@
+// header.h: включаемый файл для стандартных системных включаемых файлов
+// или включаемые файлы для конкретного проекта
+//
+
+#pragma once
+
+#include "targetver.h"
+#define WIN32_LEAN_AND_MEAN // Исключите редко используемые компоненты из заголовков Windows
+// Файлы заголовков Windows
+#include
+// Файлы заголовков среды выполнения C
+#include
+#include
+#include
+#include
diff --git a/5, 6 лаб/5 лаб 5/5 лаб 5/small.ico b/5, 6 лаб/5 лаб 5/5 лаб 5/small.ico
new file mode 100644
index 0000000..b3ec03b
Binary files /dev/null and b/5, 6 лаб/5 лаб 5/5 лаб 5/small.ico differ
diff --git a/5, 6 лаб/5 лаб 5/5 лаб 5/targetver.h b/5, 6 лаб/5 лаб 5/5 лаб 5/targetver.h
new file mode 100644
index 0000000..d90003d
--- /dev/null
+++ b/5, 6 лаб/5 лаб 5/5 лаб 5/targetver.h
@@ -0,0 +1,6 @@
+#pragma once
+
+// // При включении SDKDDKVer.h будет задана самая новая из доступных платформ Windows.
+// Если вы планируете сборку приложения для предыдущей версии платформы Windows, включите WinSDKVer.h и
+// задайте желаемую платформу в макросе _WIN32_WINNT, прежде чем включать SDKDDKVer.h.
+#include
diff --git a/5, 6 лаб/5 лаб 6/5 лаб 6.sln b/5, 6 лаб/5 лаб 6/5 лаб 6.sln
new file mode 100644
index 0000000..ca90868
--- /dev/null
+++ b/5, 6 лаб/5 лаб 6/5 лаб 6.sln
@@ -0,0 +1,31 @@
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio Version 17
+VisualStudioVersion = 17.11.35222.181
+MinimumVisualStudioVersion = 10.0.40219.1
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "5 лаб 6", "5 лаб 6\5 лаб 6.vcxproj", "{433053D9-E40B-401C-ACEB-FBD2715E5E94}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|x64 = Debug|x64
+ Debug|x86 = Debug|x86
+ Release|x64 = Release|x64
+ Release|x86 = Release|x86
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {433053D9-E40B-401C-ACEB-FBD2715E5E94}.Debug|x64.ActiveCfg = Debug|x64
+ {433053D9-E40B-401C-ACEB-FBD2715E5E94}.Debug|x64.Build.0 = Debug|x64
+ {433053D9-E40B-401C-ACEB-FBD2715E5E94}.Debug|x86.ActiveCfg = Debug|Win32
+ {433053D9-E40B-401C-ACEB-FBD2715E5E94}.Debug|x86.Build.0 = Debug|Win32
+ {433053D9-E40B-401C-ACEB-FBD2715E5E94}.Release|x64.ActiveCfg = Release|x64
+ {433053D9-E40B-401C-ACEB-FBD2715E5E94}.Release|x64.Build.0 = Release|x64
+ {433053D9-E40B-401C-ACEB-FBD2715E5E94}.Release|x86.ActiveCfg = Release|Win32
+ {433053D9-E40B-401C-ACEB-FBD2715E5E94}.Release|x86.Build.0 = Release|Win32
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+ GlobalSection(ExtensibilityGlobals) = postSolution
+ SolutionGuid = {CCA72368-ACA0-4EEB-A84D-37C63715F8A6}
+ EndGlobalSection
+EndGlobal
diff --git a/5, 6 лаб/5 лаб 6/5 лаб 6/5 лаб 6.cpp b/5, 6 лаб/5 лаб 6/5 лаб 6/5 лаб 6.cpp
new file mode 100644
index 0000000..800d244
--- /dev/null
+++ b/5, 6 лаб/5 лаб 6/5 лаб 6/5 лаб 6.cpp
@@ -0,0 +1,310 @@
+// 5 лаб 6.cpp : Определяет точку входа для приложения.
+//
+
+#include "framework.h"
+#include "5 лаб 6.h"
+
+#define MAX_LOADSTRING 100
+
+// Глобальные переменные:
+HINSTANCE hInst; // текущий экземпляр
+WCHAR szTitle[MAX_LOADSTRING]; // Текст строки заголовка
+WCHAR szWindowClass[MAX_LOADSTRING]; // имя класса главного окна
+
+// Отправить объявления функций, включенных в этот модуль кода:
+ATOM MyRegisterClass(HINSTANCE hInstance);
+BOOL InitInstance(HINSTANCE, int);
+LRESULT CALLBACK WndProc(HWND, UINT, WPARAM, LPARAM);
+INT_PTR CALLBACK About(HWND, UINT, WPARAM, LPARAM);
+
+int APIENTRY wWinMain(_In_ HINSTANCE hInstance,
+ _In_opt_ HINSTANCE hPrevInstance,
+ _In_ LPWSTR lpCmdLine,
+ _In_ int nCmdShow)
+{
+ UNREFERENCED_PARAMETER(hPrevInstance);
+ UNREFERENCED_PARAMETER(lpCmdLine);
+
+ // TODO: Разместите код здесь.
+
+ // Инициализация глобальных строк
+ LoadStringW(hInstance, IDS_APP_TITLE, szTitle, MAX_LOADSTRING);
+ LoadStringW(hInstance, IDC_MY56, szWindowClass, MAX_LOADSTRING);
+ MyRegisterClass(hInstance);
+
+ // Выполнить инициализацию приложения:
+ if (!InitInstance (hInstance, nCmdShow))
+ {
+ return FALSE;
+ }
+
+ HACCEL hAccelTable = LoadAccelerators(hInstance, MAKEINTRESOURCE(IDC_MY56));
+
+ MSG msg;
+
+ // Цикл основного сообщения:
+ while (GetMessage(&msg, nullptr, 0, 0))
+ {
+ if (!TranslateAccelerator(msg.hwnd, hAccelTable, &msg))
+ {
+ TranslateMessage(&msg);
+ DispatchMessage(&msg);
+ }
+ }
+
+ return (int) msg.wParam;
+}
+
+
+
+//
+// ФУНКЦИЯ: MyRegisterClass()
+//
+// ЦЕЛЬ: Регистрирует класс окна.
+//
+ATOM MyRegisterClass(HINSTANCE hInstance)
+{
+ WNDCLASSEXW wcex;
+
+ wcex.cbSize = sizeof(WNDCLASSEX);
+
+ wcex.style = CS_HREDRAW | CS_VREDRAW;
+ wcex.lpfnWndProc = WndProc;
+ wcex.cbClsExtra = 0;
+ wcex.cbWndExtra = 0;
+ wcex.hInstance = hInstance;
+ wcex.hIcon = LoadIcon(hInstance, MAKEINTRESOURCE(IDI_MY56));
+ wcex.hCursor = LoadCursor(nullptr, IDC_ARROW);
+ wcex.hbrBackground = (HBRUSH)(COLOR_WINDOW+1);
+ wcex.lpszMenuName = MAKEINTRESOURCEW(IDC_MY56);
+ wcex.lpszClassName = szWindowClass;
+ wcex.hIconSm = LoadIcon(wcex.hInstance, MAKEINTRESOURCE(IDI_SMALL));
+
+ return RegisterClassExW(&wcex);
+}
+
+//
+// ФУНКЦИЯ: InitInstance(HINSTANCE, int)
+//
+// ЦЕЛЬ: Сохраняет маркер экземпляра и создает главное окно
+//
+// КОММЕНТАРИИ:
+//
+// В этой функции маркер экземпляра сохраняется в глобальной переменной, а также
+// создается и выводится главное окно программы.
+//
+BOOL InitInstance(HINSTANCE hInstance, int nCmdShow)
+{
+ hInst = hInstance; // Сохранить маркер экземпляра в глобальной переменной
+
+ HWND hWnd = CreateWindowW(szWindowClass, szTitle, WS_OVERLAPPEDWINDOW,
+ CW_USEDEFAULT, 0, CW_USEDEFAULT, 0, nullptr, nullptr, hInstance, nullptr);
+
+ if (!hWnd)
+ {
+ return FALSE;
+ }
+
+ ShowWindow(hWnd, nCmdShow);
+ UpdateWindow(hWnd);
+
+ return TRUE;
+}
+
+//
+// ФУНКЦИЯ: WndProc(HWND, UINT, WPARAM, LPARAM)
+//
+// ЦЕЛЬ: Обрабатывает сообщения в главном окне.
+//
+// WM_COMMAND - обработать меню приложения
+// WM_PAINT - Отрисовка главного окна
+// WM_DESTROY - отправить сообщение о выходе и вернуться
+//
+//
+LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
+{
+ switch (message)
+ {
+ case WM_COMMAND:
+ {
+ int wmId = LOWORD(wParam);
+ // Разобрать выбор в меню:
+ switch (wmId)
+ {
+ case IDM_ABOUT:
+ DialogBox(hInst, MAKEINTRESOURCE(IDD_ABOUTBOX), hWnd, About);
+ break;
+ case IDM_EXIT:
+ DestroyWindow(hWnd);
+ break;
+ default:
+ return DefWindowProc(hWnd, message, wParam, lParam);
+ }
+ }
+ break;
+ case WM_PAINT:
+ {
+ PAINTSTRUCT ps;
+ HDC hdc = BeginPaint(hWnd, &ps);
+ // TODO: Добавьте сюда любой код прорисовки, использующий HDC...
+
+ HPEN hPen = CreatePen(PS_SOLID, 3, RGB(255, 192, 203));
+ SelectObject(hdc, hPen);
+ //ДОМ
+
+ // Крыша
+ MoveToEx(hdc, 150, 350, NULL);
+ LineTo(hdc, 275, 250);
+ LineTo(hdc, 400, 350);
+
+ // Дом
+ LineTo(hdc, 400, 525);
+ LineTo(hdc, 150, 525);
+ LineTo(hdc, 150, 350);
+ LineTo(hdc, 400, 350);
+
+ // Окно
+ MoveToEx(hdc, 225, 400, NULL);
+ LineTo(hdc, 225, 475);
+ LineTo(hdc, 325, 475);
+ LineTo(hdc, 325, 400);
+ LineTo(hdc, 225, 400);
+
+ // Рама
+ MoveToEx(hdc, 275, 400, NULL);
+ LineTo(hdc, 275, 475);
+ MoveToEx(hdc, 275, 425, NULL);
+ LineTo(hdc, 325, 425);
+
+ hPen = CreatePen(PS_SOLID, 3, RGB(0, 128, 0));
+ SelectObject(hdc, hPen);
+
+ //ЕЛКА
+
+ // Нижний ярус
+ MoveToEx(hdc, 470, 525, NULL);
+ LineTo(hdc, 520, 475);
+ LineTo(hdc, 570, 525);
+ LineTo(hdc, 470, 525);
+
+ // Средний ярус
+ MoveToEx(hdc, 490, 470, NULL);
+ LineTo(hdc, 520, 440);
+ LineTo(hdc, 550, 470);
+ LineTo(hdc, 490, 470);
+
+ // Верхний ярус
+ MoveToEx(hdc, 500, 435, NULL);
+ LineTo(hdc, 520, 415);
+ LineTo(hdc, 540, 435);
+ LineTo(hdc, 500, 435);
+
+ hPen = CreatePen(PS_SOLID, 3, RGB(139, 0, 255));
+ SelectObject(hdc, hPen);
+ // 1 лаб 6
+
+ // первая точка - конец ветки куста
+ int x1 = 400, y1 = 150;
+ // вторая точка - корень куста
+ int x2 = 500, y2 = 250;
+
+ // соединяем линией первую точку со второй
+ do {
+ MoveToEx(hdc, x1, y1, NULL);
+ LineTo(hdc, x2, y2);
+
+ // первую точку перемещаем вправо на 25 пикселей
+ x1 += 25;
+ } while (x1 <= 600);
+
+
+ //2 лаб 6
+ hPen = CreatePen(PS_SOLID, 3, RGB(0, 0, 128));
+ SelectObject(hdc, hPen);
+
+ { // Начало блока - чтобы можно было создавать локальные переменные!
+ // первая точка - кончик ветки куста
+ int x1 = 0, y1 = 250;
+ // вторая точка - корень куста
+ int x2 = 100, y2 = 250;
+
+ do {
+ // соединяем линией первую точку со второй
+ MoveToEx(hdc, x1, y1, NULL);
+ LineTo(hdc, x2, y2);
+
+ // первую точку перемещаем вправо на 25 пикселей
+ x1 += 25;
+ // перемещаем вверх на 50 пикселей
+ y1 -= 50;
+ } while (x1 <= 100);
+
+ x1 = 100;
+ y1 = 50;
+
+ do {
+ // соединяем линией первую точку со второй
+ MoveToEx(hdc, x1, y1, NULL);
+ LineTo(hdc, x2, y2);
+
+ // первую точку перемещаем вправо на 25 пикселей
+ x1 += 25;
+ // перемещаем вниз на 50 пикселей
+ y1 += 50;
+ } while (x1 <= 200);
+
+ }
+
+ // 4 лаб 6
+ hPen = CreatePen(PS_SOLID, 3, RGB(128, 0, 0));
+ SelectObject(hdc, hPen);
+
+ {
+ int x1 = 150, y1 = 0;
+ int x2 = 150, y2 = 100;
+
+ do {
+ MoveToEx(hdc, x1, y1, NULL);
+ LineTo(hdc, x2, y2);
+
+ x1 += 25;
+ x2 += 25;
+ } while (x1 <= 450);
+
+ }
+
+
+
+
+
+ EndPaint(hWnd, &ps);
+ }
+ break;
+ case WM_DESTROY:
+ PostQuitMessage(0);
+ break;
+ default:
+ return DefWindowProc(hWnd, message, wParam, lParam);
+ }
+ return 0;
+}
+
+// Обработчик сообщений для окна "О программе".
+INT_PTR CALLBACK About(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam)
+{
+ UNREFERENCED_PARAMETER(lParam);
+ switch (message)
+ {
+ case WM_INITDIALOG:
+ return (INT_PTR)TRUE;
+
+ case WM_COMMAND:
+ if (LOWORD(wParam) == IDOK || LOWORD(wParam) == IDCANCEL)
+ {
+ EndDialog(hDlg, LOWORD(wParam));
+ return (INT_PTR)TRUE;
+ }
+ break;
+ }
+ return (INT_PTR)FALSE;
+}
diff --git a/5, 6 лаб/5 лаб 6/5 лаб 6/5 лаб 6.h b/5, 6 лаб/5 лаб 6/5 лаб 6/5 лаб 6.h
new file mode 100644
index 0000000..b798bf5
--- /dev/null
+++ b/5, 6 лаб/5 лаб 6/5 лаб 6/5 лаб 6.h
@@ -0,0 +1,3 @@
+#pragma once
+
+#include "resource.h"
diff --git a/5, 6 лаб/5 лаб 6/5 лаб 6/5 лаб 6.ico b/5, 6 лаб/5 лаб 6/5 лаб 6/5 лаб 6.ico
new file mode 100644
index 0000000..b3ec03b
Binary files /dev/null and b/5, 6 лаб/5 лаб 6/5 лаб 6/5 лаб 6.ico differ
diff --git a/5, 6 лаб/5 лаб 6/5 лаб 6/5 лаб 6.rc b/5, 6 лаб/5 лаб 6/5 лаб 6/5 лаб 6.rc
new file mode 100644
index 0000000..a0070fe
Binary files /dev/null and b/5, 6 лаб/5 лаб 6/5 лаб 6/5 лаб 6.rc differ
diff --git a/5, 6 лаб/5 лаб 6/5 лаб 6/5 лаб 6.vcxproj b/5, 6 лаб/5 лаб 6/5 лаб 6/5 лаб 6.vcxproj
new file mode 100644
index 0000000..6d54f39
--- /dev/null
+++ b/5, 6 лаб/5 лаб 6/5 лаб 6/5 лаб 6.vcxproj
@@ -0,0 +1,148 @@
+
+
+
+
+ Debug
+ Win32
+
+
+ Release
+ Win32
+
+
+ Debug
+ x64
+
+
+ Release
+ x64
+
+
+
+ 17.0
+ Win32Proj
+ {433053d9-e40b-401c-aceb-fbd2715e5e94}
+ My5лаб6
+ 10.0
+
+
+
+ Application
+ true
+ v143
+ Unicode
+
+
+ Application
+ false
+ v143
+ true
+ Unicode
+
+
+ Application
+ true
+ v143
+ Unicode
+
+
+ Application
+ false
+ v143
+ true
+ Unicode
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Level3
+ true
+ WIN32;_DEBUG;_WINDOWS;%(PreprocessorDefinitions)
+ true
+
+
+ Windows
+ true
+
+
+
+
+ Level3
+ true
+ true
+ true
+ WIN32;NDEBUG;_WINDOWS;%(PreprocessorDefinitions)
+ true
+
+
+ Windows
+ true
+ true
+ true
+
+
+
+
+ Level3
+ true
+ _DEBUG;_WINDOWS;%(PreprocessorDefinitions)
+ true
+
+
+ Windows
+ true
+
+
+
+
+ Level3
+ true
+ true
+ true
+ NDEBUG;_WINDOWS;%(PreprocessorDefinitions)
+ true
+
+
+ Windows
+ true
+ true
+ true
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/5, 6 лаб/5 лаб 6/5 лаб 6/5 лаб 6.vcxproj.filters b/5, 6 лаб/5 лаб 6/5 лаб 6/5 лаб 6.vcxproj.filters
new file mode 100644
index 0000000..a921e45
--- /dev/null
+++ b/5, 6 лаб/5 лаб 6/5 лаб 6/5 лаб 6.vcxproj.filters
@@ -0,0 +1,49 @@
+
+
+
+
+ {4FC737F1-C7A5-4376-A066-2A32D752A2FF}
+ cpp;c;cc;cxx;c++;cppm;ixx;def;odl;idl;hpj;bat;asm;asmx
+
+
+ {93995380-89BD-4b04-88EB-625FBE52EBFB}
+ h;hh;hpp;hxx;h++;hm;inl;inc;ipp;xsd
+
+
+ {67DA6AB6-F800-4c08-8B7A-83BB121AAD01}
+ rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms
+
+
+
+
+ Файлы заголовков
+
+
+ Файлы заголовков
+
+
+ Файлы заголовков
+
+
+ Файлы заголовков
+
+
+
+
+ Исходные файлы
+
+
+
+
+ Файлы ресурсов
+
+
+
+
+ Файлы ресурсов
+
+
+ Файлы ресурсов
+
+
+
\ No newline at end of file
diff --git a/5, 6 лаб/5 лаб 6/5 лаб 6/Resource.h b/5, 6 лаб/5 лаб 6/5 лаб 6/Resource.h
new file mode 100644
index 0000000..e7d8d85
--- /dev/null
+++ b/5, 6 лаб/5 лаб 6/5 лаб 6/Resource.h
@@ -0,0 +1,30 @@
+//{{NO_DEPENDENCIES}}
+// Включаемый файл, созданный в Microsoft Visual C++.
+// Используется 5 лаб 6.rc
+
+#define IDS_APP_TITLE 103
+
+#define IDR_MAINFRAME 128
+#define IDD_MY56_DIALOG 102
+#define IDD_ABOUTBOX 103
+#define IDM_ABOUT 104
+#define IDM_EXIT 105
+#define IDI_MY56 107
+#define IDI_SMALL 108
+#define IDC_MY56 109
+#define IDC_MYICON 2
+#ifndef IDC_STATIC
+#define IDC_STATIC -1
+#endif
+// Следующие стандартные значения для новых объектов
+//
+#ifdef APSTUDIO_INVOKED
+#ifndef APSTUDIO_READONLY_SYMBOLS
+
+#define _APS_NO_MFC 130
+#define _APS_NEXT_RESOURCE_VALUE 129
+#define _APS_NEXT_COMMAND_VALUE 32771
+#define _APS_NEXT_CONTROL_VALUE 1000
+#define _APS_NEXT_SYMED_VALUE 110
+#endif
+#endif
diff --git a/5, 6 лаб/5 лаб 6/5 лаб 6/framework.h b/5, 6 лаб/5 лаб 6/5 лаб 6/framework.h
new file mode 100644
index 0000000..a8f6dc8
--- /dev/null
+++ b/5, 6 лаб/5 лаб 6/5 лаб 6/framework.h
@@ -0,0 +1,15 @@
+// header.h: включаемый файл для стандартных системных включаемых файлов
+// или включаемые файлы для конкретного проекта
+//
+
+#pragma once
+
+#include "targetver.h"
+#define WIN32_LEAN_AND_MEAN // Исключите редко используемые компоненты из заголовков Windows
+// Файлы заголовков Windows
+#include
+// Файлы заголовков среды выполнения C
+#include
+#include
+#include
+#include
diff --git a/5, 6 лаб/5 лаб 6/5 лаб 6/small.ico b/5, 6 лаб/5 лаб 6/5 лаб 6/small.ico
new file mode 100644
index 0000000..b3ec03b
Binary files /dev/null and b/5, 6 лаб/5 лаб 6/5 лаб 6/small.ico differ
diff --git a/5, 6 лаб/5 лаб 6/5 лаб 6/targetver.h b/5, 6 лаб/5 лаб 6/5 лаб 6/targetver.h
new file mode 100644
index 0000000..d90003d
--- /dev/null
+++ b/5, 6 лаб/5 лаб 6/5 лаб 6/targetver.h
@@ -0,0 +1,6 @@
+#pragma once
+
+// // При включении SDKDDKVer.h будет задана самая новая из доступных платформ Windows.
+// Если вы планируете сборку приложения для предыдущей версии платформы Windows, включите WinSDKVer.h и
+// задайте желаемую платформу в макросе _WIN32_WINNT, прежде чем включать SDKDDKVer.h.
+#include
diff --git a/5, 6 лаб/8 лаб 5/8 лаб 5.sln b/5, 6 лаб/8 лаб 5/8 лаб 5.sln
new file mode 100644
index 0000000..4ac60b4
--- /dev/null
+++ b/5, 6 лаб/8 лаб 5/8 лаб 5.sln
@@ -0,0 +1,31 @@
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio Version 17
+VisualStudioVersion = 17.11.35222.181
+MinimumVisualStudioVersion = 10.0.40219.1
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "8 лаб 5", "8 лаб 5\8 лаб 5.vcxproj", "{68DDF938-6FBE-4806-9175-04CA93978488}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|x64 = Debug|x64
+ Debug|x86 = Debug|x86
+ Release|x64 = Release|x64
+ Release|x86 = Release|x86
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {68DDF938-6FBE-4806-9175-04CA93978488}.Debug|x64.ActiveCfg = Debug|x64
+ {68DDF938-6FBE-4806-9175-04CA93978488}.Debug|x64.Build.0 = Debug|x64
+ {68DDF938-6FBE-4806-9175-04CA93978488}.Debug|x86.ActiveCfg = Debug|Win32
+ {68DDF938-6FBE-4806-9175-04CA93978488}.Debug|x86.Build.0 = Debug|Win32
+ {68DDF938-6FBE-4806-9175-04CA93978488}.Release|x64.ActiveCfg = Release|x64
+ {68DDF938-6FBE-4806-9175-04CA93978488}.Release|x64.Build.0 = Release|x64
+ {68DDF938-6FBE-4806-9175-04CA93978488}.Release|x86.ActiveCfg = Release|Win32
+ {68DDF938-6FBE-4806-9175-04CA93978488}.Release|x86.Build.0 = Release|Win32
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+ GlobalSection(ExtensibilityGlobals) = postSolution
+ SolutionGuid = {8A01C625-C57C-42F8-BC12-EE437D9526F5}
+ EndGlobalSection
+EndGlobal
diff --git a/5, 6 лаб/8 лаб 5/8 лаб 5/8 лаб 5.cpp b/5, 6 лаб/8 лаб 5/8 лаб 5/8 лаб 5.cpp
new file mode 100644
index 0000000..a3cabe4
--- /dev/null
+++ b/5, 6 лаб/8 лаб 5/8 лаб 5/8 лаб 5.cpp
@@ -0,0 +1,239 @@
+// 8 лаб 5.cpp : Определяет точку входа для приложения.
+//
+
+#include "framework.h"
+#include "8 лаб 5.h"
+
+#define MAX_LOADSTRING 100
+
+// Глобальные переменные:
+HINSTANCE hInst; // текущий экземпляр
+WCHAR szTitle[MAX_LOADSTRING]; // Текст строки заголовка
+WCHAR szWindowClass[MAX_LOADSTRING]; // имя класса главного окна
+
+// Отправить объявления функций, включенных в этот модуль кода:
+ATOM MyRegisterClass(HINSTANCE hInstance);
+BOOL InitInstance(HINSTANCE, int);
+LRESULT CALLBACK WndProc(HWND, UINT, WPARAM, LPARAM);
+INT_PTR CALLBACK About(HWND, UINT, WPARAM, LPARAM);
+
+int APIENTRY wWinMain(_In_ HINSTANCE hInstance,
+ _In_opt_ HINSTANCE hPrevInstance,
+ _In_ LPWSTR lpCmdLine,
+ _In_ int nCmdShow)
+{
+ UNREFERENCED_PARAMETER(hPrevInstance);
+ UNREFERENCED_PARAMETER(lpCmdLine);
+
+ // TODO: Разместите код здесь.
+
+ // Инициализация глобальных строк
+ LoadStringW(hInstance, IDS_APP_TITLE, szTitle, MAX_LOADSTRING);
+ LoadStringW(hInstance, IDC_MY85, szWindowClass, MAX_LOADSTRING);
+ MyRegisterClass(hInstance);
+
+ // Выполнить инициализацию приложения:
+ if (!InitInstance (hInstance, nCmdShow))
+ {
+ return FALSE;
+ }
+
+ HACCEL hAccelTable = LoadAccelerators(hInstance, MAKEINTRESOURCE(IDC_MY85));
+
+ MSG msg;
+
+ // Цикл основного сообщения:
+ while (GetMessage(&msg, nullptr, 0, 0))
+ {
+ if (!TranslateAccelerator(msg.hwnd, hAccelTable, &msg))
+ {
+ TranslateMessage(&msg);
+ DispatchMessage(&msg);
+ }
+ }
+
+ return (int) msg.wParam;
+}
+
+
+
+//
+// ФУНКЦИЯ: MyRegisterClass()
+//
+// ЦЕЛЬ: Регистрирует класс окна.
+//
+ATOM MyRegisterClass(HINSTANCE hInstance)
+{
+ WNDCLASSEXW wcex;
+
+ wcex.cbSize = sizeof(WNDCLASSEX);
+
+ wcex.style = CS_HREDRAW | CS_VREDRAW;
+ wcex.lpfnWndProc = WndProc;
+ wcex.cbClsExtra = 0;
+ wcex.cbWndExtra = 0;
+ wcex.hInstance = hInstance;
+ wcex.hIcon = LoadIcon(hInstance, MAKEINTRESOURCE(IDI_MY85));
+ wcex.hCursor = LoadCursor(nullptr, IDC_ARROW);
+ wcex.hbrBackground = (HBRUSH)(COLOR_WINDOW+1);
+ wcex.lpszMenuName = MAKEINTRESOURCEW(IDC_MY85);
+ wcex.lpszClassName = szWindowClass;
+ wcex.hIconSm = LoadIcon(wcex.hInstance, MAKEINTRESOURCE(IDI_SMALL));
+
+ return RegisterClassExW(&wcex);
+}
+
+//
+// ФУНКЦИЯ: InitInstance(HINSTANCE, int)
+//
+// ЦЕЛЬ: Сохраняет маркер экземпляра и создает главное окно
+//
+// КОММЕНТАРИИ:
+//
+// В этой функции маркер экземпляра сохраняется в глобальной переменной, а также
+// создается и выводится главное окно программы.
+//
+BOOL InitInstance(HINSTANCE hInstance, int nCmdShow)
+{
+ hInst = hInstance; // Сохранить маркер экземпляра в глобальной переменной
+
+ HWND hWnd = CreateWindowW(szWindowClass, szTitle, WS_OVERLAPPEDWINDOW,
+ CW_USEDEFAULT, 0, CW_USEDEFAULT, 0, nullptr, nullptr, hInstance, nullptr);
+
+ if (!hWnd)
+ {
+ return FALSE;
+ }
+
+ ShowWindow(hWnd, nCmdShow);
+ UpdateWindow(hWnd);
+
+ return TRUE;
+}
+
+//
+// ФУНКЦИЯ: WndProc(HWND, UINT, WPARAM, LPARAM)
+//
+// ЦЕЛЬ: Обрабатывает сообщения в главном окне.
+//
+// WM_COMMAND - обработать меню приложения
+// WM_PAINT - Отрисовка главного окна
+// WM_DESTROY - отправить сообщение о выходе и вернуться
+//
+//
+LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
+{
+ switch (message)
+ {
+ case WM_COMMAND:
+ {
+ int wmId = LOWORD(wParam);
+ // Разобрать выбор в меню:
+ switch (wmId)
+ {
+ case IDM_ABOUT:
+ DialogBox(hInst, MAKEINTRESOURCE(IDD_ABOUTBOX), hWnd, About);
+ break;
+ case IDM_EXIT:
+ DestroyWindow(hWnd);
+ break;
+ default:
+ return DefWindowProc(hWnd, message, wParam, lParam);
+ }
+ }
+ break;
+ case WM_PAINT:
+ {
+ PAINTSTRUCT ps;
+ HDC hdc = BeginPaint(hWnd, &ps);
+ // TODO: Добавьте сюда любой код прорисовки, использующий HDC...
+
+ HPEN hPen = CreatePen(PS_SOLID, 2, RGB(128, 128, 128)); // Серый цвет
+ SelectObject(hdc, hPen);
+
+
+ // Кузов автобуса
+ HBRUSH hBrush = CreateSolidBrush(RGB(128, 128, 128));
+ SelectObject(hdc, hBrush);
+ Rectangle(hdc, 100, 200, 400, 350);
+
+ // Двери
+ hBrush = CreateSolidBrush(RGB(181, 184, 177)); // Ссветло-серый цвет
+ SelectObject(hdc, hBrush);
+ Rectangle(hdc, 265, 230, 313, 340);
+ Rectangle(hdc, 315, 230, 360, 340);
+
+ //ручки двери
+ hBrush = CreateSolidBrush(RGB(150, 75, 0)); //коричневый цвет
+ SelectObject(hdc, hBrush);
+
+ hPen = CreatePen(PS_SOLID, 2, RGB(150, 75, 0)); // коричневый цвет
+ SelectObject(hdc, hPen);
+
+ Rectangle(hdc, 300, 270, 311, 290);
+ Rectangle(hdc, 315, 270, 325, 290);
+
+ // Окна
+
+ hBrush = CreateSolidBrush(RGB(0, 150, 255)); // Голубой цвет
+ SelectObject(hdc, hBrush);
+ hPen = CreatePen(PS_SOLID, 2, RGB(0, 150, 255)); // Голубой цвет
+ SelectObject(hdc, hPen);
+
+ Rectangle(hdc, 115, 230, 150, 280);
+ Rectangle(hdc, 170, 230, 203, 280);
+ Rectangle(hdc, 215, 230, 250, 280);
+ Rectangle(hdc, 365, 230, 400, 280);
+ Rectangle(hdc, 275, 235, 305, 260);
+ Rectangle(hdc, 325, 235, 350, 260);
+
+
+ //фары
+ hBrush = CreateSolidBrush(RGB(255, 255, 139)); //желтый цвет
+ SelectObject(hdc, hBrush);
+
+ hPen = CreatePen(PS_SOLID, 2, RGB(255, 255, 139)); // желтый цвет
+ SelectObject(hdc, hPen);
+
+ Rectangle(hdc, 90, 290, 105, 320);
+
+ // Колеса
+ hPen = CreatePen(PS_SOLID, 4, RGB(0, 0, 0));
+ SelectObject(hdc, hPen);
+ hBrush = CreateSolidBrush(RGB(181, 184, 177));
+ SelectObject(hdc, hBrush);
+ Ellipse(hdc, 135, 340, 170, 370);
+ Ellipse(hdc, 235, 340, 270, 370);
+ Ellipse(hdc, 365, 340, 400, 370);
+
+ EndPaint(hWnd, &ps);
+ }
+ break;
+ case WM_DESTROY:
+ PostQuitMessage(0);
+ break;
+ default:
+ return DefWindowProc(hWnd, message, wParam, lParam);
+ }
+ return 0;
+}
+
+// Обработчик сообщений для окна "О программе".
+INT_PTR CALLBACK About(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam)
+{
+ UNREFERENCED_PARAMETER(lParam);
+ switch (message)
+ {
+ case WM_INITDIALOG:
+ return (INT_PTR)TRUE;
+
+ case WM_COMMAND:
+ if (LOWORD(wParam) == IDOK || LOWORD(wParam) == IDCANCEL)
+ {
+ EndDialog(hDlg, LOWORD(wParam));
+ return (INT_PTR)TRUE;
+ }
+ break;
+ }
+ return (INT_PTR)FALSE;
+}
diff --git a/5, 6 лаб/8 лаб 5/8 лаб 5/8 лаб 5.h b/5, 6 лаб/8 лаб 5/8 лаб 5/8 лаб 5.h
new file mode 100644
index 0000000..b798bf5
--- /dev/null
+++ b/5, 6 лаб/8 лаб 5/8 лаб 5/8 лаб 5.h
@@ -0,0 +1,3 @@
+#pragma once
+
+#include "resource.h"
diff --git a/5, 6 лаб/8 лаб 5/8 лаб 5/8 лаб 5.ico b/5, 6 лаб/8 лаб 5/8 лаб 5/8 лаб 5.ico
new file mode 100644
index 0000000..b3ec03b
Binary files /dev/null and b/5, 6 лаб/8 лаб 5/8 лаб 5/8 лаб 5.ico differ
diff --git a/5, 6 лаб/8 лаб 5/8 лаб 5/8 лаб 5.rc b/5, 6 лаб/8 лаб 5/8 лаб 5/8 лаб 5.rc
new file mode 100644
index 0000000..0e992b1
Binary files /dev/null and b/5, 6 лаб/8 лаб 5/8 лаб 5/8 лаб 5.rc differ
diff --git a/5, 6 лаб/8 лаб 5/8 лаб 5/8 лаб 5.vcxproj b/5, 6 лаб/8 лаб 5/8 лаб 5/8 лаб 5.vcxproj
new file mode 100644
index 0000000..06657bf
--- /dev/null
+++ b/5, 6 лаб/8 лаб 5/8 лаб 5/8 лаб 5.vcxproj
@@ -0,0 +1,148 @@
+
+
+
+
+ Debug
+ Win32
+
+
+ Release
+ Win32
+
+
+ Debug
+ x64
+
+
+ Release
+ x64
+
+
+
+ 17.0
+ Win32Proj
+ {68ddf938-6fbe-4806-9175-04ca93978488}
+ My8лаб5
+ 10.0
+
+
+
+ Application
+ true
+ v143
+ Unicode
+
+
+ Application
+ false
+ v143
+ true
+ Unicode
+
+
+ Application
+ true
+ v143
+ Unicode
+
+
+ Application
+ false
+ v143
+ true
+ Unicode
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Level3
+ true
+ WIN32;_DEBUG;_WINDOWS;%(PreprocessorDefinitions)
+ true
+
+
+ Windows
+ true
+
+
+
+
+ Level3
+ true
+ true
+ true
+ WIN32;NDEBUG;_WINDOWS;%(PreprocessorDefinitions)
+ true
+
+
+ Windows
+ true
+ true
+ true
+
+
+
+
+ Level3
+ true
+ _DEBUG;_WINDOWS;%(PreprocessorDefinitions)
+ true
+
+
+ Windows
+ true
+
+
+
+
+ Level3
+ true
+ true
+ true
+ NDEBUG;_WINDOWS;%(PreprocessorDefinitions)
+ true
+
+
+ Windows
+ true
+ true
+ true
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/5, 6 лаб/8 лаб 5/8 лаб 5/8 лаб 5.vcxproj.filters b/5, 6 лаб/8 лаб 5/8 лаб 5/8 лаб 5.vcxproj.filters
new file mode 100644
index 0000000..c07b544
--- /dev/null
+++ b/5, 6 лаб/8 лаб 5/8 лаб 5/8 лаб 5.vcxproj.filters
@@ -0,0 +1,49 @@
+
+
+
+
+ {4FC737F1-C7A5-4376-A066-2A32D752A2FF}
+ cpp;c;cc;cxx;c++;cppm;ixx;def;odl;idl;hpj;bat;asm;asmx
+
+
+ {93995380-89BD-4b04-88EB-625FBE52EBFB}
+ h;hh;hpp;hxx;h++;hm;inl;inc;ipp;xsd
+
+
+ {67DA6AB6-F800-4c08-8B7A-83BB121AAD01}
+ rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms
+
+
+
+
+ Файлы заголовков
+
+
+ Файлы заголовков
+
+
+ Файлы заголовков
+
+
+ Файлы заголовков
+
+
+
+
+ Исходные файлы
+
+
+
+
+ Файлы ресурсов
+
+
+
+
+ Файлы ресурсов
+
+
+ Файлы ресурсов
+
+
+
\ No newline at end of file
diff --git a/5, 6 лаб/8 лаб 5/8 лаб 5/Resource.h b/5, 6 лаб/8 лаб 5/8 лаб 5/Resource.h
new file mode 100644
index 0000000..eda5486
--- /dev/null
+++ b/5, 6 лаб/8 лаб 5/8 лаб 5/Resource.h
@@ -0,0 +1,30 @@
+//{{NO_DEPENDENCIES}}
+// Включаемый файл, созданный в Microsoft Visual C++.
+// Используется 8 лаб 5.rc
+
+#define IDS_APP_TITLE 103
+
+#define IDR_MAINFRAME 128
+#define IDD_MY85_DIALOG 102
+#define IDD_ABOUTBOX 103
+#define IDM_ABOUT 104
+#define IDM_EXIT 105
+#define IDI_MY85 107
+#define IDI_SMALL 108
+#define IDC_MY85 109
+#define IDC_MYICON 2
+#ifndef IDC_STATIC
+#define IDC_STATIC -1
+#endif
+// Следующие стандартные значения для новых объектов
+//
+#ifdef APSTUDIO_INVOKED
+#ifndef APSTUDIO_READONLY_SYMBOLS
+
+#define _APS_NO_MFC 130
+#define _APS_NEXT_RESOURCE_VALUE 129
+#define _APS_NEXT_COMMAND_VALUE 32771
+#define _APS_NEXT_CONTROL_VALUE 1000
+#define _APS_NEXT_SYMED_VALUE 110
+#endif
+#endif
diff --git a/5, 6 лаб/8 лаб 5/8 лаб 5/framework.h b/5, 6 лаб/8 лаб 5/8 лаб 5/framework.h
new file mode 100644
index 0000000..a8f6dc8
--- /dev/null
+++ b/5, 6 лаб/8 лаб 5/8 лаб 5/framework.h
@@ -0,0 +1,15 @@
+// header.h: включаемый файл для стандартных системных включаемых файлов
+// или включаемые файлы для конкретного проекта
+//
+
+#pragma once
+
+#include "targetver.h"
+#define WIN32_LEAN_AND_MEAN // Исключите редко используемые компоненты из заголовков Windows
+// Файлы заголовков Windows
+#include
+// Файлы заголовков среды выполнения C
+#include
+#include
+#include
+#include
diff --git a/5, 6 лаб/8 лаб 5/8 лаб 5/small.ico b/5, 6 лаб/8 лаб 5/8 лаб 5/small.ico
new file mode 100644
index 0000000..b3ec03b
Binary files /dev/null and b/5, 6 лаб/8 лаб 5/8 лаб 5/small.ico differ
diff --git a/5, 6 лаб/8 лаб 5/8 лаб 5/targetver.h b/5, 6 лаб/8 лаб 5/8 лаб 5/targetver.h
new file mode 100644
index 0000000..d90003d
--- /dev/null
+++ b/5, 6 лаб/8 лаб 5/8 лаб 5/targetver.h
@@ -0,0 +1,6 @@
+#pragma once
+
+// // При включении SDKDDKVer.h будет задана самая новая из доступных платформ Windows.
+// Если вы планируете сборку приложения для предыдущей версии платформы Windows, включите WinSDKVer.h и
+// задайте желаемую платформу в макросе _WIN32_WINNT, прежде чем включать SDKDDKVer.h.
+#include
diff --git a/9, 10 лаб/1, 2 лаб 10/1 лаб 10.sln b/9, 10 лаб/1, 2 лаб 10/1 лаб 10.sln
new file mode 100644
index 0000000..c9629b4
--- /dev/null
+++ b/9, 10 лаб/1, 2 лаб 10/1 лаб 10.sln
@@ -0,0 +1,31 @@
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio Version 17
+VisualStudioVersion = 17.11.35222.181
+MinimumVisualStudioVersion = 10.0.40219.1
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "1 лаб 10", "1 лаб 10\1 лаб 10.vcxproj", "{180731D8-DD1D-4345-B1DB-ABE639EEDEB0}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|x64 = Debug|x64
+ Debug|x86 = Debug|x86
+ Release|x64 = Release|x64
+ Release|x86 = Release|x86
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {180731D8-DD1D-4345-B1DB-ABE639EEDEB0}.Debug|x64.ActiveCfg = Debug|x64
+ {180731D8-DD1D-4345-B1DB-ABE639EEDEB0}.Debug|x64.Build.0 = Debug|x64
+ {180731D8-DD1D-4345-B1DB-ABE639EEDEB0}.Debug|x86.ActiveCfg = Debug|Win32
+ {180731D8-DD1D-4345-B1DB-ABE639EEDEB0}.Debug|x86.Build.0 = Debug|Win32
+ {180731D8-DD1D-4345-B1DB-ABE639EEDEB0}.Release|x64.ActiveCfg = Release|x64
+ {180731D8-DD1D-4345-B1DB-ABE639EEDEB0}.Release|x64.Build.0 = Release|x64
+ {180731D8-DD1D-4345-B1DB-ABE639EEDEB0}.Release|x86.ActiveCfg = Release|Win32
+ {180731D8-DD1D-4345-B1DB-ABE639EEDEB0}.Release|x86.Build.0 = Release|Win32
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+ GlobalSection(ExtensibilityGlobals) = postSolution
+ SolutionGuid = {FCF90060-29BF-4992-A986-63ECD2564E38}
+ EndGlobalSection
+EndGlobal
diff --git a/9, 10 лаб/1, 2 лаб 10/1 лаб 10/1 лаб 10.vcxproj b/9, 10 лаб/1, 2 лаб 10/1 лаб 10/1 лаб 10.vcxproj
new file mode 100644
index 0000000..889391a
--- /dev/null
+++ b/9, 10 лаб/1, 2 лаб 10/1 лаб 10/1 лаб 10.vcxproj
@@ -0,0 +1,135 @@
+
+
+
+
+ Debug
+ Win32
+
+
+ Release
+ Win32
+
+
+ Debug
+ x64
+
+
+ Release
+ x64
+
+
+
+ 17.0
+ Win32Proj
+ {180731d8-dd1d-4345-b1db-abe639eedeb0}
+ My1лаб10
+ 10.0
+
+
+
+ Application
+ true
+ v143
+ Unicode
+
+
+ Application
+ false
+ v143
+ true
+ Unicode
+
+
+ Application
+ true
+ v143
+ Unicode
+
+
+ Application
+ false
+ v143
+ true
+ Unicode
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Level3
+ true
+ WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)
+ true
+
+
+ Console
+ true
+
+
+
+
+ Level3
+ true
+ true
+ true
+ WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)
+ true
+
+
+ Console
+ true
+ true
+ true
+
+
+
+
+ Level3
+ true
+ _DEBUG;_CONSOLE;%(PreprocessorDefinitions)
+ true
+
+
+ Console
+ true
+
+
+
+
+ Level3
+ true
+ true
+ true
+ NDEBUG;_CONSOLE;%(PreprocessorDefinitions)
+ true
+
+
+ Console
+ true
+ true
+ true
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/9, 10 лаб/1, 2 лаб 10/1 лаб 10/1 лаб 10.vcxproj.filters b/9, 10 лаб/1, 2 лаб 10/1 лаб 10/1 лаб 10.vcxproj.filters
new file mode 100644
index 0000000..3f0db78
--- /dev/null
+++ b/9, 10 лаб/1, 2 лаб 10/1 лаб 10/1 лаб 10.vcxproj.filters
@@ -0,0 +1,22 @@
+
+
+
+
+ {4FC737F1-C7A5-4376-A066-2A32D752A2FF}
+ cpp;c;cc;cxx;c++;cppm;ixx;def;odl;idl;hpj;bat;asm;asmx
+
+
+ {93995380-89BD-4b04-88EB-625FBE52EBFB}
+ h;hh;hpp;hxx;h++;hm;inl;inc;ipp;xsd
+
+
+ {67DA6AB6-F800-4c08-8B7A-83BB121AAD01}
+ rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms
+
+
+
+
+ Исходные файлы
+
+
+
\ No newline at end of file
diff --git a/9, 10 лаб/1, 2 лаб 10/1 лаб 10/FileName.cpp b/9, 10 лаб/1, 2 лаб 10/1 лаб 10/FileName.cpp
new file mode 100644
index 0000000..8116195
--- /dev/null
+++ b/9, 10 лаб/1, 2 лаб 10/1 лаб 10/FileName.cpp
@@ -0,0 +1,66 @@
+#include
+#include
+
+void Task1() {
+ printf("Task1() START\n");
+ int n;
+ int m;
+
+ printf("n = ");
+ scanf_s("%d", &n);
+ printf("m = ");
+ scanf_s("%d", &m);
+
+ int i = 1;
+ do {
+ int j = 1;
+ do {
+ printf("%d ", i * 10 + j);
+ j += 1;
+ } while (j <= m);
+ printf("\n");
+ i += 1;
+ } while (i <= n);
+ printf("Task1() FINISH()\n");
+}
+
+void Task2() {
+ printf("Task2() START\n");
+ int i = 1;//llll
+ do {
+ int j = 1;
+ do {
+ printf("%5d ", i * j);
+ j += 1;
+ } while (j <= 10);
+ printf("\n");
+ i += 1;
+ } while (i <= 10);
+ printf("Task2() FINISH()\n");
+}
+
+void main() {
+ SetConsoleCP(1251);
+ SetConsoleOutputCP(1251);
+ int n = 1;
+
+ do {
+ printf("\n");
+ printf("\n");
+ printf(" \n");
+ printf("1: 1 (i * 10 + j)\n");
+ printf("2: 2 ( )\n");
+ printf("\n");
+ printf("0: \n");
+
+ scanf_s("%d", &n);
+ switch (n) {
+ case 1:
+ Task1();
+ break;
+ case 2:
+ Task2();
+ break;
+ }
+ } while (n != 0);
+}
\ No newline at end of file
diff --git a/9, 10 лаб/1, 2, 3, 5 лаб 9/5 лаб 9.sln b/9, 10 лаб/1, 2, 3, 5 лаб 9/5 лаб 9.sln
new file mode 100644
index 0000000..b523521
--- /dev/null
+++ b/9, 10 лаб/1, 2, 3, 5 лаб 9/5 лаб 9.sln
@@ -0,0 +1,31 @@
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio Version 17
+VisualStudioVersion = 17.11.35222.181
+MinimumVisualStudioVersion = 10.0.40219.1
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "5 лаб 9", "5 лаб 9\5 лаб 9.vcxproj", "{12150A36-9D7F-4F8E-A3A9-745FF77BA796}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|x64 = Debug|x64
+ Debug|x86 = Debug|x86
+ Release|x64 = Release|x64
+ Release|x86 = Release|x86
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {12150A36-9D7F-4F8E-A3A9-745FF77BA796}.Debug|x64.ActiveCfg = Debug|x64
+ {12150A36-9D7F-4F8E-A3A9-745FF77BA796}.Debug|x64.Build.0 = Debug|x64
+ {12150A36-9D7F-4F8E-A3A9-745FF77BA796}.Debug|x86.ActiveCfg = Debug|Win32
+ {12150A36-9D7F-4F8E-A3A9-745FF77BA796}.Debug|x86.Build.0 = Debug|Win32
+ {12150A36-9D7F-4F8E-A3A9-745FF77BA796}.Release|x64.ActiveCfg = Release|x64
+ {12150A36-9D7F-4F8E-A3A9-745FF77BA796}.Release|x64.Build.0 = Release|x64
+ {12150A36-9D7F-4F8E-A3A9-745FF77BA796}.Release|x86.ActiveCfg = Release|Win32
+ {12150A36-9D7F-4F8E-A3A9-745FF77BA796}.Release|x86.Build.0 = Release|Win32
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+ GlobalSection(ExtensibilityGlobals) = postSolution
+ SolutionGuid = {115C7EB3-B988-40B7-ADEE-82FBA1102BC5}
+ EndGlobalSection
+EndGlobal
diff --git a/9, 10 лаб/1, 2, 3, 5 лаб 9/5 лаб 9/5 лаб 9.vcxproj b/9, 10 лаб/1, 2, 3, 5 лаб 9/5 лаб 9/5 лаб 9.vcxproj
new file mode 100644
index 0000000..53a064b
--- /dev/null
+++ b/9, 10 лаб/1, 2, 3, 5 лаб 9/5 лаб 9/5 лаб 9.vcxproj
@@ -0,0 +1,135 @@
+
+
+
+
+ Debug
+ Win32
+
+
+ Release
+ Win32
+
+
+ Debug
+ x64
+
+
+ Release
+ x64
+
+
+
+ 17.0
+ Win32Proj
+ {12150a36-9d7f-4f8e-a3a9-745ff77ba796}
+ My5лаб9
+ 10.0
+
+
+
+ Application
+ true
+ v143
+ Unicode
+
+
+ Application
+ false
+ v143
+ true
+ Unicode
+
+
+ Application
+ true
+ v143
+ Unicode
+
+
+ Application
+ false
+ v143
+ true
+ Unicode
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Level3
+ true
+ WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)
+ true
+
+
+ Console
+ true
+
+
+
+
+ Level3
+ true
+ true
+ true
+ WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)
+ true
+
+
+ Console
+ true
+ true
+ true
+
+
+
+
+ Level3
+ true
+ _DEBUG;_CONSOLE;%(PreprocessorDefinitions)
+ true
+
+
+ Console
+ true
+
+
+
+
+ Level3
+ true
+ true
+ true
+ NDEBUG;_CONSOLE;%(PreprocessorDefinitions)
+ true
+
+
+ Console
+ true
+ true
+ true
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/9, 10 лаб/1, 2, 3, 5 лаб 9/5 лаб 9/5 лаб 9.vcxproj.filters b/9, 10 лаб/1, 2, 3, 5 лаб 9/5 лаб 9/5 лаб 9.vcxproj.filters
new file mode 100644
index 0000000..3f0db78
--- /dev/null
+++ b/9, 10 лаб/1, 2, 3, 5 лаб 9/5 лаб 9/5 лаб 9.vcxproj.filters
@@ -0,0 +1,22 @@
+
+
+
+
+ {4FC737F1-C7A5-4376-A066-2A32D752A2FF}
+ cpp;c;cc;cxx;c++;cppm;ixx;def;odl;idl;hpj;bat;asm;asmx
+
+
+ {93995380-89BD-4b04-88EB-625FBE52EBFB}
+ h;hh;hpp;hxx;h++;hm;inl;inc;ipp;xsd
+
+
+ {67DA6AB6-F800-4c08-8B7A-83BB121AAD01}
+ rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms
+
+
+
+
+ Исходные файлы
+
+
+
\ No newline at end of file
diff --git a/9, 10 лаб/1, 2, 3, 5 лаб 9/5 лаб 9/FileName.cpp b/9, 10 лаб/1, 2, 3, 5 лаб 9/5 лаб 9/FileName.cpp
new file mode 100644
index 0000000..7815bed
--- /dev/null
+++ b/9, 10 лаб/1, 2, 3, 5 лаб 9/5 лаб 9/FileName.cpp
@@ -0,0 +1,89 @@
+#include
+#include
+
+void print1_10() {
+ int a = 1;
+ do {
+ printf("%d ", a);
+ a += 1;
+ } while (a <= 10);
+}
+
+void print10_1() {
+ int a = 10;
+ do {
+ printf("%d ", a);
+ a -= 1;
+ } while (a >= 1);
+}
+
+void print5() {
+ int a = 1;
+ int i = 1;
+ do {
+ printf("%d ", a);
+ a += 2;
+ i += 1;
+ } while (i <= 5);
+}
+void print100_10while() {
+ int a = 100;
+ while (a >= 10) {
+ printf("%d ", a);
+ a -= 10;
+ }
+}
+void print1000_100while() {
+ int a = 1000;
+ while (a >= 100) {
+ printf("%d ", a);
+ a -= 100;
+ }
+}
+void print1000_0while() {
+ int a = 1000;
+ while (a >= 0) {
+ printf("%d ", a);
+ a -= 6;
+ }
+}
+void main() {
+ SetConsoleCP(1251);
+ SetConsoleOutputCP(1251);
+ int n;
+
+ do {
+ printf("\n");
+ printf("\n");
+ printf(" :\n");
+ printf("1: 1 10\n");
+ printf("2: 10 1\n");
+ printf("3: 5 1\n");
+ printf("11: 100 90 80 ... 10( WHILE)\n");
+ printf("12: 1000 900 800 ... 100( WHILE)\n");
+ printf("20: 1000 994 988 ( WHILE)\n");
+ printf("\n");
+ printf("0: \n");
+ scanf_s("%d", &n);
+ switch (n) {
+ case 1:
+ print1_10();
+ break;
+ case 2:
+ print10_1();
+ break;
+ case 3:
+ print5();
+ break;
+ case 11:
+ print100_10while();
+ break;
+ case 12:
+ print1000_100while();
+ break;
+ case 20:
+ print1000_0while();
+ break;
+ }
+ } while (n != 0);
+}