Короче задали задачку на курсах, я ее зделал а препод попрасил реализовать по другому!!! (Полный гад). Задача: сделать программу которая сможет записывать, считывать, редактировать, искать в базе учеников. Я зделал так: Code: using system; using system.IO; namespace studentlist 3 { //класс ответственный за представление студетна в памяти public class memoryrepresent { //поле для хранения имени студента private string name; //свойство для доступа к полю имя public string name { //чтение зачения get { return name; } // Запись значения с проверкой корректности данных set { //если строка не пустая, то значение изменяется if(value !=string/Empty) name = value; else throw new argumentException("Имя не может быть пустым") } } private uint age; public uint age { get { return age; } set{ if(value>0&&value<100) age = value; throw new argumentException("Возраст должен быть в пределах от 0 до 100") } } private uint group; public uint group { get { return group; } set { if(value>0&&<=10) group = value; else throw new argumentException("Номер группы должен быть в пределах от 1 до 10") } } public override string ToString() ( return String.Format("Имя: {0}\n Возраст: {1}\n Группа:{2}\n", name, age, group); } public memoryrepresent() { name = String.Empty; age = 0; group = 0; } public memoryrepresent(string[] array) { Name = array[0]; Age = uint.parse(array[]1); group = uint.parse(array[2]); } } public class filerepresent static char[] separators = new char[] {':'}; string _str; public filerepresent(string str) { _str = str; } public filerepresent(string[] array) { _str = ""; foreach)string s in arry) foreach(string s in array) _str+=s+":"; } public override string tostring() { return _str; } public static implicit operator string[] (filerepresentfrep) { return frep._str.split(separators); } }; class classl { statctic memoryrepresent[] students = newmemoryrepresent[100]; static int count = 0; static void print() { for(int i=0;i<count; i++) console.writeline(students[1]); console/writeline("Нажмите ентер для продолжения..."); } static void add() { students[cout] = new memoryrepresent(); try { console.write("Введите имя студента:"); students[cout] .name = console.readline() console.write("Введите возраст студента:"); students[cout] .age = uint.parse(console.readline()); console.write("Введите групу студента"); students[count] .group = uint .parse(console.readline()); count++; } catch(exception e) { console.writeline(e.message); } } static void remove() { console.write("Введите имя студента для удоления:"); string name = console.readline() for(int i=0;i<count;i++) if (string. compare(students[i] .name, name, true)==0) { for(int j=i;j<count-1;j++) students[j] = students [j+1]; count--; } } static void edit() { console.write ("введите имя студента для редактирования: "); string name = console.readline(); name for(int i=0;i<count;i++) if(string.compare(students[i] .name, name, true)==0) try { console.write("введите новое имя студента или нажмите ентер чтобы не менять"); string temp = console.readline(); students[i] .name = temp==string.empty?students[i] .name:temp; console.write("введите новый возраст студента или нажмите ентер чтобы не менять:"); temp = console.readline() temp==string.empty?students[i] .age:uint.parse(temp); console.write("введите новую группу студента или нажмите ентер чтобы не изменять:") temp = console.readline(); students[i] .group = temp==string.empty?students[i] .group:uint.parse(temp); } catch(exception e) { console.writeline(e.message); } } static void loadfromfile() { count = 0; using(streamreader reader = new streamreader("data.txt")) { string temp; while((temp = reader.readline()) !=null) { { students[count] = new memoryrepresent(new filerepresent(temp)); count++; } catch(exception e) { console.writeline(e.message); } } } } static void savefile() using(streamwritet writer = new streamwriter("data.txt")) { for(int i=0;i<count;i++) writer.writeline(new filerepresent(new string[] {students[i] .name, students[i] .age. tostring(), students[i] .group.tostring()})); } } [STATread] static void main(string[] args) { console.writeline("Добро пожаловать!"); { showmenu: console.writeline("1 - Вывести список"); console.writeline("2 - Добавить студента"); console.writeline("3 - Удолить студента"); console.writeline("4 - Редоктирывать студента"); console.writeline("5 - Загрузить из файла"); console.writeline("6 - Сохранить в фаил"); console.writeline("0 - выход"); console.write("Выберите пункт меню: "); switch(uint.parse(console.readline())) { case 1: print(); break; case 2: add(); break; case 3: remove(); break; case 4: edit(); break; case 5: loadfromfile(); break; case 6: savetofile(); break; case 0: console.write("Завершить работу с программой? y/n "); if(console.readline() .startswith("y") console.writeline("Спасибо за работу с нашей программой"); return; } break; default: continue; } }while(true); } } } Подскажите как реализовать по другому?
омг. объясни лучше как ты реализовал, что не понравилось преподу, как он попросил сделать. тогда мб помогу..
Он просто сказал реализуй по другому, Хрен знает что ему не понравилось. Я склоняюсь на запись и изменение данных студента. А реализовал все просто, изменением, записью, чтением текстового файла и вывод его части по твоему запросу.
да просто форматирование помения, сделай нормальные отступы, поубирай лишнии скобки, и скажи вот вам новый вариант!
ну так ты спроси у него, какого конкретно результата он ждет от тебя.. Так хоть будет что предложить тебе