diff --git a/ALGA/ALGA.csproj b/ALGA/ALGA.csproj
index 572d7c4..7bc3815 100644
--- a/ALGA/ALGA.csproj
+++ b/ALGA/ALGA.csproj
@@ -7,4 +7,10 @@
OE.ALGA
+
+
+
+
+
+
diff --git a/ALGA/Class2.cs b/ALGA/Class2.cs
new file mode 100644
index 0000000..8c172af
--- /dev/null
+++ b/ALGA/Class2.cs
@@ -0,0 +1,57 @@
+using System;
+using System.Collections.Generic;
+using System.IO;
+using Microsoft.EntityFrameworkCore;
+using Newtonsoft.Json;
+
+namespace OE.ALGA;
+
+public class Employee
+{
+ int Id { get; set; }
+ string Name { get; set; }
+ string Position { get; set; }
+ List Projects { get; set; } = new List();
+}
+public class Project
+{
+ int Id { get; set; }
+ string ProjectName { get; set; }
+ DateOnly StartDate { get; set; }
+ DateOnly EndDate { get; set; }
+ List Tasks { get; set; } = new List();
+}
+public class Task
+{
+ int Id { get; set; }
+ string TaskName { get; set; }
+ int HoursSpent { get; set; }
+}
+public class Workers : DbContext
+{
+ public DbSet Employees { get; set; }
+ public DbSet Projects { get; set; }
+ public DbSet Tasks { get; set; }
+
+ public Workers()
+ {
+ Database.EnsureDeleted();
+ Database.EnsureCreated();
+ }
+ protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
+ {
+ optionsBuilder.UseSqlServer(@"Data Source=(LocalDB)\MSSQLLocalDB;Initial Catalog=workerdb;Integrated Security=True;MultipleActiveResultSets=true");
+ base.OnConfiguring(optionsBuilder);
+ }
+}
+public class Launch
+{
+ static void ThatsAMain()
+ {
+ string json = File.ReadAllText("/home/mirai/alga/ALGA/workers.json");
+ List employees = JsonConvert.DeserializeObject>(json);
+ Workers context = new Workers();
+ context.Employees.AddRange(employees);
+ context.SaveChanges();
+ }
+}
diff --git a/ALGA/Optimalizalas/08_DinamikusProgramozas.cs b/ALGA/Optimalizalas/08_DinamikusProgramozas.cs
index 0d854e7..0eda9f8 100644
--- a/ALGA/Optimalizalas/08_DinamikusProgramozas.cs
+++ b/ALGA/Optimalizalas/08_DinamikusProgramozas.cs
@@ -21,21 +21,25 @@ namespace OE.ALGA.Optimalizalas
public int[,] TablazatFeltoltes()
{
int[,] F = new int[problema.N + 1, problema.Wmax + 1];
- for (int i = 0; i < problema.N; i++)
+ for (int i = 0; i <= problema.N; i++)
{
- for (int j = 0; j < problema.Wmax; j++)
+ F[i, 0] = 0;
+ }
+ for (int j = 1; j <= problema.Wmax; j++)
+ {
+ F[0, j] = 0;
+ }
+ for (int i = 1; i <= problema.N; i++)
+ {
+ for (int j = 1; j <= problema.Wmax; j++)
{
- if (i == 0 || j == 0)
- {
- F[i, j] = 0;
- }
- else if (j < problema.W[i])
+ if (j <= problema.W[i - 1])
{
F[i, j] = F[i - 1, j];
}
else
{
- int[] tomb = new int[] { (F[i - 1, j]), (F[i - 1, j - problema.W[i]] + Convert.ToInt32(problema.P[i])) };
+ int[] tomb = new int[] { (F[i - 1, j]), (F[i - 1, j - problema.W[i - 1]] + Convert.ToInt32(problema.P[i - 1])) };
F[i, j] = tomb.Max();
}
lepesszam++;
@@ -46,7 +50,11 @@ namespace OE.ALGA.Optimalizalas
public float OptimalisErtek()
{
tablazat = TablazatFeltoltes();
- return tablazat[problema.N, problema.Wmax];
+ if (problema.N == 0 || problema.Wmax == 0)
+ {
+ return 0;
+ }
+ return tablazat[problema.N - 1, problema.Wmax - 1];
}
public bool[] OptimalisMegoldas()
{
diff --git a/ALGA/workers.json b/ALGA/workers.json
new file mode 100644
index 0000000..2e92679
--- /dev/null
+++ b/ALGA/workers.json
@@ -0,0 +1,470 @@
+[
+
+ {
+
+ "name": "Kiss Péter",
+
+ "position": "Fejlesztő",
+
+ "projects": [
+
+ {
+
+ "projectName": "Webalkalmazás fejlesztés",
+
+ "startDate": "2023-01-15",
+
+ "endDate": "2023-03-20",
+
+ "tasks": [
+
+ { "taskName": "Front-end implementáció", "hoursSpent": 40 },
+
+ { "taskName": "Back-end implementáció", "hoursSpent": 60 }
+
+ ]
+
+ },
+
+ {
+
+ "projectName": "Mobilalkalmazás fejlesztés",
+
+ "startDate": "2023-04-10",
+
+ "endDate": "2023-06-30",
+
+ "tasks": [
+
+ { "taskName": "UI tervezés", "hoursSpent": 20 },
+
+ { "taskName": "API integráció", "hoursSpent": 50 }
+
+ ]
+
+ }
+
+ ]
+
+ },
+
+ {
+
+ "name": "Nagy Anna",
+
+ "position": "Projektmenedzser",
+
+ "projects": [
+
+ {
+
+ "projectName": "Szoftver tesztelés",
+
+ "startDate": "2023-02-01",
+
+ "endDate": "2023-03-10",
+
+ "tasks": [
+
+ { "taskName": "Tesztelési terv készítése", "hoursSpent": 15 },
+
+ { "taskName": "Automatizált tesztek", "hoursSpent": 45 }
+
+ ]
+
+ }
+
+ ]
+
+ },
+
+ {
+
+ "name": "Szabó László",
+
+ "position": "Elemző",
+
+ "projects": [
+
+ {
+
+ "projectName": "Adatgyűjtés",
+
+ "startDate": "2023-01-20",
+
+ "endDate": "2023-04-05",
+
+ "tasks": [
+
+ { "taskName": "Adattisztítás", "hoursSpent": 30 },
+
+ { "taskName": "Adatvizualizáció", "hoursSpent": 25 }
+
+ ]
+
+ }
+
+ ]
+
+ },
+
+ {
+
+ "name": "Horváth Emese",
+
+ "position": "Marketing szakértő",
+
+ "projects": [
+
+ {
+
+ "projectName": "Kampánytervezés",
+
+ "startDate": "2023-03-01",
+
+ "endDate": "2023-05-15",
+
+ "tasks": [
+
+ { "taskName": "Célcsoport elemzés", "hoursSpent": 10 },
+
+ { "taskName": "Kampány kivitelezés", "hoursSpent": 35 }
+
+ ]
+
+ }
+
+ ]
+
+ },
+
+ {
+
+ "name": "Molnár Zoltán",
+
+ "position": "Backend fejlesztő",
+
+ "projects": [
+
+ {
+
+ "projectName": "Adatbázis optimalizáció",
+
+ "startDate": "2023-02-10",
+
+ "endDate": "2023-03-30",
+
+ "tasks": [
+
+ { "taskName": "Lekérdezések optimalizálása", "hoursSpent": 25 },
+
+ { "taskName": "Indexek készítése", "hoursSpent": 20 }
+
+ ]
+
+ }
+
+ ]
+
+ },
+
+ {
+
+ "name": "Kovács Gábor",
+
+ "position": "Frontend fejlesztő",
+
+ "projects": [
+
+ {
+
+ "projectName": "UI fejlesztés",
+
+ "startDate": "2023-01-05",
+
+ "endDate": "2023-02-15",
+
+ "tasks": [
+
+ { "taskName": "HTML/CSS fejlesztés", "hoursSpent": 35 },
+
+ { "taskName": "JavaScript implementáció", "hoursSpent": 30 }
+
+ ]
+
+ }
+
+ ]
+
+ },
+
+ {
+
+ "name": "Tóth Erika",
+
+ "position": "Tesztmérnök",
+
+ "projects": [
+
+ {
+
+ "projectName": "Szoftver minőségbiztosítás",
+
+ "startDate": "2023-04-01",
+
+ "endDate": "2023-06-01",
+
+ "tasks": [
+
+ { "taskName": "Tesztelés", "hoursSpent": 50 },
+
+ { "taskName": "Hibajavítás", "hoursSpent": 20 }
+
+ ]
+
+ }
+
+ ]
+
+ },
+
+ {
+
+ "name": "Varga András",
+
+ "position": "Projektmenedzser",
+
+ "projects": [
+
+ {
+
+ "projectName": "Agilis fejlesztés",
+
+ "startDate": "2023-01-15",
+
+ "endDate": "2023-04-20",
+
+ "tasks": [
+
+ { "taskName": "Csapat koordinálás", "hoursSpent": 30 },
+
+ { "taskName": "Időterv készítés", "hoursSpent": 25 }
+
+ ]
+
+ }
+
+ ]
+
+ },
+
+ {
+
+ "name": "Bognár Rita",
+
+ "position": "Adatbányász",
+
+ "projects": [
+
+ {
+
+ "projectName": "Piackutatás",
+
+ "startDate": "2023-03-10",
+
+ "endDate": "2023-05-20",
+
+ "tasks": [
+
+ { "taskName": "Adatgyűjtés", "hoursSpent": 40 },
+
+ { "taskName": "Elemzés", "hoursSpent": 30 }
+
+ ]
+
+ }
+
+ ]
+
+ },
+
+ {
+
+ "name": "Szilágyi Tamás",
+
+ "position": "DevOps mérnök",
+
+ "projects": [
+
+ {
+
+ "projectName": "Infrastruktúra automatizálás",
+
+ "startDate": "2023-02-15",
+
+ "endDate": "2023-03-30",
+
+ "tasks": [
+
+ { "taskName": "CI/CD pipeline fejlesztés", "hoursSpent": 60 },
+
+ { "taskName": "Deploy folyamatok optimalizálása", "hoursSpent": 30 }
+
+ ]
+
+ }
+
+ ]
+
+ },
+
+ {
+
+ "name": "Kiss Júlia",
+
+ "position": "Szoftverfejlesztő",
+
+ "projects": [
+
+ {
+
+ "projectName": "E-kereskedelmi platform fejlesztés",
+
+ "startDate": "2023-01-25",
+
+ "endDate": "2023-04-15",
+
+ "tasks": [
+
+ { "taskName": "Backend logika", "hoursSpent": 45 },
+
+ { "taskName": "Frontend integráció", "hoursSpent": 35 }
+
+ ]
+
+ }
+
+ ]
+
+ },
+
+ {
+
+ "name": "Tóth László",
+
+ "position": "Full Stack fejlesztő",
+
+ "projects": [
+
+ {
+
+ "projectName": "Mobilalkalmazás UI/UX fejlesztés",
+
+ "startDate": "2023-02-01",
+
+ "endDate": "2023-05-01",
+
+ "tasks": [
+
+ { "taskName": "UI tervezés", "hoursSpent": 40 },
+
+ { "taskName": "Backend integráció", "hoursSpent": 50 }
+
+ ]
+
+ }
+
+ ]
+
+ },
+
+ {
+
+ "name": "Farkas János",
+
+ "position": "Adatbiztonsági szakértő",
+
+ "projects": [
+
+ {
+
+ "projectName": "Biztonsági audit",
+
+ "startDate": "2023-03-05",
+
+ "endDate": "2023-06-10",
+
+ "tasks": [
+
+ { "taskName": "Sebezhetőségek felderítése", "hoursSpent": 20 },
+
+ { "taskName": "Javítási javaslatok", "hoursSpent": 30 }
+
+ ]
+
+ }
+
+ ]
+
+ },
+
+ {
+
+ "name": "Nagy Attila",
+
+ "position": "Tesztelő",
+
+ "projects": [
+
+ {
+
+ "projectName": "Mobilalkalmazás tesztelés",
+
+ "startDate": "2023-01-20",
+
+ "endDate": "2023-02-25",
+
+ "tasks": [
+
+ { "taskName": "Automatizált tesztelés", "hoursSpent": 25 },
+
+ { "taskName": "Kézi tesztelés", "hoursSpent": 40 }
+
+ ]
+
+ }
+
+ ]
+
+ },
+
+ {
+
+ "name": "Kovács Róbert",
+
+ "position": "Üzleti elemző",
+
+ "projects": [
+
+ {
+
+ "projectName": "Folyamat elemzés",
+
+ "startDate": "2023-01-10",
+
+ "endDate": "2023-04-10",
+
+ "tasks": [
+
+ { "taskName": "Folyamat elemzése", "hoursSpent": 30 },
+
+ { "taskName": "Dokumentáció", "hoursSpent": 15 }
+
+ ]
+
+ }
+
+ ]
+
+ }
+]
\ No newline at end of file