Консольный телефонный справочник на основе массивов - C#
Формулировка задачи:
Здравствуйте! Я совсем начинающий, только пару месяцев изучаю С#, преподавание шотландцем только усложняет понимание. Прежде чем создать тему почти 2 недели пытался справиться с проблемой самостоятельно, но безрезультатно. Программу нужно сдать в пятницу 16.11.2012. Прошу Вашей помощи!
Задача:
- Программа должна сохранять Имя и номер в двухмерном массиве
- Может быть сохранено максимум 20 записей типа "Александр 4951234567"
- Меню программы предлагает:
1 Создать запись
2 Удалить запись
3 Вывести на экран все записи телефонной книги
4 Продолжить? ДА или НЕТ
Мы ещё многого не проходили, так что программа должна быть желательно без функций List, всё в одном Классе, но обязательно с использованием массивов (arrays). Те примеры и информация, что я находил, гораздо выше уровнем и многое я просто не понимаю. Заранее благодарю за любую помощь!
Решение задачи: «Консольный телефонный справочник на основе массивов»
textual
Листинг программы
using System; namespace PhoneList { class Program { private static int n = 4; private static int m = 5; private static string[,] phoneList = new string[n, m]; static void Main() { while (true) { Console.WriteLine("1.Создать запись\n2.Удалить запись\n3.Вывести на экран все записи телефонной книги\n4.Выход"); Console.Write("Ведите команду: "); string com = Console.ReadLine(); switch (com) { case "1": phoneNew(); break; case "2": phoneDelete(); break; case "3": phoneView(); break; case "4": return; default: Console.WriteLine("Не верная команда. Попробуйте еще раз.\n"); break; } } } static void phoneNew() { Console.Clear(); Console.Write("Ведите имя: "); string name = Console.ReadLine(); Console.Write("Ведите номер телефона: "); string number = Console.ReadLine(); try { for (int i = 0; i < n; i++) for (int j = 0; j < m; j++) if (phoneList[i, j] == null) { phoneList[i, j] = string.Format("{0} {1}", name, number); Console.WriteLine("Записанно!"); Console.WriteLine(); return; } } catch(Exception e) { Console.WriteLine(e.ToString()); } } static void phoneDelete() { Console.Clear(); Console.WriteLine("Список"); for (int i = 0; i < n; i++) for (int j = 0; j < m; j++) if (phoneList[i, j] != null) { int a = 1; switch (i) { case 0: a = j + a; break; case 1: a = a + m + j; break; case 2: a = a + (m * 2) + j; break; case 3: a = a + (m * 3) + j; break; } Console.WriteLine("{0}. {1}", a, phoneList[i, j]); } try { Console.Write("Ведите номер удаляемого контакта: "); int index = Convert.ToInt32(Console.ReadLine()) - 1; int index1 = index / 4; switch (index) { case 4: case 8: case 9: case 12: case 13: case 14: case 16: case 17: case 18: case 19: index1 = index1 - 1; break; } int index2 = index; while (index2 > 4) { index2 = index2 - 5; } phoneList[index1, index2] = null; Console.WriteLine("Удалено!"); Console.WriteLine(); } catch(Exception e) { Console.WriteLine(e.ToString()); } } static void phoneView() { Console.Clear(); int a = 1; Console.WriteLine("Список"); for (int i = 0; i < n; i++) for (int j = 0; j < m; j++) if (phoneList[i, j] != null) Console.WriteLine("{0}. {1}", a++, phoneList[i, j]); Console.WriteLine(); } } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д