Предмет:
Тип роботи:
Курсова робота
К-сть сторінок:
35
Мова:
Українська
style="text-align: justify;">}
Перевизначаємо метод ToString () та пристосовуємо до нашого класу Банк.
public override string ToString ()
{
return Name + «|» + Adresa + «|» + Employees + «|» + Turnover + «|» + Profit + «|» + Mode;
}
4. Розробка алгоритму рішення задачі
Алгоритм додавання елементу у стек і зберігання його у файлі
Загальний опис алгоритму додавання нового об’єкту в стек та зберігання об’єкту у файлі обраного офісу.
Спочатку перевіряємо заповнення усіх полів (Назву, адресу, кількість працівників, обороту, виручки, вибору офісу і його типу), якщо хоч одне поле не заповнене, то видаємо на екран повідомлення з назвою поля яке виявилось пустим, при цьому заповнені поля не зникають.
Потім створюємо об’єкт з нашими даними в конструкторі в залежності від обраного офісу.
Далі додаємо об’єкт на вершину стека.
Зберігаємо об’єкт у вигляді строки у файлі офісу якого ми обрали.
Кінець виконування алгоритму.
Алгоритм для перегляду вмісту стека
Створюємо копію стека під іншим ім’ям.
Перевіряємо чи є у стеку елементи, якщо ні то виводимо повідомлення у листбокс і завершуємо алгоритм, якщо є тоді продовжуємо виконувати програму,
Поки кількість елементів у стеку не дорівнює нулю виводимо на форму у листбоксі елементи по одному на рядок, замінюючи символ «|» на символ «\t»
Кінець алгоритму.
Алгоритм для редагування елемента у стеку
Спочатку перевіряємо заповнення усіх полів (Назву, адресу, кількість працівників, обороту, виручки, вибору офісу і його типу), якщо хоч одне поле не заповнене, то викликаємо на екран повідомлення з назвою поля яке виявилося пустим, при цьому заповнені поля не зникають.
Робимо копію стека під іншим ім’ям.
Заводимо додатково 3 рядкові змінні типу string: str, str2. s1.
Присвоюємо строковій змінній str обраний нами рядок з листбоксу замінюючи символ «\t» на символ «|»
Потім створюємо об’єкт з нашими даними в конструкторі в залежності від обраного офісу.
Очищаємо стек від усіх елементів.
Поки копія стеку більше 0 присвоюємо змінній s1 наведений у рядок елемент зі стеку. Виконуємо: якщо змінна s1 містить рядок змінній str додаємо до стеку об’єкт з нашими даними у конструкторі, якщо ні – додаємо до стеку змінну s1.
Чистимо вміст змінної str2.
Оголошуємо файлову змінну read і зв’язуємо її з файлом.
Введемо у змінну str2 вміст файла за допомогою файлової змінної read.
Зачинемо файл, який зв’язали файловою змінною read.
Якщо у файлі знаходиться розшукуваний рядок тоді замінюємо цей рядок на виправлений рядок, тобто, якщо змінна str2 містить змінну str тоді виконуємо блок команд, а саме:
В змінній str2 знаходимо старий рядок який зберігається в змінній str і замінюємо його новим об’єктом.
Оголошуємо об’єкт write і зв’язуємо її з файлом одного з офісів. Записуємо у об’єкт write змінну str2.
Зачиняємо файл.
Якщо цього рядка не знайдено то виконуємо наступні дії:
Дописуємо у файл новий об’єкт.
Передивляємось усі файли один за одним і якщо знаходимо у файлі дублікат то замінюємо цей рядок новим рядком.
Створюємо копію стеку.
Чистимо Листбокс.
Поки залишаються елементи у стеку виводимо їх по одному рядку у Листбокс.
Видаляємо усі записи з полів.
Чистимо всі дані в глобальній змінній stroka.
Алгоритм для знищення елемента у стеку:
Створюємо копію стеку.
Заводимо додатково 2 рядкові змінні типу string: str, s1.
Вводимо додаткову цілу змінну типа integer: nomer.
Присвоюємо строковій змінній str обраний нами рядок з листбоксу замінюючи символ «\t» на символ «|»
Визначаємо за назвою офіса в якому файлі треба видалити обраний нами рядок.
Створюємо новий об’єкт з нашими даними в конструкторі в залежності від обраного офісу завдяки тому, що всі наші дані знаходяться у полях форми.
Заводимо нову рядкову змінну str2
Присвоюємо змінній str2 новий об’єкт приведений до рядкового типу.
Методом Clear () видаляємо усі елементи зі старого стеку.
Виконуємо цикл Пока в новому стеку кількість елементів більше нуля виконуємо: беремо елемент з верху стеку і приводимо його до рядкового типу для присвоєння змінній s1
Якщо змінна s1 тримає у собі змінну str тоді продовжуємо цикл Поки далі та й повертаємось до його початку.
Якщо змінна s1 не тримає у собі змінну str тоді додаємо у старий стек змінну s1
Створюємо рядкову змінну str1.
Оголошуємо файлову змінну read і зв’язуємо її з файлом.
Введемо у змінну str1 вміст файла за допомогою файлової змінної read.
Зачинемо файл, який зв’язали файловою змінною read.
Оголошуємо об’єкт file1 і зв’язуємо її з файлом одного з офісів.
Якщо у змінній str1 розшукуваний індекс у змінній str не дорівнює -1 тоді замінюємо цей рядок на виправлений рядок, тоді можна видалити зі змінної str1 змінну str2 тобто, якщо змінна str1 містить змінну str тоді виконуємо блок команд, а саме:
В