private void button1_Click(object sender, RoutedEventArgs e) { Na = NetworkAdress(ip2, mask2); if (BinToDec(Na.Substring(0, 8)) + "." + BinToDec(Na.Substring(8, 8)) + "." + BinToDec(Na.Substring(16, 8)) + "." + BinToDec(Na.Substring(24, 8)) == textBox.Text) { MessageBox.Show("Верно!"); textBox.Text = ""; right.Content = Convert.ToString(Convert.ToInt32(right.Content) + 1); task.Content = Convert.ToString(Convert.ToInt32(task.Content) + 1); nomer = nomer + 1; ip2 = ""; Random random = new Random(); for (x = 0; x < 32; x = x + 1) { ip2 = ip2 + Convert.ToString(random.Next(0, 2));//Генерируем айпишник в двоичной системе счисления. } ip.Content = BinToDec(ip2.Substring(0, 8)) + "." + BinToDec(ip2.Substring(8, 8)) + "." + BinToDec(ip2.Substring(16, 8)) + "." + BinToDec(ip2.Substring(24, 8)); //генерируем маску подсети. a = random.Next(1, 32); switch (Convert.ToString(a)) { case "1": mask2 = "10000000000000000000000000000000"; mask10 = "128.0.0.0"; break; case "2": mask2 = "11000000000000000000000000000000"; mask10 = "192.0.0.0"; break; case "3": mask2 = "11100000000000000000000000000000"; mask10 = "224.0.0.0"; break; case "4": mask2 = "11110000000000000000000000000000"; mask10 = "240.0.0.0"; break; case "5": mask2 = "11111000000000000000000000000000"; mask10 = "248.0.0.0"; break; case "6": mask2 = "11111100000000000000000000000000"; mask10 = "252.0.0.0"; break; case "7": mask2 = "11111110000000000000000000000000"; mask10 = "254.0.0.0"; break; case "8": mask2 = "11111111000000000000000000000000"; mask10 = "255.0.0.0"; break; case "9": mask2 = "11111111100000000000000000000000"; mask10 = "255.128.0.0"; break; case "10": mask2 = "11111111110000000000000000000000"; mask10 = "255.192.0.0"; break; case "11": mask2 = "11111111111000000000000000000000"; mask10 = "255.224.0.0"; break; case "12": mask2 = "11111111111100000000000000000000"; mask10 = "255.240.0.0"; break; case "13": mask2 = "11111111111110000000000000000000"; mask10 = "255.248.0.0"; break; case "14": mask2 = "11111111111111000000000000000000"; mask10 = "255.252.0.0"; break; case "15": mask2 = "11111111111111100000000000000000"; mask10 = "255.254.0.0"; break; case "16": mask2 = "11111111111111110000000000000000"; mask10 = "255.255.0.0"; break; case "17": mask2 = "11111111111111111000000000000000"; mask10 = "255.255.128.0"; break; case "18": mask2 = "11111111111111111100000000000000"; mask10 = "255.255.192.0"; break; case "19": mask2 = "11111111111111111110000000000000"; mask10 = "255.255.224.0"; break; case "20": mask2 = "11111111111111111111000000000000"; mask10 = "255.255.240.0"; break; case "21": mask2 = "11111111111111111111100000000000"; mask10 = "255.255.248.0"; break; case "22": mask2 = "11111111111111111111110000000000"; mask10 = "255.255.252.0"; break; case "23": mask2 = "11111111111111111111111000000000"; mask10 = "255.255.254.0"; break; case "24": mask2 = "11111111111111111111111100000000"; mask10 = "255.255.255.0"; break; case "25": mask2 = "11111111111111111111111110000000"; mask10 = "255.255.255.128"; break; case "26": mask2 = "11111111111111111111111111000000"; mask10 = "255.255.255.192"; break; case "27": mask2 = "11111111111111111111111111100000"; mask10 = "255.255.255.224"; break; case "28": mask2 = "11111111111111111111111111110000"; mask10 = "255.255.255.240"; break; case "29": mask2 = "11111111111111111111111111111000"; mask10 = "255.255.255.248"; break; case "30": mask2 = "11111111111111111111111111111100"; mask10 = "255.255.255.252"; break; case "31": mask2 = "11111111111111111111111111111110"; mask10 = "255.255.255.254"; break; case "32": mask2 = "11111111111111111111111111111111"; mask10 = "255.255.255.255"; break; } mask.Content = mask10;//выводим отображение маски в задание } else { mistakes = mistakes + 1; wrong.Content = Convert.ToString(Convert.ToInt32(wrong.Content) + 1); MessageBox.Show("Ответ неверный, попробуйте еще раз"); } }