Skip to content

Instantly share code, notes, and snippets.

View sunmeat's full-sized avatar
🐈
MEOW

Oleksandr Zahoruiko sunmeat

🐈
MEOW
View GitHub Profile
@sunmeat
sunmeat / task.md
Last active March 5, 2026 18:21
Багатопотоковий консольний пошук слова у файлах з відгуком інтерфейсу

Напишіть консольний додаток на C#, який виконує пошук заданого слова (або фрази) у всіх текстових файлах у вказаній директорії та всіх її вкладених підпапках.

Основні вимоги:

  • Інтерфейс додатку повинен залишатися чуйним під час пошуку (користувач може вводити команди навіть коли пошук триває).
  • Використовувати кілька потоків (не менше 1 робочого потоку + основний потік для інтерфейсу).

Користувач повинен мати змогу:

  • зупинити пошук повністю (скасувати та вийти з пошуку)
  • призупинити (pause) пошук
#define WIN32_LEAN_AND_MEAN
#include <iostream>
#include <windows.h>
#include <ws2tcpip.h>
#include <string>
#pragma comment (lib, "Ws2_32.lib")
#define DEFAULT_BUFLEN 512
#define DEFAULT_PORT "27015"
#define WIN32_LEAN_AND_MEAN
#include <iostream>
#include <string>
#include <thread>
#include <ws2tcpip.h>
using namespace std;
#pragma comment(lib,"Ws2_32.lib")
@sunmeat
sunmeat / task.md
Created March 5, 2026 09:36
КНД-241 ДЗ на TCP протокол на класах С++

Створіть консольну серверну програму "Курс валют" та консольну клієнтську програму для отримання інформації.

Клієнтська програма підключається до сервера, відправляє повідомлення з назвою двох валют, а сервер повертає курс однієї валюти по відношенню до іншої.

Приклади запитів та відповідей: клієнт відправляє рядок "USD EUR", (сервер повертає курс долара до євро "0.86") клієент відправив "EUR USD" (сервер повертає курс євро до долара "1.16")

Клієнт може запитувати курси доти, доки не від'єднається (командою "EXIT").

#include <iostream>
#include <thread>
#include <string>
#include <cstring>
#include <ctime>
#include <unistd.h>
#include <arpa/inet.h>
#include <sys/socket.h>
using namespace std;
@sunmeat
sunmeat / client.cpp
Created March 5, 2026 06:22
OOP TCP + OOP threads: CLIENT SIDE MacOS version
#include <iostream>
#include <unistd.h> // close(), usleep()
#include <sys/socket.h>
#include <netinet/in.h>
#include <arpa/inet.h>
#include <thread>
#include <atomic>
#include <string>
#include <cstring> // strerror, memset
#include <netdb.h> // getaddrinfo
@sunmeat
sunmeat / server.cpp
Created March 5, 2026 06:20
OOP TCP + OOP-threads: SERVER SIDE MacOS version
#include <iostream>
#include <unistd.h> // close(), sleep()
#include <sys/socket.h>
#include <netinet/in.h>
#include <arpa/inet.h>
#include <thread>
#include <string>
#include <memory> // std::unique_ptr
#include <cstring> // memset
DECLARE @Hour INT;
DECLARE @Greeting NVARCHAR(50);
-- Отримуємо поточну годину на сервері
SET @Hour = DATEPART(HOUR, GETDATE());
-- Визначаємо привітання за часом доби
IF @Hour >= 5 AND @Hour < 12
SET @Greeting = N'Доброго ранку!';
ELSE IF @Hour >= 12 AND @Hour < 18
SELECT
s.id AS SaleID,
p.name AS ProductName,
c.name AS CategoryName,
s.quantity,
s.price,
s.date_of_sale
FROM Sale s
INNER JOIN Product p ON s.id_product = p.id
INNER JOIN Category c ON p.id_category = c.id
@sunmeat
sunmeat / different files.py
Created March 3, 2026 12:10
templateview example
company_site / core / urls.py:
from django.contrib import admin
from django.urls import path, include
from django.conf import settings
from django.conf.urls.static import static
from django.shortcuts import render
from django.views.generic.base import TemplateView
from . import views