Ver código fonte

Создание проекта

unknown 2 anos atrás
commit
038eafd36c

BIN
ПроверкаПродукции/.vs/ПроверкаПродукции/v17/.suo


+ 25 - 0
ПроверкаПродукции/ПроверкаПродукции.sln

@@ -0,0 +1,25 @@
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio Version 17
+VisualStudioVersion = 17.2.32526.322
+MinimumVisualStudioVersion = 10.0.40219.1
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ПроверкаПродукции", "\main\RDP\31П\ПигалевЕД\Desktop\Экзамен\ПроверкаПродукции\ПроверкаПродукции\ПроверкаПродукции.csproj", "{6308466A-1AAF-43BF-9555-D89C61299A53}"
+EndProject
+Global
+	GlobalSection(SolutionConfigurationPlatforms) = preSolution
+		Debug|Any CPU = Debug|Any CPU
+		Release|Any CPU = Release|Any CPU
+	EndGlobalSection
+	GlobalSection(ProjectConfigurationPlatforms) = postSolution
+		{6308466A-1AAF-43BF-9555-D89C61299A53}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{6308466A-1AAF-43BF-9555-D89C61299A53}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{6308466A-1AAF-43BF-9555-D89C61299A53}.Release|Any CPU.ActiveCfg = Release|Any CPU
+		{6308466A-1AAF-43BF-9555-D89C61299A53}.Release|Any CPU.Build.0 = Release|Any CPU
+	EndGlobalSection
+	GlobalSection(SolutionProperties) = preSolution
+		HideSolutionNode = FALSE
+	EndGlobalSection
+	GlobalSection(ExtensibilityGlobals) = postSolution
+		SolutionGuid = {46608A46-5EB6-449F-84BD-1E97312BD92E}
+	EndGlobalSection
+EndGlobal

+ 6 - 0
ПроверкаПродукции/ПроверкаПродукции/App.config

@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<configuration>
+    <startup> 
+        <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.7.2" />
+    </startup>
+</configuration>

+ 195 - 0
ПроверкаПродукции/ПроверкаПродукции/FileWork.cs

@@ -0,0 +1,195 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using System.Windows.Forms;
+
+namespace ПроверкаПродукции
+{
+    internal class FileWork
+    {
+        public static string pathStart; // Путь к исходному файлу
+        public static string pathEnd; // Путь к конечному файлу
+        public void VvodNameFile()
+        {
+            char otv; // Переменная для диалога
+            while (true)
+            {
+                Console.WriteLine("После нажатия Enter, Вам необходимо указать csv файл где хранятся входные данные");
+                Console.ReadKey();
+                OpenFileDialog OD = new OpenFileDialog();
+                OD.DefaultExt = ".csv";
+                OD.Filter = "Text documents (.csv)|*.csv";
+                if (OD.ShowDialog() == DialogResult.OK)
+                {
+                    pathStart = OD.FileName;
+                    break;
+                }
+                else
+                {
+                    while (true)
+                    {
+                        try
+                        {
+                            Console.Write("\nЖелаете повторить выбор входных данных?\nДа(Y)/Нет(N)\nОтвет: ");
+                            otv = Convert.ToChar(Console.ReadLine());
+                            break;
+                        }
+                        catch
+                        {
+                            Console.WriteLine("Введены некорректные данные!");
+                        }
+                    }
+                    if ((otv.Equals('N') || otv.Equals('N') || otv.Equals('Т') || otv.Equals('т')))
+                    {
+                        return;
+                    }
+                }
+            }
+        }
+        public void SaveNameFile() // Определение файла для вывода результатов
+        {
+            char otv; // Переменная для диалога с пользователем
+            while (true)
+            {
+                Console.WriteLine("После нажатия Enter, Вам необходимо указать csv файл куда будет сохранён результат");
+                Console.ReadKey();
+                SaveFileDialog OD = new SaveFileDialog();
+                OD.DefaultExt = ".csv";
+                OD.Filter = "Text documents (.csv)|*.csv";
+                if (OD.ShowDialog() == DialogResult.OK)
+                {
+                    pathEnd = OD.FileName;
+                    break;
+                }
+                else
+                {
+                    while (true)
+                    {
+                        try
+                        {
+                            Console.Write("\nЖелаете повторить выбор файла?\nДа(Y)/Нет(N)\nОтвет: ");
+                            otv = Convert.ToChar(Console.ReadLine());
+                            break;
+                        }
+                        catch
+                        {
+                            Console.WriteLine("Введены некорректные данные!");
+                        }
+                    }
+                    if ((otv.Equals('N') || otv.Equals('N') || otv.Equals('Т') || otv.Equals('т')))
+                    {
+                        return;
+                    }
+                }
+            }
+        }
+        public void GetData(ref int[,] Time, ref int[] From, ref int[] Where) // Взятие входных данных из файла
+        {
+            var lines = File.ReadAllLines(pathStart);
+            string[][] text = new string[lines.Length][];
+            for (int i = 0; i < text.Length; i++)
+            {
+                text[i] = lines[i].Split(';');
+            }
+            Time = new int[text.Length - 1, text[text.Length - 2].Length - 1];
+            From = new int[text[text.Length - 2].Length - 1];
+            Where = new int[text.Length - 1];
+            int k = 0;
+            foreach (string[] line in text)
+            {
+                int p = 0;
+                foreach (string s in line)
+                {
+                    if (k != 0 && p != 0)
+                    {
+                        Time[k - 1, p - 1] = Convert.ToInt32(s);
+                    }
+                    if (k != 0 && p == 0)
+                    {
+                        From[k - 1] = Convert.ToInt32(s);
+                    }
+                    if (k == 0 && p != 0)
+                    {
+                        Where[p - 1] = Convert.ToInt32(s);
+                    }
+                    p++;
+                }
+                k++;
+            }
+        }
+        public bool Proverka() // Проверка входных данных
+        {
+            var lines = File.ReadAllLines(pathStart);
+            string[][] text = new string[lines.Length][];
+            for (int i = 0; i < text.Length; i++)
+            {
+                text[i] = lines[i].Split(';');
+            }
+            int k = 0;
+            foreach (string[] line in text)
+            {
+                int p = 0;
+                foreach (string s in line)
+                {
+                    try
+                    {
+                        if (k != 0 && p != 0)
+                        {
+                            if (Convert.ToInt32(s) < 0)
+                            {
+                                Console.WriteLine("Время переезда не может быть отрицательным!");
+                                return true;
+                            }
+                        }
+                        if (k != 0 && p == 0)
+                        {
+                            if (Convert.ToInt32(s) <= 0)
+                            {
+                                Console.WriteLine("Пункты не могут иметь значение 0 или отрицательные!");
+                                return true;
+                            }
+                        }
+                        if (k == 0 && p != 0)
+                        {
+                            if (Convert.ToInt32(s) <= 0)
+                            {
+                                Console.WriteLine("Пункты не могут иметь значение 0 или отрицательные!");
+                                return true;
+                            }
+                        }
+                        p++;
+                    }
+                    catch
+                    {
+                        Console.WriteLine("Во входных данных присутствуют некоректные данные, исправьте их и попробуйте снова");
+                        return true;
+                    }
+                }
+                k++;
+            }
+            return false;
+        }
+        public void OutputResult(int maxF, int[] F, string[] path)
+        {
+            File.AppendAllText(pathEnd, "Результат:", Encoding.UTF8);
+            File.AppendAllText(pathEnd, Environment.NewLine);
+            for (int i = 0; i < path.Length; i++)
+            {
+                File.AppendAllText(pathEnd, "Маршрут " + (i + 1) + ";" + path[i] + ";F = ;" + F[i], Encoding.UTF8);
+                File.AppendAllText(pathEnd, Environment.NewLine);
+            }
+            for (int i = 0; i < path.Length; i++)
+            {
+                if (maxF == F[i])
+                {
+                    File.AppendAllText(pathEnd, "Оптимальный маршрут равен " + F[i] + " дней;", Encoding.UTF8);
+                    File.AppendAllText(pathEnd, Environment.NewLine);
+                    File.AppendAllText(pathEnd, "Оптимальный маршрут:;" + path[i], Encoding.UTF8);
+                    File.AppendAllText(pathEnd, Environment.NewLine);
+                }
+            }
+        }
+    }
+}

+ 15 - 0
ПроверкаПродукции/ПроверкаПродукции/Program.cs

@@ -0,0 +1,15 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace ПроверкаПродукции
+{
+    internal class Program
+    {
+        static void Main(string[] args)
+        {
+        }
+    }
+}

+ 36 - 0
ПроверкаПродукции/ПроверкаПродукции/Properties/AssemblyInfo.cs

@@ -0,0 +1,36 @@
+using System.Reflection;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+// Общие сведения об этой сборке предоставляются следующим набором
+// набора атрибутов. Измените значения этих атрибутов для изменения сведений,
+// связанные с этой сборкой.
+[assembly: AssemblyTitle("ПроверкаПродукции")]
+[assembly: AssemblyDescription("")]
+[assembly: AssemblyConfiguration("")]
+[assembly: AssemblyCompany("")]
+[assembly: AssemblyProduct("ПроверкаПродукции")]
+[assembly: AssemblyCopyright("Copyright ©  2022")]
+[assembly: AssemblyTrademark("")]
+[assembly: AssemblyCulture("")]
+
+// Установка значения False для параметра ComVisible делает типы в этой сборке невидимыми
+// для компонентов COM. Если необходимо обратиться к типу в этой сборке через
+// из модели COM задайте для атрибута ComVisible этого типа значение true.
+[assembly: ComVisible(false)]
+
+// Следующий GUID представляет идентификатор typelib, если этот проект доступен из модели COM
+[assembly: Guid("6308466a-1aaf-43bf-9555-d89c61299a53")]
+
+// Сведения о версии сборки состоят из указанных ниже четырех значений:
+//
+//      Основной номер версии
+//      Дополнительный номер версии
+//      Номер сборки
+//      Номер редакции
+//
+// Можно задать все значения или принять номера сборки и редакции по умолчанию 
+// используя "*", как показано ниже:
+// [assembly: AssemblyVersion("1.0.*")]
+[assembly: AssemblyVersion("1.0.0.0")]
+[assembly: AssemblyFileVersion("1.0.0.0")]

+ 4 - 0
ПроверкаПродукции/ПроверкаПродукции/obj/Debug/.NETFramework,Version=v4.7.2.AssemblyAttributes.cs

@@ -0,0 +1,4 @@
+// <autogenerated />
+using System;
+using System.Reflection;
+[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETFramework,Version=v4.7.2", FrameworkDisplayName = ".NET Framework 4.7.2")]

BIN
ПроверкаПродукции/ПроверкаПродукции/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache


BIN
ПроверкаПродукции/ПроверкаПродукции/obj/Debug/ПроверкаПродукции.csproj.AssemblyReference.cache


+ 53 - 0
ПроверкаПродукции/ПроверкаПродукции/ПроверкаПродукции.csproj

@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
+  <PropertyGroup>
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+    <ProjectGuid>{6308466A-1AAF-43BF-9555-D89C61299A53}</ProjectGuid>
+    <OutputType>Exe</OutputType>
+    <RootNamespace>ПроверкаПродукции</RootNamespace>
+    <AssemblyName>ПроверкаПродукции</AssemblyName>
+    <TargetFrameworkVersion>v4.7.2</TargetFrameworkVersion>
+    <FileAlignment>512</FileAlignment>
+    <AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
+    <Deterministic>true</Deterministic>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+    <PlatformTarget>AnyCPU</PlatformTarget>
+    <DebugSymbols>true</DebugSymbols>
+    <DebugType>full</DebugType>
+    <Optimize>false</Optimize>
+    <OutputPath>bin\Debug\</OutputPath>
+    <DefineConstants>DEBUG;TRACE</DefineConstants>
+    <ErrorReport>prompt</ErrorReport>
+    <WarningLevel>4</WarningLevel>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+    <PlatformTarget>AnyCPU</PlatformTarget>
+    <DebugType>pdbonly</DebugType>
+    <Optimize>true</Optimize>
+    <OutputPath>bin\Release\</OutputPath>
+    <DefineConstants>TRACE</DefineConstants>
+    <ErrorReport>prompt</ErrorReport>
+    <WarningLevel>4</WarningLevel>
+  </PropertyGroup>
+  <ItemGroup>
+    <Reference Include="System" />
+    <Reference Include="System.Core" />
+    <Reference Include="System.Xml.Linq" />
+    <Reference Include="System.Data.DataSetExtensions" />
+    <Reference Include="Microsoft.CSharp" />
+    <Reference Include="System.Data" />
+    <Reference Include="System.Net.Http" />
+    <Reference Include="System.Xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <Compile Include="Program.cs" />
+    <Compile Include="Properties\AssemblyInfo.cs" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="App.config" />
+  </ItemGroup>
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
+</Project>