diff --git "a/work/K3321/\320\257\320\267\320\265\320\262_\320\223\321\200\320\270\320\263\320\276\321\200\320\270\320\271_\320\220\320\275\320\264\321\200\320\265\320\265\320\262\320\270\321\207/lab6/task1/client.py" "b/work/K3321/\320\257\320\267\320\265\320\262_\320\223\321\200\320\270\320\263\320\276\321\200\320\270\320\271_\320\220\320\275\320\264\321\200\320\265\320\265\320\262\320\270\321\207/lab6/task1/client.py" new file mode 100644 index 000000000..fc7c31c36 --- /dev/null +++ "b/work/K3321/\320\257\320\267\320\265\320\262_\320\223\321\200\320\270\320\263\320\276\321\200\320\270\320\271_\320\220\320\275\320\264\321\200\320\265\320\265\320\262\320\270\321\207/lab6/task1/client.py" @@ -0,0 +1,10 @@ +import socket + +def client_hello(): + client_socket = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) + client_socket.sendto(b"Hello, server", ("localhost", 9090)) + response, _ = client_socket.recvfrom(1024) + print(f"Ответ сервера: {response.decode()}") + +if __name__ == '__main__': + client_hello() \ No newline at end of file diff --git "a/work/K3321/\320\257\320\267\320\265\320\262_\320\223\321\200\320\270\320\263\320\276\321\200\320\270\320\271_\320\220\320\275\320\264\321\200\320\265\320\265\320\262\320\270\321\207/lab6/task1/server.py" "b/work/K3321/\320\257\320\267\320\265\320\262_\320\223\321\200\320\270\320\263\320\276\321\200\320\270\320\271_\320\220\320\275\320\264\321\200\320\265\320\265\320\262\320\270\321\207/lab6/task1/server.py" new file mode 100644 index 000000000..1124af16f --- /dev/null +++ "b/work/K3321/\320\257\320\267\320\265\320\262_\320\223\321\200\320\270\320\263\320\276\321\200\320\270\320\271_\320\220\320\275\320\264\321\200\320\265\320\265\320\262\320\270\321\207/lab6/task1/server.py" @@ -0,0 +1,14 @@ +import socket + +def server_hello(): + server_socket = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) + server_socket.bind(("localhost", 9090)) + print("Cервер запущен на порту 9090") + + while True: + message, client_address = server_socket.recvfrom(1024) + print(f"Получено сообщение: {message.decode()} от {client_address}") + server_socket.sendto(b"Hello, client", client_address) + +if __name__ == '__main__': + server_hello() \ No newline at end of file diff --git "a/work/K3321/\320\257\320\267\320\265\320\262_\320\223\321\200\320\270\320\263\320\276\321\200\320\270\320\271_\320\220\320\275\320\264\321\200\320\265\320\265\320\262\320\270\321\207/lab6/task2/client.py" "b/work/K3321/\320\257\320\267\320\265\320\262_\320\223\321\200\320\270\320\263\320\276\321\200\320\270\320\271_\320\220\320\275\320\264\321\200\320\265\320\265\320\262\320\270\321\207/lab6/task2/client.py" new file mode 100644 index 000000000..17b2e5ed2 --- /dev/null +++ "b/work/K3321/\320\257\320\267\320\265\320\262_\320\223\321\200\320\270\320\263\320\276\321\200\320\270\320\271_\320\220\320\275\320\264\321\200\320\265\320\265\320\262\320\270\321\207/lab6/task2/client.py" @@ -0,0 +1,15 @@ +import socket + +def client_Pifagor(): + a = input("Введите катет a: ") + b = input("Введите катет b: ") + message = f'{a},{b}' + client_socket = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) + client_socket.sendto(message.encode(), ("localhost", 9090)) + + response, _ = client_socket.recvfrom(1024) + + print(response.decode()) + +if __name__ == '__main__': + client_Pifagor() \ No newline at end of file diff --git "a/work/K3321/\320\257\320\267\320\265\320\262_\320\223\321\200\320\270\320\263\320\276\321\200\320\270\320\271_\320\220\320\275\320\264\321\200\320\265\320\265\320\262\320\270\321\207/lab6/task2/server.py" "b/work/K3321/\320\257\320\267\320\265\320\262_\320\223\321\200\320\270\320\263\320\276\321\200\320\270\320\271_\320\220\320\275\320\264\321\200\320\265\320\265\320\262\320\270\321\207/lab6/task2/server.py" new file mode 100644 index 000000000..a8889fbb7 --- /dev/null +++ "b/work/K3321/\320\257\320\267\320\265\320\262_\320\223\321\200\320\270\320\263\320\276\321\200\320\270\320\271_\320\220\320\275\320\264\321\200\320\265\320\265\320\262\320\270\321\207/lab6/task2/server.py" @@ -0,0 +1,17 @@ +import socket + +def server_Pifagor(): + server_socket = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) + server_socket.bind(("localhost", 9090)) + + while True: + message,client_address = server_socket.recvfrom(1024) + a,b = message.decode().strip().split(',') + a = float(a) + b = float(b) + c = (a**2 + b**2)** 0.5 + response = f"Гипотенуза = {c}" + server_socket.sendto(response.encode(),client_address) + +if __name__ == '__main__': + server_Pifagor() \ No newline at end of file diff --git "a/work/K3321/\320\257\320\267\320\265\320\262_\320\223\321\200\320\270\320\263\320\276\321\200\320\270\320\271_\320\220\320\275\320\264\321\200\320\265\320\265\320\262\320\270\321\207/lab6/task3/index.html" "b/work/K3321/\320\257\320\267\320\265\320\262_\320\223\321\200\320\270\320\263\320\276\321\200\320\270\320\271_\320\220\320\275\320\264\321\200\320\265\320\265\320\262\320\270\321\207/lab6/task3/index.html" new file mode 100644 index 000000000..151664a01 --- /dev/null +++ "b/work/K3321/\320\257\320\267\320\265\320\262_\320\223\321\200\320\270\320\263\320\276\321\200\320\270\320\271_\320\220\320\275\320\264\321\200\320\265\320\265\320\262\320\270\321\207/lab6/task3/index.html" @@ -0,0 +1,77 @@ + + + + + Язев Г.А. + + + + +

+ +
+ Карта + Overlay PNG +
+ + + + + + + + + + + + + + + + + + + + + + + + + + diff --git "a/work/K3321/\320\257\320\267\320\265\320\262_\320\223\321\200\320\270\320\263\320\276\321\200\320\270\320\271_\320\220\320\275\320\264\321\200\320\265\320\265\320\262\320\270\321\207/lab6/task3/server.py" "b/work/K3321/\320\257\320\267\320\265\320\262_\320\223\321\200\320\270\320\263\320\276\321\200\320\270\320\271_\320\220\320\275\320\264\321\200\320\265\320\265\320\262\320\270\321\207/lab6/task3/server.py" new file mode 100644 index 000000000..980097427 --- /dev/null +++ "b/work/K3321/\320\257\320\267\320\265\320\262_\320\223\321\200\320\270\320\263\320\276\321\200\320\270\320\271_\320\220\320\275\320\264\321\200\320\265\320\265\320\262\320\270\321\207/lab6/task3/server.py" @@ -0,0 +1,14 @@ +import http.server +import socketserver + +PORT = 9090 + +class MyHandler(http.server.SimpleHTTPRequestHandler): + def do_GET(self): + if self.path == "/": + self.path = "index.html" + return super().do_GET() + +with socketserver.TCPServer(("", PORT), MyHandler) as httpd: + print(f"Сервер запущен на порту {PORT}") + httpd.serve_forever() \ No newline at end of file diff --git "a/work/K3321/\320\257\320\267\320\265\320\262_\320\223\321\200\320\270\320\263\320\276\321\200\320\270\320\271_\320\220\320\275\320\264\321\200\320\265\320\265\320\262\320\270\321\207/lab6/task3/sound1.mp3" "b/work/K3321/\320\257\320\267\320\265\320\262_\320\223\321\200\320\270\320\263\320\276\321\200\320\270\320\271_\320\220\320\275\320\264\321\200\320\265\320\265\320\262\320\270\321\207/lab6/task3/sound1.mp3" new file mode 100644 index 000000000..08d80f514 Binary files /dev/null and "b/work/K3321/\320\257\320\267\320\265\320\262_\320\223\321\200\320\270\320\263\320\276\321\200\320\270\320\271_\320\220\320\275\320\264\321\200\320\265\320\265\320\262\320\270\321\207/lab6/task3/sound1.mp3" differ diff --git "a/work/K3321/\320\257\320\267\320\265\320\262_\320\223\321\200\320\270\320\263\320\276\321\200\320\270\320\271_\320\220\320\275\320\264\321\200\320\265\320\265\320\262\320\270\321\207/lab6/task3/sound2.mp3" "b/work/K3321/\320\257\320\267\320\265\320\262_\320\223\321\200\320\270\320\263\320\276\321\200\320\270\320\271_\320\220\320\275\320\264\321\200\320\265\320\265\320\262\320\270\321\207/lab6/task3/sound2.mp3" new file mode 100644 index 000000000..cbe2a09d4 Binary files /dev/null and "b/work/K3321/\320\257\320\267\320\265\320\262_\320\223\321\200\320\270\320\263\320\276\321\200\320\270\320\271_\320\220\320\275\320\264\321\200\320\265\320\265\320\262\320\270\321\207/lab6/task3/sound2.mp3" differ diff --git "a/work/K3321/\320\257\320\267\320\265\320\262_\320\223\321\200\320\270\320\263\320\276\321\200\320\270\320\271_\320\220\320\275\320\264\321\200\320\265\320\265\320\262\320\270\321\207/lab6/task3/style.css" "b/work/K3321/\320\257\320\267\320\265\320\262_\320\223\321\200\320\270\320\263\320\276\321\200\320\270\320\271_\320\220\320\275\320\264\321\200\320\265\320\265\320\262\320\270\321\207/lab6/task3/style.css" new file mode 100644 index 000000000..a76983437 --- /dev/null +++ "b/work/K3321/\320\257\320\267\320\265\320\262_\320\223\321\200\320\270\320\263\320\276\321\200\320\270\320\271_\320\220\320\275\320\264\321\200\320\265\320\265\320\262\320\270\321\207/lab6/task3/style.css" @@ -0,0 +1,57 @@ +body { + margin: 0; + font-family: Arial, sans-serif; + background-color: #f0f0f0; + text-align: center; +} + +h2 { + margin-top: 20px; + color: #333; +} + +#image-container { + position: relative; + display: inline-block; + margin-top: 20px; +} + +#main-image { + max-width: 100%; + height: auto; + border: 3px solid #aaa; + box-shadow: 0 0 10px rgba(0,0,0,0.3); +} + + +#popup { + position: absolute; + top: 555px; + left: 1300px; + background-color: rgba(0, 0, 0, 0.75); + padding: 14px 22px; + border: 3px solid #fff; + border-radius: 12px; + box-shadow: 0 0 20px rgba(0,0,0,0.5); + font-size: 20px; + font-weight: bold; + color: #fff; + text-shadow: 1px 1px 3px rgba(0,0,0,0.9); + display: none; + z-index: 10; + max-width: 300px; + text-align: center; +} + + +#png-overlay { + position: absolute; + top: 357px; + left: 259px; + width: 181px; + height: auto; + display: none; + z-index: 9; + border: 2px solid #000; + box-shadow: 0 0 10px rgba(0,0,0,0.5); +} diff --git "a/work/K3321/\320\257\320\267\320\265\320\262_\320\223\321\200\320\270\320\263\320\276\321\200\320\270\320\271_\320\220\320\275\320\264\321\200\320\265\320\265\320\262\320\270\321\207/lab6/task3/web_lab5.png" "b/work/K3321/\320\257\320\267\320\265\320\262_\320\223\321\200\320\270\320\263\320\276\321\200\320\270\320\271_\320\220\320\275\320\264\321\200\320\265\320\265\320\262\320\270\321\207/lab6/task3/web_lab5.png" new file mode 100644 index 000000000..45f32f110 Binary files /dev/null and "b/work/K3321/\320\257\320\267\320\265\320\262_\320\223\321\200\320\270\320\263\320\276\321\200\320\270\320\271_\320\220\320\275\320\264\321\200\320\265\320\265\320\262\320\270\321\207/lab6/task3/web_lab5.png" differ diff --git "a/work/K3321/\320\257\320\267\320\265\320\262_\320\223\321\200\320\270\320\263\320\276\321\200\320\270\320\271_\320\220\320\275\320\264\321\200\320\265\320\265\320\262\320\270\321\207/lab6/task3/\321\215\320\272\321\200\320\260\320\275_\320\275\320\265\320\275\320\276\321\200\320\274.png" "b/work/K3321/\320\257\320\267\320\265\320\262_\320\223\321\200\320\270\320\263\320\276\321\200\320\270\320\271_\320\220\320\275\320\264\321\200\320\265\320\265\320\262\320\270\321\207/lab6/task3/\321\215\320\272\321\200\320\260\320\275_\320\275\320\265\320\275\320\276\321\200\320\274.png" new file mode 100644 index 000000000..d1ede748d Binary files /dev/null and "b/work/K3321/\320\257\320\267\320\265\320\262_\320\223\321\200\320\270\320\263\320\276\321\200\320\270\320\271_\320\220\320\275\320\264\321\200\320\265\320\265\320\262\320\270\321\207/lab6/task3/\321\215\320\272\321\200\320\260\320\275_\320\275\320\265\320\275\320\276\321\200\320\274.png" differ diff --git "a/work/K3321/\320\257\320\267\320\265\320\262_\320\223\321\200\320\270\320\263\320\276\321\200\320\270\320\271_\320\220\320\275\320\264\321\200\320\265\320\265\320\262\320\270\321\207/lab6/task4/client.py" "b/work/K3321/\320\257\320\267\320\265\320\262_\320\223\321\200\320\270\320\263\320\276\321\200\320\270\320\271_\320\220\320\275\320\264\321\200\320\265\320\265\320\262\320\270\321\207/lab6/task4/client.py" new file mode 100644 index 000000000..5cd2103cc --- /dev/null +++ "b/work/K3321/\320\257\320\267\320\265\320\262_\320\223\321\200\320\270\320\263\320\276\321\200\320\270\320\271_\320\220\320\275\320\264\321\200\320\265\320\265\320\262\320\270\321\207/lab6/task4/client.py" @@ -0,0 +1,35 @@ +import socket +import threading + +def receive_messages(sock): + while True: + try: + message = sock.recv(1024).decode() + print("\n" + message) + except: + print("Отключение от сервера.") + sock.close() + break + +def send_messages(sock, nickname): + while True: + message = input() + full_message = f"{nickname}: {message}" + sock.send(full_message.encode()) + +def start_client(): + host = "localhost" + port = 9090 + nickname = input("Введите ваше имя: ") + + client_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM) + client_socket.connect((host, port)) + + thread_recv = threading.Thread(target=receive_messages, args=(client_socket,)) + thread_recv.start() + + thread_send = threading.Thread(target=send_messages, args=(client_socket, nickname)) + thread_send.start() + +if __name__ == "__main__": + start_client() diff --git "a/work/K3321/\320\257\320\267\320\265\320\262_\320\223\321\200\320\270\320\263\320\276\321\200\320\270\320\271_\320\220\320\275\320\264\321\200\320\265\320\265\320\262\320\270\321\207/lab6/task4/server.py" "b/work/K3321/\320\257\320\267\320\265\320\262_\320\223\321\200\320\270\320\263\320\276\321\200\320\270\320\271_\320\220\320\275\320\264\321\200\320\265\320\265\320\262\320\270\321\207/lab6/task4/server.py" new file mode 100644 index 000000000..c925c0463 --- /dev/null +++ "b/work/K3321/\320\257\320\267\320\265\320\262_\320\223\321\200\320\270\320\263\320\276\321\200\320\270\320\271_\320\220\320\275\320\264\321\200\320\265\320\265\320\262\320\270\321\207/lab6/task4/server.py" @@ -0,0 +1,44 @@ +import socket +import threading + +clients = [] + +def handle_client(client_socket, address): + print(f"[+] Подключен: {address}") + while True: + try: + message = client_socket.recv(1024) + if not message: + break + broadcast(message, client_socket) + except: + break + print(f"[-] Отключен: {address}") + clients.remove(client_socket) + client_socket.close() + +def broadcast(message, sender_socket): + for client in clients: + if client != sender_socket: + try: + client.send(message) + except: + pass + +def start_server(): + host = "localhost" + port = 9090 + server = socket.socket(socket.AF_INET, socket.SOCK_STREAM) + server.bind((host, port)) + server.listen() + + print(f"Сервер запущен на {host}:{port}") + + while True: + client_socket, addr = server.accept() + clients.append(client_socket) + thread = threading.Thread(target=handle_client, args=(client_socket, addr)) + thread.start() + +if __name__ == "__main__": + start_server() diff --git "a/work/\320\275\320\276\320\274\320\265\321\200_\320\263\321\200\321\203\320\277\320\277\321\213/\320\244\320\230\320\236/\320\275\320\276\320\274\320\265\321\200_\320\273\320\260\320\261\321\213/index.html" "b/work/\320\275\320\276\320\274\320\265\321\200_\320\263\321\200\321\203\320\277\320\277\321\213/\320\244\320\230\320\236/\320\275\320\276\320\274\320\265\321\200_\320\273\320\260\320\261\321\213/index.html" deleted file mode 100644 index d01f779ff..000000000 --- "a/work/\320\275\320\276\320\274\320\265\321\200_\320\263\321\200\321\203\320\277\320\277\321\213/\320\244\320\230\320\236/\320\275\320\276\320\274\320\265\321\200_\320\273\320\260\320\261\321\213/index.html" +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - Document - - - - - \ No newline at end of file