Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
25 changes: 25 additions & 0 deletions KrokTestCase2024/KrokTestCase2024.sln
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@

Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio Version 17
VisualStudioVersion = 17.9.34728.123
MinimumVisualStudioVersion = 10.0.40219.1
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "KrokTestCase2024", "KrokTestCase2024\KrokTestCase2024.csproj", "{D2770C3D-9CD8-43A6-87A9-718DA8151A66}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Release|Any CPU = Release|Any CPU
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{D2770C3D-9CD8-43A6-87A9-718DA8151A66}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{D2770C3D-9CD8-43A6-87A9-718DA8151A66}.Debug|Any CPU.Build.0 = Debug|Any CPU
{D2770C3D-9CD8-43A6-87A9-718DA8151A66}.Release|Any CPU.ActiveCfg = Release|Any CPU
{D2770C3D-9CD8-43A6-87A9-718DA8151A66}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {6A972230-BA66-4E7C-9EF3-37FBE5FA72B3}
EndGlobalSection
EndGlobal
10 changes: 10 additions & 0 deletions KrokTestCase2024/KrokTestCase2024/KrokTestCase2024.csproj
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
<Project Sdk="Microsoft.NET.Sdk">

<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>net8.0</TargetFramework>
<ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable>
</PropertyGroup>

</Project>
50 changes: 50 additions & 0 deletions KrokTestCase2024/KrokTestCase2024/Program.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
using System.Globalization;

namespace KrokTestCase2024
{
class Program
{
static void Main(string[] args)
{
//Получаем словарь с ключем в виде стейхолдера и значением в виде его строки со значениями.
Dictionary<string, List<double>> interest = ReadMatrix("interest.txt");
Dictionary<string, List<double>> influence = ReadMatrix("influence.txt");
//Получаем количество стейкхолдеров.
List<string> stakeholders = interest.Keys.ToList();
//Объевляем новый список, в котором будут перечислены самые важные стейкхолдеры.
List<string> result = new List<string>();
//Для определения самых важных стейкхолдеров, нужно поделить количество стейкхолдеров на 2, с этим значением и будут сравниваться значения из списка.
double stakeholdersCount = interest.Keys.Count / 2;

for (int i = 0; i < stakeholders.Count; i++)
{
//Если суммарное значение интереса И влияния для каждой строки (для каждого стрейкхолдера) больше чем переменная stakeholdersCount, то добавляем стейкхолдера в список result.
if (interest[stakeholders[i]].Sum() > stakeholdersCount && influence[stakeholders[i]].Sum() > stakeholdersCount)
{
result.Add(stakeholders[i]);
}
}
//Выводим полученные данные в файл result.txt.
File.WriteAllLines("result.txt", result);
}
//Данный метод принимает исходный файл и возвращает словарь с ключем в виде стейхолдера (Stakeholder[i]) и значением в виде списка со значениями для каждого нашего стейкхолдера.
static Dictionary<string, List<double>> ReadMatrix(string fileName)
{
//Получаем данные из файла в массив
string[] ourFile = File.ReadAllLines(fileName);
//Обрабатываем количество стейкхолдеров, разделяя их по символу '|' и удаляя пробелы.
List<string> stakeholders = ourFile[0].Split('|').Select(x => x.Trim()).ToList();
//Создаем пустой словарь
Dictionary<string, List<double>> matrix = new Dictionary<string, List<double>>();

for (int i = 1; i < ourFile.Length; i++)
{
//Перебираем наш файл и записываем значения в список, вместо символа "_" будет использоваться 0.
List<double> values = ourFile[i].Split(' ').Select(x => x == "_" ? 0 : double.Parse(x, CultureInfo.InvariantCulture)).ToList();
//Каждому стейкхолдеру(ключу) присваиваем его значение, которые представлено в виде списка значений.
matrix.Add(stakeholders[i - 1], values);
}
return matrix;
}
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
{
"runtimeTarget": {
"name": ".NETCoreApp,Version=v8.0",
"signature": ""
},
"compilationOptions": {},
"targets": {
".NETCoreApp,Version=v8.0": {
"KrokTestCase2024/1.0.0": {
"runtime": {
"KrokTestCase2024.dll": {}
}
}
}
},
"libraries": {
"KrokTestCase2024/1.0.0": {
"type": "project",
"serviceable": false,
"sha512": ""
}
}
}
Binary file not shown.
Binary file not shown.
Binary file not shown.
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
{
"runtimeOptions": {
"tfm": "net8.0",
"framework": {
"name": "Microsoft.NETCore.App",
"version": "8.0.0"
},
"configProperties": {
"System.Runtime.Serialization.EnableUnsafeBinaryFormatterSerialization": false
}
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
Stakeholder 1 | Stakeholder 2 | Stakeholder 3
_ 1 1
0 _ 0.5
0 0.5 _
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
Stakeholder 1 | Stakeholder 2 | Stakeholder 3
_ 1 1
0 _ 0.5
0 0.5 _
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Stakeholder 1
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
//------------------------------------------------------------------------------
// <auto-generated>
// Этот код создан программой.
// Исполняемая версия:4.0.30319.42000
//
// Изменения в этом файле могут привести к неправильной работе и будут потеряны в случае
// повторной генерации кода.
// </auto-generated>
//------------------------------------------------------------------------------

using System;
using System.Reflection;

[assembly: System.Reflection.AssemblyCompanyAttribute("KrokTestCase2024")]
[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0")]
[assembly: System.Reflection.AssemblyProductAttribute("KrokTestCase2024")]
[assembly: System.Reflection.AssemblyTitleAttribute("KrokTestCase2024")]
[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]

// Создано классом WriteCodeFragment MSBuild.

Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
45259b6f97005d8ebf8795d8df52105ca90662764dd7af5928813ea74520e8b3
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
is_global = true
build_property.TargetFramework = net8.0
build_property.TargetPlatformMinVersion =
build_property.UsingMicrosoftNETSdkWeb =
build_property.ProjectTypeGuids =
build_property.InvariantGlobalization =
build_property.PlatformNeutralAssembly =
build_property.EnforceExtendedAnalyzerRules =
build_property._SupportedPlatformList = Linux,macOS,Windows
build_property.RootNamespace = KrokTestCase2024
build_property.ProjectDir = D:\VisualProjects\KrokTestCase2024\KrokTestCase2024\
build_property.EnableComHosting =
build_property.EnableGeneratedComInterfaceComImportInterop =
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
// <auto-generated/>
global using global::System;
global using global::System.Collections.Generic;
global using global::System.IO;
global using global::System.Linq;
global using global::System.Net.Http;
global using global::System.Threading;
global using global::System.Threading.Tasks;
Binary file not shown.
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
493e3a3124426f7fd44ca380f4fd1bf5734d6158807085a6d165ee3d9c9be275
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
D:\VisualProjects\KrokTestCase2024\KrokTestCase2024\bin\Debug\net8.0\KrokTestCase2024.exe
D:\VisualProjects\KrokTestCase2024\KrokTestCase2024\bin\Debug\net8.0\KrokTestCase2024.deps.json
D:\VisualProjects\KrokTestCase2024\KrokTestCase2024\bin\Debug\net8.0\KrokTestCase2024.runtimeconfig.json
D:\VisualProjects\KrokTestCase2024\KrokTestCase2024\bin\Debug\net8.0\KrokTestCase2024.dll
D:\VisualProjects\KrokTestCase2024\KrokTestCase2024\bin\Debug\net8.0\KrokTestCase2024.pdb
D:\VisualProjects\KrokTestCase2024\KrokTestCase2024\obj\Debug\net8.0\KrokTestCase2024.GeneratedMSBuildEditorConfig.editorconfig
D:\VisualProjects\KrokTestCase2024\KrokTestCase2024\obj\Debug\net8.0\KrokTestCase2024.AssemblyInfoInputs.cache
D:\VisualProjects\KrokTestCase2024\KrokTestCase2024\obj\Debug\net8.0\KrokTestCase2024.AssemblyInfo.cs
D:\VisualProjects\KrokTestCase2024\KrokTestCase2024\obj\Debug\net8.0\KrokTestCase2024.csproj.CoreCompileInputs.cache
D:\VisualProjects\KrokTestCase2024\KrokTestCase2024\obj\Debug\net8.0\KrokTestCase2024.dll
D:\VisualProjects\KrokTestCase2024\KrokTestCase2024\obj\Debug\net8.0\refint\KrokTestCase2024.dll
D:\VisualProjects\KrokTestCase2024\KrokTestCase2024\obj\Debug\net8.0\KrokTestCase2024.pdb
D:\VisualProjects\KrokTestCase2024\KrokTestCase2024\obj\Debug\net8.0\KrokTestCase2024.genruntimeconfig.cache
D:\VisualProjects\KrokTestCase2024\KrokTestCase2024\obj\Debug\net8.0\ref\KrokTestCase2024.dll
Binary file not shown.
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
66eb3c37f421be7638767c7a89585b0d067a3b68357d7ca085ce69f0d26ea4f8
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Original file line number Diff line number Diff line change
@@ -0,0 +1,68 @@
{
"format": 1,
"restore": {
"D:\\VisualProjects\\KrokTestCase2024\\KrokTestCase2024\\KrokTestCase2024.csproj": {}
},
"projects": {
"D:\\VisualProjects\\KrokTestCase2024\\KrokTestCase2024\\KrokTestCase2024.csproj": {
"version": "1.0.0",
"restore": {
"projectUniqueName": "D:\\VisualProjects\\KrokTestCase2024\\KrokTestCase2024\\KrokTestCase2024.csproj",
"projectName": "KrokTestCase2024",
"projectPath": "D:\\VisualProjects\\KrokTestCase2024\\KrokTestCase2024\\KrokTestCase2024.csproj",
"packagesPath": "C:\\Users\\rz_pa\\.nuget\\packages\\",
"outputPath": "D:\\VisualProjects\\KrokTestCase2024\\KrokTestCase2024\\obj\\",
"projectStyle": "PackageReference",
"configFilePaths": [
"C:\\Users\\rz_pa\\AppData\\Roaming\\NuGet\\NuGet.Config",
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config"
],
"originalTargetFrameworks": [
"net8.0"
],
"sources": {
"C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {},
"https://api.nuget.org/v3/index.json": {}
},
"frameworks": {
"net8.0": {
"targetAlias": "net8.0",
"projectReferences": {}
}
},
"warningProperties": {
"warnAsError": [
"NU1605"
]
},
"restoreAuditProperties": {
"enableAudit": "true",
"auditLevel": "low",
"auditMode": "direct"
}
},
"frameworks": {
"net8.0": {
"targetAlias": "net8.0",
"imports": [
"net461",
"net462",
"net47",
"net471",
"net472",
"net48",
"net481"
],
"assetTargetFallback": true,
"warn": true,
"frameworkReferences": {
"Microsoft.NETCore.App": {
"privateAssets": "all"
}
},
"runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\8.0.204/PortableRuntimeIdentifierGraph.json"
}
}
}
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
<?xml version="1.0" encoding="utf-8" standalone="no"?>
<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
<RestoreSuccess Condition=" '$(RestoreSuccess)' == '' ">True</RestoreSuccess>
<RestoreTool Condition=" '$(RestoreTool)' == '' ">NuGet</RestoreTool>
<ProjectAssetsFile Condition=" '$(ProjectAssetsFile)' == '' ">$(MSBuildThisFileDirectory)project.assets.json</ProjectAssetsFile>
<NuGetPackageRoot Condition=" '$(NuGetPackageRoot)' == '' ">$(UserProfile)\.nuget\packages\</NuGetPackageRoot>
<NuGetPackageFolders Condition=" '$(NuGetPackageFolders)' == '' ">C:\Users\rz_pa\.nuget\packages\</NuGetPackageFolders>
<NuGetProjectStyle Condition=" '$(NuGetProjectStyle)' == '' ">PackageReference</NuGetProjectStyle>
<NuGetToolVersion Condition=" '$(NuGetToolVersion)' == '' ">6.9.2</NuGetToolVersion>
</PropertyGroup>
<ItemGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
<SourceRoot Include="C:\Users\rz_pa\.nuget\packages\" />
</ItemGroup>
</Project>
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
<?xml version="1.0" encoding="utf-8" standalone="no"?>
<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" />
73 changes: 73 additions & 0 deletions KrokTestCase2024/KrokTestCase2024/obj/project.assets.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,73 @@
{
"version": 3,
"targets": {
"net8.0": {}
},
"libraries": {},
"projectFileDependencyGroups": {
"net8.0": []
},
"packageFolders": {
"C:\\Users\\rz_pa\\.nuget\\packages\\": {}
},
"project": {
"version": "1.0.0",
"restore": {
"projectUniqueName": "D:\\VisualProjects\\KrokTestCase2024\\KrokTestCase2024\\KrokTestCase2024.csproj",
"projectName": "KrokTestCase2024",
"projectPath": "D:\\VisualProjects\\KrokTestCase2024\\KrokTestCase2024\\KrokTestCase2024.csproj",
"packagesPath": "C:\\Users\\rz_pa\\.nuget\\packages\\",
"outputPath": "D:\\VisualProjects\\KrokTestCase2024\\KrokTestCase2024\\obj\\",
"projectStyle": "PackageReference",
"configFilePaths": [
"C:\\Users\\rz_pa\\AppData\\Roaming\\NuGet\\NuGet.Config",
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config"
],
"originalTargetFrameworks": [
"net8.0"
],
"sources": {
"C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {},
"https://api.nuget.org/v3/index.json": {}
},
"frameworks": {
"net8.0": {
"targetAlias": "net8.0",
"projectReferences": {}
}
},
"warningProperties": {
"warnAsError": [
"NU1605"
]
},
"restoreAuditProperties": {
"enableAudit": "true",
"auditLevel": "low",
"auditMode": "direct"
}
},
"frameworks": {
"net8.0": {
"targetAlias": "net8.0",
"imports": [
"net461",
"net462",
"net47",
"net471",
"net472",
"net48",
"net481"
],
"assetTargetFallback": true,
"warn": true,
"frameworkReferences": {
"Microsoft.NETCore.App": {
"privateAssets": "all"
}
},
"runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\8.0.204/PortableRuntimeIdentifierGraph.json"
}
}
}
}
8 changes: 8 additions & 0 deletions KrokTestCase2024/KrokTestCase2024/obj/project.nuget.cache
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
{
"version": 2,
"dgSpecHash": "ai+jL3fyyLzQYZtUhwH7CGI2j6cKPcJkurEBGoIFkPj2IZLTyRuG1C/TLnwXQ0svy0bv0FlpDr2N2b0NepNNKg==",
"success": true,
"projectFilePath": "D:\\VisualProjects\\KrokTestCase2024\\KrokTestCase2024\\KrokTestCase2024.csproj",
"expectedPackageFiles": [],
"logs": []
}
Loading