Приложение не содержит статический метод "Main", подходящий для точки входа - C#
Формулировка задачи:
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace ip_ca { class iputils { public string ipstr; public string ipmin; public string ipmax; public int ipvlen = 32; private byte[] dv = { 128, 64, 32, 16, 8, 4, 2, 1 }; public iputils(string ip) { ipstr = ip; ipmin = " "; ipmax = " "; calculate(); } private void calculate() { string strbinip = "", bstr_min = "", bstr_max = ""; string[] ip_arr = ipstr.Split('/'); string ip = ip_arr[0]; int m = (ip_arr.Length == 2) ? Convert.ToInt32(ip_arr[1]) : 0; string[] ip_part = ip.Split('.'); foreach (string part in ip_part) { strbinip += ByteToBinaryString(Convert.ToByte(part)); } while (strbinip.Length < ipvlen) strbinip += "0"; bstr_min = (m > 0) ? strbinip.Substring(0, m) : strbinip; while (bstr_min.Length < ipvlen) bstr_min += "0"; bstr_max = (m > 0) ? strbinip.Substring(0, m) : strbinip; while (bstr_max.Length < ipvlen) bstr_max += "1"; // минимальный адрес диапазона ipmin = BinaryStringToIP(bstr_min); // максимальный адрес диапазона ipmax = BinaryStringToIP(bstr_max); } // преобразование двоичной строки в IP адрес string BinaryStringToIP(string bstr) { string rc = ""; string[] sip = { "", "", "", "" }; if (bstr.Length == ipvlen) { for (int i = 0, j = 0; i < ipvlen; i += 8) { sip[j++] = Convert.ToString(BinaryStringToByte(bstr.Substring(i, 8))); } } rc = String.Join(".", sip); return rc; } // преобразование байта в двоичную строку string ByteToBinaryString(byte ipi) { string rc = ""; ipi = Convert.ToByte(ipi); for (int i = 0; i < dv.Length; i++) { if (ipi >= dv[i]) { rc += "1"; ipi -= dv[i]; } else { rc += "0"; } } return rc; } // преобразование двоичной строки в байт // строка состоит из 0 и 1 // напомним, что в байте 8 бит byte BinaryStringToByte(string eight) { byte rc = 0; // return code // возвращаемое значение // дополняем переменную eight ноликами до размера 8 символов // нолики вставляем слева! while (eight.Length < 8) eight.Insert(0, "0"); // проходим по символам переменной eight // для каждого символа eight[i] равного 1 // берём значение из массива dv[i] и суммируем его в переменную rc. for (int i = 0; i < dv.Length; i++) { if (eight[i] == '1') { rc += dv[i]; } } return rc; } public string getMaxIP() { return ipmax; } public string getMinIP() { return ipmin; } public string getIPArea() { return ipmin + "-" + ipmax; } } }
Решение задачи: «Приложение не содержит статический метод "Main", подходящий для точки входа»
textual
Листинг программы
class Program { static void main() { iputils x = new iputils(); // экземпляр класса } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д