From 973ee5475603ad8093c0051993b16d3e537e96ad Mon Sep 17 00:00:00 2001 From: "nikbel2004@outlook.com" Date: Sun, 15 Sep 2024 23:52:04 +0400 Subject: [PATCH] Laboratory_5-6 --- Lab 4/ConvertData/App.config | 6 - Lab 4/ConvertData/ConvertData.csproj | 83 ------ Lab 4/ConvertData/ConvertData.sln | 25 -- Lab 4/ConvertData/FormMain.Designer.cs | 274 ------------------ Lab 4/ConvertData/FormMain.cs | 112 ------- Lab 4/ConvertData/FormMain.resx | 120 -------- Lab 4/ConvertData/Program.cs | 22 -- Lab 4/ConvertData/Properties/AssemblyInfo.cs | 36 --- .../Properties/Resources.Designer.cs | 71 ----- Lab 4/ConvertData/Properties/Resources.resx | 117 -------- .../Properties/Settings.Designer.cs | 30 -- .../ConvertData/Properties/Settings.settings | 7 - Lab 4/DateTimeOperations.java | 154 ---------- Lab 5-6/book.xml | 33 +++ Lab 5-6/employee.xml | 23 ++ Lab 5-6/genre.xml | 20 ++ Lab 5-6/library.xsl | 53 ++++ Lab 5-6/script.txt | 53 ++++ Сценарии.docx | Bin 0 -> 18205 bytes 19 files changed, 182 insertions(+), 1057 deletions(-) delete mode 100644 Lab 4/ConvertData/App.config delete mode 100644 Lab 4/ConvertData/ConvertData.csproj delete mode 100644 Lab 4/ConvertData/ConvertData.sln delete mode 100644 Lab 4/ConvertData/FormMain.Designer.cs delete mode 100644 Lab 4/ConvertData/FormMain.cs delete mode 100644 Lab 4/ConvertData/FormMain.resx delete mode 100644 Lab 4/ConvertData/Program.cs delete mode 100644 Lab 4/ConvertData/Properties/AssemblyInfo.cs delete mode 100644 Lab 4/ConvertData/Properties/Resources.Designer.cs delete mode 100644 Lab 4/ConvertData/Properties/Resources.resx delete mode 100644 Lab 4/ConvertData/Properties/Settings.Designer.cs delete mode 100644 Lab 4/ConvertData/Properties/Settings.settings delete mode 100644 Lab 4/DateTimeOperations.java create mode 100644 Lab 5-6/book.xml create mode 100644 Lab 5-6/employee.xml create mode 100644 Lab 5-6/genre.xml create mode 100644 Lab 5-6/library.xsl create mode 100644 Lab 5-6/script.txt create mode 100644 Сценарии.docx diff --git a/Lab 4/ConvertData/App.config b/Lab 4/ConvertData/App.config deleted file mode 100644 index 56efbc7..0000000 --- a/Lab 4/ConvertData/App.config +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/Lab 4/ConvertData/ConvertData.csproj b/Lab 4/ConvertData/ConvertData.csproj deleted file mode 100644 index c790833..0000000 --- a/Lab 4/ConvertData/ConvertData.csproj +++ /dev/null @@ -1,83 +0,0 @@ - - - - - Debug - AnyCPU - {D1288C6D-7E75-4808-ABC3-0CCCE4FD9C22} - WinExe - ConvertData - ConvertData - v4.7.2 - 512 - true - true - - - AnyCPU - true - full - false - bin\Debug\ - DEBUG;TRACE - prompt - 4 - - - AnyCPU - pdbonly - true - bin\Release\ - TRACE - prompt - 4 - - - - - - - - - - - - - - - - - Form - - - FormMain.cs - - - - - FormMain.cs - - - ResXFileCodeGenerator - Resources.Designer.cs - Designer - - - True - Resources.resx - - - SettingsSingleFileGenerator - Settings.Designer.cs - - - True - Settings.settings - True - - - - - - - \ No newline at end of file diff --git a/Lab 4/ConvertData/ConvertData.sln b/Lab 4/ConvertData/ConvertData.sln deleted file mode 100644 index 86892fe..0000000 --- a/Lab 4/ConvertData/ConvertData.sln +++ /dev/null @@ -1,25 +0,0 @@ - -Microsoft Visual Studio Solution File, Format Version 12.00 -# Visual Studio Version 17 -VisualStudioVersion = 17.1.32210.238 -MinimumVisualStudioVersion = 10.0.40219.1 -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ConvertData", "ConvertData.csproj", "{D1288C6D-7E75-4808-ABC3-0CCCE4FD9C22}" -EndProject -Global - GlobalSection(SolutionConfigurationPlatforms) = preSolution - Debug|Any CPU = Debug|Any CPU - Release|Any CPU = Release|Any CPU - EndGlobalSection - GlobalSection(ProjectConfigurationPlatforms) = postSolution - {D1288C6D-7E75-4808-ABC3-0CCCE4FD9C22}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {D1288C6D-7E75-4808-ABC3-0CCCE4FD9C22}.Debug|Any CPU.Build.0 = Debug|Any CPU - {D1288C6D-7E75-4808-ABC3-0CCCE4FD9C22}.Release|Any CPU.ActiveCfg = Release|Any CPU - {D1288C6D-7E75-4808-ABC3-0CCCE4FD9C22}.Release|Any CPU.Build.0 = Release|Any CPU - EndGlobalSection - GlobalSection(SolutionProperties) = preSolution - HideSolutionNode = FALSE - EndGlobalSection - GlobalSection(ExtensibilityGlobals) = postSolution - SolutionGuid = {A4F0853A-9C3C-4D61-B4A9-BA4A678CCECF} - EndGlobalSection -EndGlobal diff --git a/Lab 4/ConvertData/FormMain.Designer.cs b/Lab 4/ConvertData/FormMain.Designer.cs deleted file mode 100644 index e3034c5..0000000 --- a/Lab 4/ConvertData/FormMain.Designer.cs +++ /dev/null @@ -1,274 +0,0 @@ -namespace ConvertData -{ - partial class Main - { - /// - /// Обязательная переменная конструктора. - /// - private System.ComponentModel.IContainer components = null; - - /// - /// Освободить все используемые ресурсы. - /// - /// истинно, если управляемый ресурс должен быть удален; иначе ложно. - protected override void Dispose(bool disposing) - { - if (disposing && (components != null)) - { - components.Dispose(); - } - base.Dispose(disposing); - } - - #region Код, автоматически созданный конструктором форм Windows - - /// - /// Требуемый метод для поддержки конструктора — не изменяйте - /// содержимое этого метода с помощью редактора кода. - /// - private void InitializeComponent() - { - this.Close = new System.Windows.Forms.Button(); - this.Label_Date = new System.Windows.Forms.Label(); - this.comboBox_Date = new System.Windows.Forms.ComboBox(); - this.Label_FormatDate = new System.Windows.Forms.Label(); - this.dateTimePicker1 = new System.Windows.Forms.DateTimePicker(); - this.button_res = new System.Windows.Forms.Button(); - this.comboBox_format = new System.Windows.Forms.ComboBox(); - this.numericUpDown_operations = new System.Windows.Forms.NumericUpDown(); - this.label1 = new System.Windows.Forms.Label(); - this.label2 = new System.Windows.Forms.Label(); - this.button_convertToString = new System.Windows.Forms.Button(); - this.textBox_string = new System.Windows.Forms.TextBox(); - this.label3 = new System.Windows.Forms.Label(); - this.label4 = new System.Windows.Forms.Label(); - this.button_converttodata = new System.Windows.Forms.Button(); - this.textBox_result = new System.Windows.Forms.TextBox(); - this.label5 = new System.Windows.Forms.Label(); - ((System.ComponentModel.ISupportInitialize)(this.numericUpDown_operations)).BeginInit(); - this.SuspendLayout(); - // - // Close - // - this.Close.Location = new System.Drawing.Point(951, 511); - this.Close.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4); - this.Close.Name = "Close"; - this.Close.Size = new System.Drawing.Size(100, 28); - this.Close.TabIndex = 0; - this.Close.Text = "Закрыть"; - this.Close.UseVisualStyleBackColor = true; - this.Close.Click += new System.EventHandler(this.Close_Click); - // - // Label_Date - // - this.Label_Date.AutoSize = true; - this.Label_Date.Location = new System.Drawing.Point(16, 11); - this.Label_Date.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0); - this.Label_Date.Name = "Label_Date"; - this.Label_Date.Size = new System.Drawing.Size(42, 16); - this.Label_Date.TabIndex = 5; - this.Label_Date.Text = "Дата:"; - // - // comboBox_Date - // - this.comboBox_Date.FormattingEnabled = true; - this.comboBox_Date.Location = new System.Drawing.Point(16, 226); - this.comboBox_Date.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4); - this.comboBox_Date.Name = "comboBox_Date"; - this.comboBox_Date.Size = new System.Drawing.Size(265, 24); - this.comboBox_Date.TabIndex = 7; - this.comboBox_Date.SelectedIndexChanged += new System.EventHandler(this.comboBox_Date_SelectedIndexChanged); - // - // Label_FormatDate - // - this.Label_FormatDate.AutoSize = true; - this.Label_FormatDate.Location = new System.Drawing.Point(12, 207); - this.Label_FormatDate.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0); - this.Label_FormatDate.Name = "Label_FormatDate"; - this.Label_FormatDate.Size = new System.Drawing.Size(157, 16); - this.Label_FormatDate.TabIndex = 8; - this.Label_FormatDate.Text = "Форматироварие даты"; - // - // dateTimePicker1 - // - this.dateTimePicker1.Location = new System.Drawing.Point(16, 31); - this.dateTimePicker1.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4); - this.dateTimePicker1.Name = "dateTimePicker1"; - this.dateTimePicker1.Size = new System.Drawing.Size(265, 22); - this.dateTimePicker1.TabIndex = 9; - // - // button_res - // - this.button_res.Location = new System.Drawing.Point(332, 63); - this.button_res.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4); - this.button_res.Name = "button_res"; - this.button_res.Size = new System.Drawing.Size(236, 28); - this.button_res.TabIndex = 12; - this.button_res.Text = "Изменить"; - this.button_res.UseVisualStyleBackColor = true; - this.button_res.Click += new System.EventHandler(this.button_plus_Click); - // - // comboBox_format - // - this.comboBox_format.FormattingEnabled = true; - this.comboBox_format.Location = new System.Drawing.Point(332, 98); - this.comboBox_format.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4); - this.comboBox_format.Name = "comboBox_format"; - this.comboBox_format.Size = new System.Drawing.Size(235, 24); - this.comboBox_format.TabIndex = 14; - // - // numericUpDown_operations - // - this.numericUpDown_operations.Location = new System.Drawing.Point(332, 31); - this.numericUpDown_operations.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4); - this.numericUpDown_operations.Minimum = new decimal(new int[] { - 100, - 0, - 0, - -2147483648}); - this.numericUpDown_operations.Name = "numericUpDown_operations"; - this.numericUpDown_operations.Size = new System.Drawing.Size(236, 22); - this.numericUpDown_operations.TabIndex = 15; - // - // label1 - // - this.label1.AutoSize = true; - this.label1.Location = new System.Drawing.Point(332, 10); - this.label1.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0); - this.label1.Name = "label1"; - this.label1.Size = new System.Drawing.Size(85, 16); - this.label1.TabIndex = 16; - this.label1.Text = "Изменение:"; - // - // label2 - // - this.label2.AutoSize = true; - this.label2.Location = new System.Drawing.Point(608, 11); - this.label2.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0); - this.label2.Name = "label2"; - this.label2.Size = new System.Drawing.Size(96, 16); - this.label2.TabIndex = 17; - this.label2.Text = "Конвертация:"; - // - // button_convertToString - // - this.button_convertToString.Location = new System.Drawing.Point(611, 33); - this.button_convertToString.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4); - this.button_convertToString.Name = "button_convertToString"; - this.button_convertToString.Size = new System.Drawing.Size(279, 28); - this.button_convertToString.TabIndex = 18; - this.button_convertToString.Text = "Конвертировать в строку"; - this.button_convertToString.UseVisualStyleBackColor = true; - this.button_convertToString.Click += new System.EventHandler(this.button_convertToString_Click); - // - // textBox_string - // - this.textBox_string.Location = new System.Drawing.Point(332, 228); - this.textBox_string.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4); - this.textBox_string.Name = "textBox_string"; - this.textBox_string.Size = new System.Drawing.Size(235, 22); - this.textBox_string.TabIndex = 19; - // - // label3 - // - this.label3.AutoSize = true; - this.label3.Location = new System.Drawing.Point(328, 207); - this.label3.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0); - this.label3.Name = "label3"; - this.label3.Size = new System.Drawing.Size(131, 16); - this.label3.TabIndex = 20; - this.label3.Text = "Строковые данные"; - // - // label4 - // - this.label4.AutoSize = true; - this.label4.Location = new System.Drawing.Point(605, 207); - this.label4.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0); - this.label4.Name = "label4"; - this.label4.Size = new System.Drawing.Size(96, 16); - this.label4.TabIndex = 21; - this.label4.Text = "Конвертация:"; - // - // button_converttodata - // - this.button_converttodata.Location = new System.Drawing.Point(612, 228); - this.button_converttodata.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4); - this.button_converttodata.Name = "button_converttodata"; - this.button_converttodata.Size = new System.Drawing.Size(277, 28); - this.button_converttodata.TabIndex = 22; - this.button_converttodata.Text = "Конвертация в дату"; - this.button_converttodata.UseVisualStyleBackColor = true; - this.button_converttodata.Click += new System.EventHandler(this.button_converttodata_Click); - // - // textBox_result - // - this.textBox_result.Location = new System.Drawing.Point(16, 286); - this.textBox_result.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4); - this.textBox_result.Name = "textBox_result"; - this.textBox_result.Size = new System.Drawing.Size(265, 22); - this.textBox_result.TabIndex = 23; - // - // label5 - // - this.label5.AutoSize = true; - this.label5.Location = new System.Drawing.Point(16, 266); - this.label5.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0); - this.label5.Name = "label5"; - this.label5.Size = new System.Drawing.Size(194, 16); - this.label5.TabIndex = 24; - this.label5.Text = "Результат форматирования"; - // - // Main - // - this.AutoScaleDimensions = new System.Drawing.SizeF(8F, 16F); - this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; - this.ClientSize = new System.Drawing.Size(1067, 554); - this.Controls.Add(this.label5); - this.Controls.Add(this.textBox_result); - this.Controls.Add(this.button_converttodata); - this.Controls.Add(this.label4); - this.Controls.Add(this.label3); - this.Controls.Add(this.textBox_string); - this.Controls.Add(this.button_convertToString); - this.Controls.Add(this.label2); - this.Controls.Add(this.label1); - this.Controls.Add(this.numericUpDown_operations); - this.Controls.Add(this.comboBox_format); - this.Controls.Add(this.button_res); - this.Controls.Add(this.dateTimePicker1); - this.Controls.Add(this.Label_FormatDate); - this.Controls.Add(this.comboBox_Date); - this.Controls.Add(this.Label_Date); - this.Controls.Add(this.Close); - this.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4); - this.Name = "Main"; - this.Text = "Lab 4: Convert Data"; - this.Load += new System.EventHandler(this.Main_Load); - ((System.ComponentModel.ISupportInitialize)(this.numericUpDown_operations)).EndInit(); - this.ResumeLayout(false); - this.PerformLayout(); - - } - - #endregion - - private System.Windows.Forms.Button Close; - private System.Windows.Forms.Label Label_Date; - private System.Windows.Forms.ComboBox comboBox_Date; - private System.Windows.Forms.Label Label_FormatDate; - private System.Windows.Forms.DateTimePicker dateTimePicker1; - private System.Windows.Forms.Button button_res; - private System.Windows.Forms.ComboBox comboBox_format; - private System.Windows.Forms.NumericUpDown numericUpDown_operations; - private System.Windows.Forms.Label label1; - private System.Windows.Forms.Label label2; - private System.Windows.Forms.Button button_convertToString; - private System.Windows.Forms.TextBox textBox_string; - private System.Windows.Forms.Label label3; - private System.Windows.Forms.Label label4; - private System.Windows.Forms.Button button_converttodata; - private System.Windows.Forms.TextBox textBox_result; - private System.Windows.Forms.Label label5; - } -} - diff --git a/Lab 4/ConvertData/FormMain.cs b/Lab 4/ConvertData/FormMain.cs deleted file mode 100644 index f44ebd5..0000000 --- a/Lab 4/ConvertData/FormMain.cs +++ /dev/null @@ -1,112 +0,0 @@ -using System; -using System.Collections.Generic; -using System.ComponentModel; -using System.Data; -using System.Drawing; -using System.Linq; -using System.Text; -using System.Threading.Tasks; -using System.Windows.Forms; - -namespace ConvertData -{ - public partial class Main : Form - { - public Main() - { - InitializeComponent(); - } - - private void Close_Click(object sender, EventArgs e) - { - Application.Exit(); - } - - private void comboBox_Date_SelectedIndexChanged(object sender, EventArgs e) - { - if (comboBox_Date.Text == "День месяц и год") - { - textBox_result.Text = dateTimePicker1.Value.ToLongDateString(); - } - - if (comboBox_Date.Text == "День/Месяц/Год кратко") - { - textBox_result.Text = dateTimePicker1.Value.ToShortDateString(); - } - - if (comboBox_Date.Text == "Полная запись времени") - { - textBox_result.Text = dateTimePicker1.Value.ToLongTimeString(); - } - - if (comboBox_Date.Text == "Краткая запись времени") - { - textBox_result.Text = dateTimePicker1.Value.ToShortTimeString(); - } - } - - private void Main_Load(object sender, EventArgs e) - { - // dateTimePicker1.Value = DateTime.Now; - - dateTimePicker1.Format = DateTimePickerFormat.Custom; - dateTimePicker1.CustomFormat = "hh:mm:ss dd.MM.yyyy 'г.'"; - - // Добавление в ComboBox - comboBox_Date.Items.Add("День месяц и год"); - comboBox_Date.Items.Add("День/Месяц/Год кратко"); - comboBox_Date.Items.Add("Полная запись времени"); - comboBox_Date.Items.Add("Краткая запись времени"); - - comboBox_format.Items.Add("Год"); - comboBox_format.Items.Add("Месяц"); - comboBox_format.Items.Add("День"); - comboBox_format.Items.Add("Час"); - comboBox_format.Items.Add("Минуту"); - comboBox_format.Items.Add("Секунду"); - } - - private void button_plus_Click(object sender, EventArgs e) - { - if (comboBox_format.Text == "Год") - { - dateTimePicker1.Value = dateTimePicker1.Value.AddYears(Decimal.ToInt32((numericUpDown_operations.Value))); - } - - if (comboBox_format.Text == "Месяц") - { - dateTimePicker1.Value = dateTimePicker1.Value.AddMonths(Decimal.ToInt32((numericUpDown_operations.Value))); - } - - if (comboBox_format.Text == "День") - { - dateTimePicker1.Value = dateTimePicker1.Value.AddDays(Decimal.ToInt32((numericUpDown_operations.Value))); - } - - if (comboBox_format.Text == "Час") - { - dateTimePicker1.Value = dateTimePicker1.Value.AddHours(Decimal.ToInt32((numericUpDown_operations.Value))); - } - - if (comboBox_format.Text == "Минуту") - { - dateTimePicker1.Value = dateTimePicker1.Value.AddMinutes(Decimal.ToInt32((numericUpDown_operations.Value))); - } - - if (comboBox_format.Text == "Секунду") - { - dateTimePicker1.Value = dateTimePicker1.Value.AddSeconds(Decimal.ToInt32((numericUpDown_operations.Value))); - } - } - - private void button_convertToString_Click(object sender, EventArgs e) - { - textBox_string.Text = dateTimePicker1.Value.ToString(); - } - - private void button_converttodata_Click(object sender, EventArgs e) - { - dateTimePicker1.Value = DateTime.Parse(textBox_string.Text); - } - } -} diff --git a/Lab 4/ConvertData/FormMain.resx b/Lab 4/ConvertData/FormMain.resx deleted file mode 100644 index 1af7de1..0000000 --- a/Lab 4/ConvertData/FormMain.resx +++ /dev/null @@ -1,120 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - \ No newline at end of file diff --git a/Lab 4/ConvertData/Program.cs b/Lab 4/ConvertData/Program.cs deleted file mode 100644 index 0eee3a3..0000000 --- a/Lab 4/ConvertData/Program.cs +++ /dev/null @@ -1,22 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Threading.Tasks; -using System.Windows.Forms; - -namespace ConvertData -{ - internal static class Program - { - /// - /// Главная точка входа для приложения. - /// - [STAThread] - static void Main() - { - Application.EnableVisualStyles(); - Application.SetCompatibleTextRenderingDefault(false); - Application.Run(new Main()); - } - } -} diff --git a/Lab 4/ConvertData/Properties/AssemblyInfo.cs b/Lab 4/ConvertData/Properties/AssemblyInfo.cs deleted file mode 100644 index 8df2b70..0000000 --- a/Lab 4/ConvertData/Properties/AssemblyInfo.cs +++ /dev/null @@ -1,36 +0,0 @@ -using System.Reflection; -using System.Runtime.CompilerServices; -using System.Runtime.InteropServices; - -// Общие сведения об этой сборке предоставляются следующим набором -// набора атрибутов. Измените значения этих атрибутов для изменения сведений, -// связанных со сборкой. -[assembly: AssemblyTitle("ConvertData")] -[assembly: AssemblyDescription("")] -[assembly: AssemblyConfiguration("")] -[assembly: AssemblyCompany("")] -[assembly: AssemblyProduct("ConvertData")] -[assembly: AssemblyCopyright("Copyright © 2023")] -[assembly: AssemblyTrademark("")] -[assembly: AssemblyCulture("")] - -// Установка значения False для параметра ComVisible делает типы в этой сборке невидимыми -// для компонентов COM. Если необходимо обратиться к типу в этой сборке через -// COM, следует установить атрибут ComVisible в TRUE для этого типа. -[assembly: ComVisible(false)] - -// Следующий GUID служит для идентификации библиотеки типов, если этот проект будет видимым для COM -[assembly: Guid("d1288c6d-7e75-4808-abc3-0ccce4fd9c22")] - -// Сведения о версии сборки состоят из указанных ниже четырех значений: -// -// Основной номер версии -// Дополнительный номер версии -// Номер сборки -// Редакция -// -// Можно задать все значения или принять номера сборки и редакции по умолчанию -// используя "*", как показано ниже: -// [assembly: AssemblyVersion("1.0.*")] -[assembly: AssemblyVersion("1.0.0.0")] -[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/Lab 4/ConvertData/Properties/Resources.Designer.cs b/Lab 4/ConvertData/Properties/Resources.Designer.cs deleted file mode 100644 index e212ecb..0000000 --- a/Lab 4/ConvertData/Properties/Resources.Designer.cs +++ /dev/null @@ -1,71 +0,0 @@ -//------------------------------------------------------------------------------ -// -// Этот код создан программным средством. -// Версия среды выполнения: 4.0.30319.42000 -// -// Изменения в этом файле могут привести к неправильному поведению и будут утрачены, если -// код создан повторно. -// -//------------------------------------------------------------------------------ - -namespace ConvertData.Properties -{ - - - /// - /// Класс ресурсов со строгим типом для поиска локализованных строк и пр. - /// - // Этот класс был автоматически создан при помощи StronglyTypedResourceBuilder - // класс с помощью таких средств, как ResGen или Visual Studio. - // Для добавления или удаления члена измените файл .ResX, а затем перезапустите ResGen - // с параметром /str или заново постройте свой VS-проект. - [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] - internal class Resources - { - - private static global::System.Resources.ResourceManager resourceMan; - - private static global::System.Globalization.CultureInfo resourceCulture; - - [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")] - internal Resources() - { - } - - /// - /// Возврат кэшированного экземпляра ResourceManager, используемого этим классом. - /// - [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] - internal static global::System.Resources.ResourceManager ResourceManager - { - get - { - if ((resourceMan == null)) - { - global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("ConvertData.Properties.Resources", typeof(Resources).Assembly); - resourceMan = temp; - } - return resourceMan; - } - } - - /// - /// Переопределяет свойство CurrentUICulture текущего потока для всех - /// подстановки ресурсов с помощью этого класса ресурсов со строгим типом. - /// - [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] - internal static global::System.Globalization.CultureInfo Culture - { - get - { - return resourceCulture; - } - set - { - resourceCulture = value; - } - } - } -} diff --git a/Lab 4/ConvertData/Properties/Resources.resx b/Lab 4/ConvertData/Properties/Resources.resx deleted file mode 100644 index af7dbeb..0000000 --- a/Lab 4/ConvertData/Properties/Resources.resx +++ /dev/null @@ -1,117 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - \ No newline at end of file diff --git a/Lab 4/ConvertData/Properties/Settings.Designer.cs b/Lab 4/ConvertData/Properties/Settings.Designer.cs deleted file mode 100644 index 185b872..0000000 --- a/Lab 4/ConvertData/Properties/Settings.Designer.cs +++ /dev/null @@ -1,30 +0,0 @@ -//------------------------------------------------------------------------------ -// -// This code was generated by a tool. -// Runtime Version:4.0.30319.42000 -// -// Changes to this file may cause incorrect behavior and will be lost if -// the code is regenerated. -// -//------------------------------------------------------------------------------ - -namespace ConvertData.Properties -{ - - - [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] - [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "11.0.0.0")] - internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase - { - - private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings()))); - - public static Settings Default - { - get - { - return defaultInstance; - } - } - } -} diff --git a/Lab 4/ConvertData/Properties/Settings.settings b/Lab 4/ConvertData/Properties/Settings.settings deleted file mode 100644 index 3964565..0000000 --- a/Lab 4/ConvertData/Properties/Settings.settings +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/Lab 4/DateTimeOperations.java b/Lab 4/DateTimeOperations.java deleted file mode 100644 index 4d77156..0000000 --- a/Lab 4/DateTimeOperations.java +++ /dev/null @@ -1,154 +0,0 @@ -import java.time.LocalDate; -import java.time.LocalDateTime; -import java.time.LocalTime; -import java.time.format.DateTimeFormatter; -import java.util.Scanner; - -public class DateTimeOperations { - public static void main(String[] args) { - Scanner scanner = new Scanner(System.in); - - DateTimeFormatter dateFormatter = DateTimeFormatter.ofPattern("dd-MM-yyyy"); - DateTimeFormatter timeFormatter = DateTimeFormatter.ofPattern("HH:mm:ss"); - DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern("dd-MM-yyyy HH:mm:ss"); - - System.out.println("Выберите тип операции:"); - System.out.println("1. Прибавить дни/месяцы/часы/минуты"); - System.out.println("2. Вычесть дни/месяцы/часы/минуты"); - int operationType = scanner.nextInt(); - - System.out.println("Выберите объект для операции:"); - System.out.println("1. Дата"); - System.out.println("2. Время"); - System.out.println("3. Дата и время"); - int objectType = scanner.nextInt(); - - // Получаем текущую дату, время и дату-время - // LocalDate currentDate = LocalDate.now(); - // LocalTime currentTime = LocalTime.now(); - // LocalDateTime currentDateTime = LocalDateTime.now(); - - // System.out.println("Текущая дата: " + currentDate); - // System.out.println("Текущее время: " + currentTime); - // System.out.println("Текущее дата и время: " + currentDateTime); - - if (objectType == 1) { - // Операции с датой - LocalDate date = LocalDate.now(); - System.out.println("Текущая дата: " + date.format(dateFormatter)); - - if (operationType == 1) { - System.out.println("Введите количество дней для прибавления:"); - int days = scanner.nextInt(); - - System.out.println("Введите количество месяцев для прибавления:"); - int months = scanner.nextInt(); - - LocalDate newDate = date.plusDays(days).plusMonths(months); - System.out.println("Новая дата: " + newDate.format(dateFormatter)); - } else { - System.out.println("Введите количество дней для вычитания:"); - int days = scanner.nextInt(); - - System.out.println("Введите количество месяцев для вычитания:"); - int months = scanner.nextInt(); - - LocalDate newDate = date.minusDays(days).minusMonths(months); - System.out.println("Новая дата: " + newDate.format(dateFormatter)); - } - - } else if (objectType == 2) { - // Операции со временем - LocalTime time = LocalTime.now(); - System.out.println("Текущее время: " + time.format(timeFormatter)); - - if (operationType == 1) { - System.out.println("Введите количество часов для прибавления:"); - int hours = scanner.nextInt(); - - System.out.println("Введите количество минут для прибавления:"); - int minutes = scanner.nextInt(); - - LocalTime newTime = time.plusHours(hours).plusMinutes(minutes); - System.out.println("Новое время: " + newTime.format(timeFormatter)); - } else { - System.out.println("Введите количество часов для вычитания:"); - int hours = scanner.nextInt(); - - System.out.println("Введите количество минут для вычитания:"); - int minutes = scanner.nextInt(); - - LocalTime newTime = time.minusHours(hours).minusMinutes(minutes); - System.out.println("Новое время: " + newTime.format(timeFormatter)); - } - - } else if (objectType == 3) { - // Операции с датой и временем - LocalDateTime dateTime = LocalDateTime.now(); - System.out.println("Текущие дата и время: " + dateTime.format(dateTimeFormatter)); - - if (operationType == 1) { - System.out.println("Введите количество дней для прибавления:"); - int days = scanner.nextInt(); - - System.out.println("Введите количество месяцев для прибавления:"); - int months = scanner.nextInt(); - - System.out.println("Введите количество часов для прибавления:"); - int hours = scanner.nextInt(); - - System.out.println("Введите количество минут для прибавления:"); - int minutes = scanner.nextInt(); - - LocalDateTime newDateTime = dateTime.plusDays(days).plusMonths(months).plusHours(hours).plusMinutes(minutes); - System.out.println("Новые дата и время: " + newDateTime.format(dateTimeFormatter)); - } else { - System.out.println("Введите количество дней для вычитания:"); - int days = scanner.nextInt(); - - System.out.println("Введите количество месяцев для вычитания:"); - int months = scanner.nextInt(); - - System.out.println("Введите количество часов для вычитания:"); - int hours = scanner.nextInt(); - - System.out.println("Введите количество минут для вычитания:"); - int minutes = scanner.nextInt(); - - LocalDateTime newDateTime = dateTime.minusDays(days).minusMonths(months).minusHours(hours).minusMinutes(minutes); - System.out.println("Новые дата и время: " + newDateTime.format(dateTimeFormatter)); - } - } - - // Ввод и разбор даты - scanner.nextLine(); // consume the newline - System.out.println("Введите дату в формате 'dd-MM-yyyy':"); - String dateString = scanner.nextLine(); - if (dateString != null && !dateString.trim().isEmpty()) { - try { - LocalDate parsedDate = LocalDate.parse(dateString, dateFormatter); - System.out.println("Преобразованная дата: " + parsedDate); - } catch (Exception e) { - System.out.println("Ошибка: Некорректный формат даты."); - } - } else { - System.out.println("Ошибка: Дата не может быть пустой."); - } - - // Ввод и разбор даты и времени - System.out.println("Введите дату и время в формате 'dd-MM-yyyy HH:mm:ss':"); - String dateTimeString = scanner.nextLine(); - if (dateTimeString != null && !dateTimeString.trim().isEmpty()) { - try { - LocalDateTime parsedDateTime = LocalDateTime.parse(dateTimeString, dateTimeFormatter); - System.out.println("Преобразованные дата и время: " + parsedDateTime); - } catch (Exception e) { - System.out.println("Ошибка: Некорректный формат даты и времени."); - } - } else { - System.out.println("Ошибка: Дата и время не могут быть пустыми."); - } - - scanner.close(); - } -} \ No newline at end of file diff --git a/Lab 5-6/book.xml b/Lab 5-6/book.xml new file mode 100644 index 0000000..efe0ef7 --- /dev/null +++ b/Lab 5-6/book.xml @@ -0,0 +1,33 @@ + + + + + + 1 + 1 + Преступление и наказание + Ф.М.Достоевский + + + + 2 + 1 + Мёртвые души + Н.В.Гоголь + + + + 3 + 2 + Улитка на склоне + Братья Стругацкие + + + + 4 + 3 + Любовь хулигана + С.А.Есенин + + + diff --git a/Lab 5-6/employee.xml b/Lab 5-6/employee.xml new file mode 100644 index 0000000..680cb4e --- /dev/null +++ b/Lab 5-6/employee.xml @@ -0,0 +1,23 @@ + + + + + + 1 + 3 + Иванов Иван Иванович + + + + 2 + 2 + Медведев Евгений Юрьевич + + + + 3 + 1 + Михайлова Юлия Вадимовна + + + diff --git a/Lab 5-6/genre.xml b/Lab 5-6/genre.xml new file mode 100644 index 0000000..bd20d57 --- /dev/null +++ b/Lab 5-6/genre.xml @@ -0,0 +1,20 @@ + + + + + + 1 + Классика + + + + 2 + Научная фантастика + + + + 3 + Поэзия + + + diff --git a/Lab 5-6/library.xsl b/Lab 5-6/library.xsl new file mode 100644 index 0000000..0f74759 --- /dev/null +++ b/Lab 5-6/library.xsl @@ -0,0 +1,53 @@ + + + + + +

Library

+ + + + + + + + + + + +
ID жанраНазвание жанра
+ + + + + + + + + + + + + +
ID сотрудникаID жанраФИО
+ + + + + + + + + + + + + + + +
ID книгиID жанраНазваниеАвтор
+ + +
+
\ No newline at end of file diff --git a/Lab 5-6/script.txt b/Lab 5-6/script.txt new file mode 100644 index 0000000..4fe5bcc --- /dev/null +++ b/Lab 5-6/script.txt @@ -0,0 +1,53 @@ +CREATE TABLE Genre ( + GenreID INTEGER PRIMARY KEY, + GenreName varchar(30) NOT NULL +); + +CREATE TABLE Employee ( + EmployeeID int PRIMARY KEY, + GenreID INTEGER, + FIO varchar(50) NOT NULL, + + FOREIGN KEY (GenreID) REFERENCES Genre (GenreID) +); + +CREATE TABLE Book ( + BookID INTEGER PRIMARY KEY, + GenreID INTEGER, + Title varchar(200) NOT NULL, + Author varchar(200) NOT NULL, + FOREIGN KEY (GenreID) REFERENCES Genre (GenreID) +); + +INSERT INTO Genre VALUES +(1, 'Классика'), +(2, 'Научная фантастика'), +(3, 'Поэзия') + +INSERT INTO Employee VALUES +(1, 3, 'Иванов Иван Иванович'), +(2, 2, 'Медведев Евгений Юрьевич'), +(3, 1, 'Михайлова Юлия Вадимовна') + +INSERT INTO Book VALUES +(1, 1, 'Преступление и наказание', 'Ф.М.Достоевский'), +(2, 1, 'Мёртвые души', 'Н.В.Гоголь'), +(3, 2, 'Улитка на склоне', 'Братья Стругацкие'), +(4, 3, 'Любовь хулигана', 'С.А.Есенин') + +COPY (SELECT table_to_xml('Genre', true, false, '')) to 'E:\MiAKD\Lab 5-6\genre.xml'; +COPY (SELECT table_to_xml('Employee', true, false, '')) to 'E:\MiAKD\Lab 5-6\employee.xml'; +COPY (SELECT table_to_xml('Book', true, false, '')) to 'E:\MiAKD\Lab 5-6\book.xml'; + + + +/* Индексы (6 lab) */ + +CREATE INDEX index_g +ON Genre (GenreID) + +CREATE INDEX index_e +ON Employee (EmployeeID) + +CREATE INDEX index_b +ON Book (BookID) \ No newline at end of file diff --git a/Сценарии.docx b/Сценарии.docx new file mode 100644 index 0000000000000000000000000000000000000000..89dc1b8e8013183f9ce1d5a50c78094fba67572a GIT binary patch literal 18205 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