static LinkedList AddPoint(LinkedList beg, LinkedList NewPoint, int number, ref int size) { do { number = AskData.ReadIntNumber("Введите номер элемента для добавления", MIN_SIZE, MAX_SIZE); if (number > size + 1) { Console.WriteLine("Ошибка! Размер списка меньше введенного числа."); } } while (number > size + 1); if (number == 1) //добавление в начало списка { NewPoint.next = beg; beg = NewPoint; size++; Console.WriteLine("Элемент был добавлен на 1 позицию"); return(beg); } //вспом. переменная для прохода по списку LinkedList p = beg; //идем по списку до нужного элемента for (int i = 1; i < number - 1 && p.next != null; i++) { p = p.next; } //добавляем новый элемент NewPoint.next = p.next; p.next = NewPoint; Console.WriteLine("Элемент был добавлен на {0} позицию", number); size++; return(beg); }
private void button10_Click(object sender, EventArgs e) { this.Hide(); var x = new AskData(); x.Show(); }
static void Main(string[] args) { double a1 = AskData.ReadDoubleNumber("Введите первое чиcло последовательности: ", double.MinValue, double.MaxValue); double a2 = AskData.ReadDoubleNumber("Введите второе число последовательности: ", double.MinValue, double.MaxValue); double a3 = AskData.ReadDoubleNumber("Введите третье число последовательности: ", double.MinValue, double.MaxValue); int n = AskData.ReadIntNumber("Введите границу последовательности: ", 4, int.MaxValue); double[] arr = new double[n]; // массив элементов последовательноти // первые три элемента заданной последовательности arr[0] = a1; arr[1] = a2; arr[2] = a3; Console.Write("Последовательность: {0} {1} {2} ", a1, a2, a3); int tecN = 3; NextElement(n, tecN, ref arr); // получение элементов последовательности Console.WriteLine(); if (!IsGrowing(n, arr)) // определение, являются ли элементы, стоящие на четных местах, возрастающей последвательностью { Console.WriteLine("Элементы, стоящие на четных местах, не образуют возрастающую подпоследовательность"); } else { Console.WriteLine("Элементы, стоящие на четных местах, образуют возрастающую подпоследовательность"); } Console.WriteLine("Нажмите Enter для завершения работы программы..."); Console.ReadLine(); }
static LinkedList FormAddPointHand(LinkedList NewPoint) { int info = AskData.ReadIntNumber("Введите элемент, который хотите добавить:", MININT_VALUE, MAXINT_VALUE); //создаем новый элемент NewPoint = MakePoint(info); //создаем добавляемый элемент return(NewPoint); }
public AskData GetAskData(uint nIndex) { IntPtr cPtr = otapiPINVOKE.OfferListMarket_GetAskData(swigCPtr, nIndex); AskData ret = (cPtr == IntPtr.Zero) ? null : new AskData(cPtr, false); return(ret); }
public new static AskData ot_dynamic_cast(Storable pObject) { IntPtr cPtr = otapiPINVOKE.AskData_ot_dynamic_cast(Storable.getCPtr(pObject)); AskData ret = (cPtr == IntPtr.Zero) ? null : new AskData(cPtr, false); return(ret); }
public bool AddAskData(AskData disownObject) { bool ret = otapiPINVOKE.OfferListMarket_AddAskData(swigCPtr, AskData.getCPtr(disownObject)); if (otapiPINVOKE.SWIGPendingException.Pending) { throw otapiPINVOKE.SWIGPendingException.Retrieve(); } return(ret); }
static void Main(string[] args) { double x = AskData.ReadDoubleNumber("Введите координату x: ", double.MinValue, double.MaxValue); double y = AskData.ReadDoubleNumber("Введите координату у: ", double.MinValue, double.MaxValue); bool ans = (y <= 3 * x + 2 && y <= -3 * x + 2 && y >= -1); Console.WriteLine("Ответ: " + ans); Console.WriteLine("Нажмите Enter для завершения работы програмы"); Console.ReadLine(); }
// формирование случайного графа public static void FormRandomGraph(out int[,] graph) { int countVertex = AskData.ReadIntNumber("Введите количество вершин графа (от 2 до 20): ", 2, 20); // кол-во вершин графа graph = new int[countVertex, countVertex]; // граф for (int i = 0; i < countVertex; i++) { for (int j = 0; j < countVertex; j++) { graph[i, j] = 0; } } for (int i = 0; i < countVertex; i++) // для каждой вершины в графе { int numConnection; // кол-во ребер, исходящих от данной вершины do { numConnection = rnd.Next(0, countVertex); } while (numConnection >= countVertex); // должно быть меньше, чем кол-во вершин графа int haveConnection = 0; // кол-во уже исходящих ребер из данной вершины for (int s = 0; s < countVertex; s++) { if (graph[i, s] == 1) { haveConnection++; } } numConnection = numConnection - haveConnection; for (int j = 0; j < numConnection; j++) // для каждой вершины { var numTry = 20; // 20 попыток while (numTry > 0) // пока соединение не найдено { var connectVert = RandomVertex(countVertex, i); // найти случайную вершину, кроме изначальной if (graph[i, connectVert] == 1 || graph[connectVert, i] == 1) // если связь с этой вершиной уже есть, то { numTry--; // уменьшить кол-во попыток } else { graph[i, connectVert] = 1; graph[connectVert, i] = 1; // иначе добавить вершину break; // выйти из цикла } } } } }
// ввод графа с клавиатуры public static void FormGraph(out int[,] graph) { int countVertex = AskData.ReadIntNumber("Введите количество вершин графа (от 2 до 20): ", 2, 20); graph = new int[countVertex, countVertex]; for (int i = 0; i < countVertex; i++) { for (int j = i + 1; j < countVertex; j++) { Console.WriteLine("Соединение вершин {0} и {1}", i + 1, j + 1); graph[i, j] = AskData.ReadIntNumber("Введите 0 или 1:", 0, 1); graph[j, i] = graph[i, j]; } } }
//формирование списка из n элементов путем добавления элементов в конец списка с клавиатуры public static UnidirectionalList MakeListToEndHand(int size) //добавление в конец { int info = AskData.ReadIntNumber("Введите 1 элемент: ", MININT_VALUE, MAXINT_VALUE); UnidirectionalList beg = MakePoint(info); UnidirectionalList r = beg; for (int i = 2; i <= size; i++) { Console.Write("Введите {0} элемент:", i); info = AskData.ReadIntNumber("", MININT_VALUE, MAXINT_VALUE); UnidirectionalList p = MakePoint(info); r.next = p; r = p; } return(beg); }
//формирование списка из n элементов путем добавления элементов в конец списка с клавиатуры static LinkedList MakeListToEndHand(int size) //добавление в конец { Console.WriteLine("Введите 1 элемент:"); int info = AskData.ReadIntNumber("Введите 1 элемент (от -100 до 100):", MININT_VALUE, MAXINT_VALUE); LinkedList beg = MakePoint(info); LinkedList r = beg; for (int i = 2; i <= size; i++) { Console.WriteLine("Введите {0} элемент:", i); info = AskData.ReadIntNumber("", MININT_VALUE, MAXINT_VALUE); LinkedList p = MakePoint(info); r.next = p; r = p; } return(beg); }
public static LinkedList RunAddPoint(LinkedList beg, int number, ref int size) //для добавления элемента списка двумя способами { int check = 0; LinkedList NewPoint = null; PrintForm(); check = AskData.ReadIntNumber("", 1, 3); switch (check) { case 1: NewPoint = FormAddPointHand(NewPoint); beg = AddPoint(beg, NewPoint, number, ref size); break; case 2: NewPoint = FormAddPointRandom(NewPoint); beg = AddPoint(beg, NewPoint, number, ref size); break; case 3: Console.WriteLine("Элемент не был добавлен!"); break; } return(beg); }
public static LinkedList MakeList(ref int size) //для формирования списка двумя способами { int checkMakeList = 0; LinkedList beg = null; PrintForm(); checkMakeList = AskData.ReadIntNumber("", 1, 3); switch (checkMakeList) { case 1: beg = MakeListToEndHand(size); Console.WriteLine("Однонаправленный список сформирован"); break; case 2: beg = MakeListToEndRandom(size); Console.WriteLine("Однонаправленный список сформирован"); break; case 3: size = 0; Console.WriteLine("Однонаправленный список не сформирован!"); break; } return(beg); }
static void Main(string[] args) { int k = AskData.ReadIntNumber("Введите число k (не менее 2): ", 2, int.MaxValue); int[] codingCard = new int[k]; // массив перестановки чисел int[] decodingCard = new int[k]; // декодирующая карта // ввод перестановки чисел for (int i = 0; i < k; i++) { codingCard[i] = AskData.ReadIntNumber("Введите новую позицию элемента:", 1, k) - 1; } // формирование декодирующей карты for (int i = 0; i < k; i++) { decodingCard[codingCard[i]] = i; } Console.WriteLine("Введите слово:"); string word = Console.ReadLine(); // слово, введенное пользователем string codingWord = ""; // закодированное слово string decodingWord = ""; // декодированное слово if (word.Length % k > 0) { word = word.PadRight(word.Length + (k % word.Length)); // заполнение слова недостающими пробелами } int block = word.Length / k; // кол-во блоков for (int i = 0; i < block; i++) // просмотр каждого блока { for (int j = 0; j < k; j++) // просмотр каждого элемента блока { codingWord += word[codingCard[j]]; // шифрование по заданной последовательности decodingWord += word[decodingCard[j]]; // дешифрование по заданной последовательности } word = word.Remove(0, k); // удаление расшифрованного блока } Console.WriteLine("Зашифрованное слово от заданного: {0}", codingWord); Console.WriteLine("Дешифрованное слово от заданного: {0}", decodingWord); Console.WriteLine("\nНажмите Enter для завершения работы с программой"); Console.ReadLine(); }
static void Run()//работа с однонаправленными списками { int checkRun1 = 0, left = 1, right = 5, number = 0; int size = 0; const int MIN_SIZE = 2; const int MAX_SIZE = 100; LinkedList beg = null; do { PrintMenu(); checkRun1 = AskData.ReadIntNumber("Введите номер пункта, который хотите выполнить", left, right); switch (checkRun1) { case 1: //создать список { size = AskData.ReadIntNumber("Введите количество элементов списка (от 2 до 100):", MIN_SIZE, MAX_SIZE); beg = LinkedList.MakeList(ref size); break; } case 2: //печать списка { LinkedList.ShowList(beg); break; } case 3: //добавить элемент { beg = LinkedList.RunAddPoint(beg, number, ref size); break; } case 4: { int numDel = AskData.ReadIntNumber("Введите номер элемента для удаления", 1, MAX_SIZE); beg = LinkedList.DelElement(beg, numDel); break; } } } while (checkRun1 != right); }
static void Main(string[] args) { // ввод трех комплексных чисел double u1 = AskData.ReadDoubleNumber("Введите действительную часть числа U:", double.MinValue, double.MaxValue); double u2 = AskData.ReadDoubleNumber("Введите мнимую часть числа U: ", double.MinValue, double.MaxValue); Complex u = new Complex(u1, u2); Console.WriteLine(); double v1 = AskData.ReadDoubleNumber("Введите действительную часть числа V: ", double.MinValue, double.MaxValue); double v2 = AskData.ReadDoubleNumber("Введите мнимую часть числа V: ", double.MinValue, double.MaxValue); Complex v = new Complex(v1, v2); Console.WriteLine(); double w1 = AskData.ReadDoubleNumber("Введите действительную часть числа W: ", double.MinValue, double.MaxValue); double w2 = AskData.ReadDoubleNumber("Введите мнимую часть числа W: ", double.MinValue, double.MaxValue); Complex w = new Complex(w1, w2); Console.WriteLine(); // выполенение выражения по действиям Complex res1 = 2 * u; Complex res2 = 3 * u; Complex res3 = res2 * w; Complex res4 = 2 + w; Complex res5 = res4 - v; if (res5.RealNumber == 0 && res5.ImaginaryNumber == 0) // проверка знаменателя { Console.WriteLine("Деление на ноль!"); } else { Complex res6 = res3 / res5; Complex res7 = res1 + res6; Complex res = res7 - 7; Complex.Show(res); } Console.WriteLine("Нажмие Enter для завершения работы программы ..."); Console.ReadLine(); }
static void Main(string[] args) { int n, k; int[] arr; Console.WriteLine("Сочетания из N по K с повторениями:"); n = AskData.ReadIntNumber("Введите N: ", 1, int.MaxValue); k = AskData.ReadIntNumber("Введите K: ", 1, int.MaxValue); Console.WriteLine(); arr = new int[k]; // массив элементов подмножества for (int i = 0; i < k; i++) { arr[i] = 1; } Print(arr, k); while (NextSet(ref arr, n, k)) { Print(arr, k); } Console.WriteLine("Для завершения работы нажмите Enter"); Console.ReadLine(); }
public Contact Create(IContactView view) { Contact c = new Contact(); c.Comment = view.Comment; c.Company = view.Company; c.Email = view.Email; c.FirstName = view.FirstName; c.LastName = view.LastName; c.Phone = view.Phone; c.WebSite = view.WebSite; c.PostalCode = view.PostalCode; if (!c.IsValid()) { throw new InvalidDomainModelException(c.ValidationResults()); } IUserInfo u = new UserInfo("Contactos", "OCA", Config.ContactMail); var data = new AskData { FullName = string.Format("{0} {1}", c.FirstName, c.LastName), Contact = c }; var template = new FileMessageTemplate { Discriminator = "ask", Owner = u }; template.SystemData = data; _messageSenderService.Send(template, u); _contactRepository.SaveOrUpdate(c); return(c); }
static void Run()//работа с однонаправленными списками { int checkRun1 = 0, left = 1, right = 3; int size = 0; UnidirectionalList beg = null; do { PrintMenu(); checkRun1 = AskData.ReadIntNumber("Введите номер пункта, который хотите выполнить", left, right); switch (checkRun1) { case 1: //создать список { size = AskData.ReadIntNumber("Введите количество элементов списка:", MIN_SIZE, MAX_SIZE); beg = UnidirectionalList.MakeList(ref size); UnidirectionalList.ShowList(beg); break; } case 2: //pos и neg списки { UnidirectionalList begPos = null; UnidirectionalList begNeg = null; beg = UnidirectionalList.FormPosAndNegList(beg, ref begPos, ref begNeg); Console.WriteLine("Главный список:"); UnidirectionalList.ShowList(beg); Console.WriteLine("Список, состоящий из положительных элементов:"); UnidirectionalList.ShowList(begPos); Console.WriteLine("Список, состоящий из отрицательных элементов:"); UnidirectionalList.ShowList(begNeg); break; } } } while (checkRun1 != right); }
static void Run() { int checkRun = 0, left = 1, right = 3; do { PrintMenu(); checkRun = AskData.ReadIntNumber("Введите номер пункта, который хотите выполнить", left, right); switch (checkRun) { case 1: // ввод графа с клавиатуры { Graph.FormGraph(out int[,] graph); // формирование графа Graph.ShowGraph(graph); // печать графа int countVert = graph.GetLength(0); // кол-во вершин в графе int startVert = AskData.ReadIntNumber("Введите номер вершины, от которой требуется найти эйлеров цикл:", 1, countVert) - 1; Stack <int> res = new Stack <int>(); // эйлеров цикл Graph.EulerCycle(startVert, ref res, countVert, ref graph); // поиск эйлерового цикла Graph.ShowEulerCycle(res); // печать цикла break; } case 2: // формирование графа с помощью ДСЧ { Graph.FormRandomGraph(out int[,] graph); // формирование графа Graph.ShowGraph(graph); // печать графа int countVert = graph.GetLength(0); // кол-во вершин в графе int startVert = AskData.ReadIntNumber("Введите номер вершины, от которой требуется найти эйлеров цикл:", 1, countVert) - 1; Stack <int> res = new Stack <int>(); // эйлеров цикл Graph.EulerCycle(startVert, ref res, countVert, ref graph); // поиск эйлерового цикла Graph.ShowEulerCycle(res); // печать цикла break; } } } while (checkRun != right); }
public bool AddAskData(AskData disownObject) { bool ret = otapiPINVOKE.OfferListMarket_AddAskData(swigCPtr, AskData.getCPtr(disownObject)); if (otapiPINVOKE.SWIGPendingException.Pending) throw otapiPINVOKE.SWIGPendingException.Retrieve(); return ret; }
internal static HandleRef getCPtr(AskData obj) { return (obj == null) ? new HandleRef(null, IntPtr.Zero) : obj.swigCPtr; }
internal static global::System.Runtime.InteropServices.HandleRef getCPtr(AskData obj) { return (obj == null) ? new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero) : obj.swigCPtr; }
internal static global::System.Runtime.InteropServices.HandleRef getCPtr(AskData obj) { return((obj == null) ? new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero) : obj.swigCPtr); }
internal static HandleRef getCPtr(AskData obj) { return((obj == null) ? new HandleRef(null, IntPtr.Zero) : obj.swigCPtr); }