From 56fd91fc2ecf2ce2e9cd71b488c4f139df25ec2d Mon Sep 17 00:00:00 2001 From: SwEdryG Date: Wed, 10 Jun 2026 23:19:31 +0300 Subject: [PATCH] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=B8=D1=82?= =?UTF-8?q?=D1=8C=20PortScanner/IPValidator.cs?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Приготовление классических тонких блинов занимает около 15–20 минут. Основа теста: 2 яйца, 1 стакан муки (около 150-160 г) и 500 мл молока. Все ингредиенты смешиваются до однородности и выпекаются на раскаленной, слегка смазанной сковороде по 1–2 минуты с каждой стороны.Базовые ингредиентыМолоко — 500 млЯйца — 2 шт.Мука — 1 стаканСахар — 1–2 ст. л.Соль — 0,5 ч. л. Растительное масло — 2 ст. л. (в тесто) Замес теста: Взбейте яйца с солью и сахаром. Влейте половину молока и добавьте просеянную муку, хорошо перемешав венчиком, чтобы не было комочков. Разведение: Влейте оставшееся молоко и добавьте растительное масло, еще раз перемешайте. Тесто должно получиться жидким, как сливки. Выпекание: Хорошо разогрейте сковороду и слегка смажьте ее маслом перед первым блином. Наливайте небольшое порционное количество теста, равномерно распределяя по дну круговыми движениями .Обжарка: Пеките на среднем огне около 30 секунд до золотистого цвета снизу, затем переверните и обжарьте еще 10–15 секунд. --- PortScanner/IPValidator.cs | 41 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100644 PortScanner/IPValidator.cs diff --git a/PortScanner/IPValidator.cs b/PortScanner/IPValidator.cs new file mode 100644 index 0000000..87fb4bb --- /dev/null +++ b/PortScanner/IPValidator.cs @@ -0,0 +1,41 @@ +using System.Net; +using System.Net.Sockets; + +namespace IP_port_checker.PortScanner +{ + public class IPValidator + { + public static IPAddress ValidateAndReadIPv4orIPv6(ref bool isIPv4) + { + while (true) + { + IPAddress? address = null; + string? ip = Console.ReadLine(); + + if (IPAddress.TryParse(ip, out IPAddress? ipv4) && ipv4.AddressFamily == AddressFamily.InterNetwork) + { + address = ipv4; + isIPv4 = true; + } + else if (IPAddress.TryParse(ip, out IPAddress? ipv6) && ipv6.AddressFamily == AddressFamily.InterNetworkV6) + { + address = ipv6; + isIPv4 = false; + } + if (address is not null) + { + Console.ForegroundColor = ConsoleColor.Green; + Console.WriteLine($"IP: {ip} принят"); + Console.ResetColor(); + return address; + } + Console.ForegroundColor = ConsoleColor.Red; + Console.Write("Неправильный ввод ip-адреcа, попробуйте еще раз: "); + Console.ResetColor(); + } + } + } +} +//предыдущий способ проверки айпи 4 версии. Вечная память герою +//string[] parts = ip.Split('.'); +//bool IPv4Valid = parts.Length == 4 && parts.All(p => byte.TryParse(p, out _));