Параметри пошуку (Сторінка 17 з 17)
Ласкаво просимо!
Ласкаво просимо вас на україномовний форум з програмування, веб-дизайну, SEO та всього пов'язаного з інтернетом та комп'ютерами.
Будемо вдячні, якщо ви поділитись посиланням на Replace.org.ua на інших ресурсах.
Для того щоб створювати теми та надсилати повідомлення вам потрібно Зареєструватись.
Сторінки Попередня 1 … 15 16 17
Теми користувача sasha87 Виконати пошук
Знайдені повідомлення: з 321 по 335 з 335
Готово!!! Працює!
#define _CRT_SECURE_NO_WARNINGS
#include <iostream>
#include <fstream>
#include <ostream>
#include <string.h>
#include <windows.h>
#include <direct.h>
#include <stdlib.h>
#include <stdio.h>
#include<ctime>
#include <io.h>
using namespace std;
class DIR
{
char sPath[MAX_PATH];
char sPName[MAX_PATH];
public:
char* GetsPath()
{
return sPath;
}
void add_file()
{
ofstream Dir;
Dir.open("B:\\SHAG2020\\text3.txt", ofstream::app);
Dir << "test_2020" << endl;
if (!Dir.is_open())
{
cout << "ошыбка открытия файла" << endl;
}
Dir.close();
}
void Dir_create()
{
strcpy(sPath, "B:\\SHAG");
if (_mkdir(sPath) == 0)
printf("Creation \r\n%s\r\n SUCCESFULLY COMPLETED\r\n", sPath);
}
bool Show_Directory(const char *path)
{
_finddata32_t find;
char pathfind[MAX_PATH];
strcpy(pathfind, path);
strcat(pathfind, "\\*.*");
char info[MAX_PATH];
int result = _findfirst32(path, &find);
system("cls");
int flag = result;
if (flag == -1) {
strcpy(info, "Такой Директории Нет");
cout << info << endl;
printf("%s\n", info);
return false;
}
while (flag != -1) {
if (strcmp(find.name, ".") && strcmp(find.name, "..")) {
find.attrib & 0x10 ? strcpy(info, " Каталог ") :
strcpy(info, " Файл ");
cout << info << endl;
cout << find.name << endl;
printf("%30s %10s\n", find.name, info);
}
flag = _findnext32(result, &find);
}
_findclose(result);
return true;
}
void rename_file()
{
char oldName[50], newName[50];
cout << "Enter old name:";
cin >> oldName;
cout << "Enter new name:";
cin >> newName;
if (rename(oldName, newName) != 0)
cout << "Error!\n Couldn't rename file.Check old and new filename...\n\n";
else
cout << "Ok...\n\n";
}
void Del_file()
{
char Name[50];
cout << "Enter name:";
cin >> Name;
if (remove(Name) != 0)
cout << "Error!\n Couldn't remove file.Check filename...\n";
else
cout << "Ok...\n";
}
void del_dir()
{
strcpy(sPath, "B:\\SHAG2020");
if (_rmdir(sPath) == 0)
printf("%s\r\n SUCCESFULLY DELETED\r\n", sPath);
}
};
void Menu_()
{
cout << "\t menu:DIRECTORY" << endl;
cout << "1 - вывести содержимое каталога" << endl;
cout << "2 - создать файл" << endl;
cout << "3 - удалить файл" << endl;
cout << "4 - переименовать файл" << endl;
cout << "5 - создать каталог" << endl;
cout << "6 - удалить каталог" << endl;
cout << "7 - EXIT" << endl;
}
int main()
{
setlocale(LC_ALL, "");
string text;
DIR d;
int Menu = 0;
do {
system("cls");
Menu_();
cin >> Menu;
switch (Menu)
{
case 1:
d.Show_Directory("B:\\SHAG2020");
cout << "" << endl;
system("pause");
break;
case 2:
cout << "создание файла " << endl;
d.add_file();
cout << "файл успешно создан" << endl;
system("pause");
break;
case 3:
d.Del_file();
cout << "файл удален" << endl;
system("pause");
break;
case 4:
d.rename_file();
cout << "файл переименован" << endl;
system("pause");
break;
case 5:
d.Dir_create();
cout << "каталог создан" << endl;
system("pause");
break;
case 6:
d.del_dir();
system("pause");
break;
}
} while (Menu != 7);
system("pause");
return 0;
}
а як це зробити з рекурсією?
це метод перебору вмісту каталогу? мені казали, що перегляд вмісту десь на 50 рядків коду
але видалення каталогу ще складніше.
Зробив деякі методи. А хто може щось підказати по перегляду вмісту каталогу? Як це реалізувати? Якщо я правильно розумію, то цей метод найбільший (по коду) і найскладніший.
#define _CRT_SECURE_NO_WARNINGS
#include<iostream>
#include <fstream>
#include<ostream>
#include<string.h>
#include<direct.h>
#include<stdio.h>
using namespace std;
class DIR
{
char sPath[256];
char sPName[256];
public:
char* GetsPath()
{
return sPath;
}
void add_file()
{
fstream Dir;
Dir.open("text1.txt");
Dir << "test" << endl;
}
void Dir_create()
{
//
strcpy(sPath, "B:\\SHAG2020");
if (_mkdir(sPath) == 0)
printf("Creation \r\n%s\r\n SUCCESFULLY COMPLETED\r\n", sPath);
}
void ShowDirectory(const char* path)
{
}
void rename_file()
{
}
void Del_file()
{
}
void del_dir()
{
strcpy(sPath, "B:\\SHAG2020");
if (rmdir(sPath) == 0)
printf("%s\r\n SUCCESFULLY DELETED\r\n", sPath);
}
};
void Menu()
{
cout << "\t menu:DIRECTORY" << endl;
cout << "1 - вывести содержимое каталога" << endl;
cout << "2 - создать файл" << endl;
cout << "3 - переименовать файл" << endl;
cout << "4 - создать каталог" << endl;
cout << "5 - удалить каталог" << endl;
cout << "6 - EXIT" << endl;
}
int main()
{
string text;
DIR d;
int Menu = 0;
system("cls");
cin >> Menu;
switch (Menu)
{
case 1:
d.ShowDirectory("B:\\SHAG2020");
cout << "" << endl;
break;
case 2:
cout << "вывод содержимого каталога " << endl;
break;
case 3:
break;
case 4:
d.Dir_create();
break;
case 5:
d.del_dir();
break;
}
while (Menu != 6)
system("pause");
}
ОК
створити клас Dir. Передбачити методи:
1) виведення вмісту каталогу по заданому шляху
2) перейменування файлу
3) видалення ффайлу
4) сворення каталогу
5) видалення каталогу
літературу можете підказати?
То як мені методи реалізувати?
в даному класі треба передбачити виведення вмісту каталогу по заданому шляху, створення файлу, видалення файлу, створення і видалення каталогу
Допоможіть будь-ласка!!!
ось все що я написав!!! не знаю як працювати з каталогами і як ці операції описати в методах.
#include<iostream>
#include <fstream>
#include<ostream>
#include<string.h>
#include<direct.h>
#include<stdio.h>
using namespace std;
class DIR
{
char Path[256];
public:
DIR()
{
}
};
void File_save()
{
fstream Dir;
Dir.open("text1.txt");
}
void rename_file()
{
}
void Del_file()
{
}
void add_dir()
{
}
void del_dir()
{
}
void Menu()
{
cout << "\t menu:DIRECTORY" << endl;
cout << "1 - вывести содержимое каталога" << endl;
cout << "2 - создать файл" << endl;
cout << "3 - переименовать файл" << endl;
cout << "4 - создать каталог" << endl;
cout << "5 - удалить каталог" << endl;
cout << "6 - EXIT" << endl;
};
int main()
{
string text;
DIR d;
int Menu = 0;
system("cls");
cin >> Menu;
switch (Menu)
{
case 1:
cout << "" << endl;
break;
case 2:
cout << "вывод содержимого каталога " << endl;
break;
case 3:
break;
case 4:
break;
case 5:
break;
}
while (Menu!=6)
system("pause");
}
Ось код... але чомусь не виводить список груп (пункт 7 - case7)
І видає помилку, хоча раніше працювало нормально
Error LNK1168 cannot open C:\Users\Sasha87\OneDrive\Документи\ДОКУМЕНТИ\ШАГ\C++_клас(наслідування)\x64\Debug\C++_клас(наслідування).exe for writing C++_клас(наслідування) C:\Users\Sasha87\OneDrive\Документи\ДОКУМЕНТИ\ШАГ\C++_клас(наслідування)\C++_клас(наслідування)\LINK 1
#define _CRT_SECURE_NO_WARNINGS
#include<iostream>
#include<string>
#include<list>
#include<windows.h>
using namespace std;
class worker
{
protected:
string name;
string lastname;
string position;
list<string> spisok_сhief;
list<string> spisok_podchinenyy;
list<string> spisok_obazannostey;
public:
virtual void SetLastname(string) = 0;
virtual void SetName(string) = 0;
virtual void SetPosition(string) = 0;
virtual void ShowMustDoList() = 0;
virtual void SetMustDoList() = 0;
virtual void SetPodchinenyyList() = 0;
virtual void ShowLastName() = 0;
virtual void ShowFirstName() = 0;
virtual list<string>& GetListOfPodch() = 0;
public:
};
class manager :public worker
{
public:
void SetLastname(string s) override
{
lastname = s;
}
void SetName(string s) override
{
name = s;
}
void SetPosition(string s) override
{
position = s;
}
void ShowMustDoList() override
{
if (this->spisok_obazannostey.size() == 0)
cout << "Нема завдань, які треба виконати" << endl;
else
{
int i = 1;
for (std::list<string>::iterator it = spisok_obazannostey.begin(); it != spisok_obazannostey.end(); ++it)
cout << "Завдання " << i << " - " << *it << endl;
i++;
}
}
virtual void SetMustDoList()
{}
void SetPodchinenyyList() override
{
if (this->spisok_podchinenyy.size() == 0)
cout << "Підлеглих нема" << endl;
//виводить список підлеглих на екран
else
{
int i = 1;
for (std::list<string>::iterator it = spisok_podchinenyy.begin(); it != spisok_podchinenyy.end(); ++it)
cout << "Підлеглий " << i << " - " << *it << endl;
i++;
}
}
void ShowFirstName() override
{
cout << "ім'я - " << this->name << endl;
}
void ShowLastName() override
{
cout << "прізвище - " << this->lastname << endl;
}
list<string>& GetListOfPodch() override
{
return this->spisok_podchinenyy;
}
};
class developer:public worker
{
public:
void SetLastname(string s) override
{
lastname = s;
}
void SetName(string s) override
{
name = s;
}
void SetPosition(string s) override
{
position = s;
}
void ShowMustDoList() override
{
if (this->spisok_obazannostey.size() == 0)
cout << "Не поступило завдань від менеджера" << endl;
else
{
int i = 1;
for (std::list<string>::iterator it = spisok_obazannostey.begin(); it != spisok_obazannostey.end(); ++it)
cout << "виконує вказівки менеджера" << i << " - " << *it << endl;
i++;
}
}
virtual void SetMustDoList()
{}
void SetPodchinenyyList() override {
if (this->spisok_podchinenyy.size() == 0)
cout << "Підлеглих нема" << endl;
else
{
int i = 1;
for (std::list<string>::iterator it = spisok_podchinenyy.begin(); it != spisok_podchinenyy.end(); ++it)
cout << "Підлеглий " << i << " - " << *it << endl;
i++;
}
}
void ShowFirstName() override
{
cout << "ім'я - " << this->name << endl;
}
void ShowLastName() override
{
cout << "прізвище - " << this->lastname << endl;
}
list<string>& GetListOfPodch() override
{
return this->spisok_podchinenyy;
}
};
class coder :public worker
{
public:
void SetLastname(string s) override
{
lastname = s;
}
void SetName(string s) override
{
name = s;
}
void SetPosition(string s) override
{
position = s;
}
void ShowMustDoList()override
{
if (this->spisok_obazannostey.size() == 0)
cout << "допомога девелоперу не потрібна" << endl;
else
{
int i = 1;
for (std::list<string>::iterator it = spisok_obazannostey.begin(); it != spisok_obazannostey.end(); ++it)
cout << "програмує на C++ та заносить інформацію в БД" << i << " - " << *it << endl;
i++;
}
}
virtual void SetMustDoList()
{}
void SetPodchinenyyList() override
{
}
void ShowFirstName() override
{
cout << "ім'я - " << this->name << endl;
}
void ShowLastName() override
{
cout << "прізвище - " << this->lastname << endl;
}
list<string>& GetListOfPodch() override
{
list<string>* tmp = NULL;
return *tmp;
}
};
class group
{
public:
list<manager> list_of_managers;
list<developer> list_of_developers;
list<coder> list_of_coders;
//list<group>list_of_groups;
group() { list_of_managers.clear();
}
};
int main()
{
SetConsoleOutputCP(1251);
SetConsoleCP(1251);
int menu;
int sub_menu;
string txt;
string txt_for_new_person;
manager tmp_manager;
developer tmp_developer;
coder tmp_coder;
list<manager>::iterator tmp_iter_man;
list<developer>::iterator tmp_dev_man;
list<coder>::iterator tmp_cod_man;
list<group>::iterator tmp_group;
group gr;
do {
system("CLS");
cout << "1 - Додати менеджера" << endl;
cout << "2 - Показати всіх менеджерів" << endl;
cout << "3-Додати розробника" << endl;
cout << "4 - Показати всіх розробників" << endl;
cout << "5 - додати молодшого програміста" << endl;
cout << "6 - показати всіх молодших програмістів" << endl;
cout << "7 - переглянути список груп" << endl;
cout << "8 - Вийти" << endl;
cout << "Зробіть свій вибір" << endl;
cin >> menu;
switch (menu)
{
case 1:cout << "Давайте додамо менеджера" << endl;
cout << "Введіть прізвище менеджера" << endl;
cin >> txt;
tmp_manager.SetLastname(txt);
cout << "Введіть ім'я менеджера" << endl;
cin >> txt;
tmp_manager.SetName(txt);
cout << "Введіть посаду" << endl;
cin >> txt;
tmp_manager.SetPosition(txt);
gr.list_of_managers.push_back(tmp_manager);
tmp_iter_man = gr.list_of_managers.end();
tmp_iter_man--;
cout << "Нового менеджера додано в список." << endl;
do
{
system("CLS");
cout << "В цього менеджера є підлеглі ? (1 - додати підлеглого, 0 - ні)" << endl;
cin >> sub_menu;
if (sub_menu == 0)
{
cout << "Ok. На цьому список підлеглих закінчено" << endl;
break;
}
cout << "Введіть прізвище підлеглого для нового менеджера" << endl;
cin >> txt;
tmp_iter_man->GetListOfPodch().push_back(txt);
} while (true);
system("pause");
break;
case 2:cout << "Виводжу на екран список всіх менеджерів групи" << endl;
if (gr.list_of_managers.size() == 0)
cout << "Ой, а менеджерів у групі і нема" << endl;
else
for (std::list<manager>::iterator it_man = gr.list_of_managers.begin(); it_man != gr.list_of_managers.end(); ++it_man)
{
it_man->ShowLastName();
it_man->ShowFirstName();
if (it_man->GetListOfPodch().size() == 0)
cout << "У цього менеджера немає підлеглих" << endl;
else
{
list<string> lst_podch = it_man->GetListOfPodch();
int i = 0;
for (std::list<string>::iterator it_podch = lst_podch.begin(); it_podch != lst_podch.end(); ++it_podch)
{
cout << "Підлеглий " << i << " - " << *it_podch << endl;
i++;
}
}
}
system("pause");
break;
case 3:cout << "виводжу на екран список розробників" << endl;
if (gr.list_of_developers.size() == 0)
cout << "в групі немає розробників" << endl;
cout << "введіть прізвище розробника" << endl;
cin >> txt;
tmp_developer.SetLastname(txt);
cout << "введіть ім'я розробника" << endl;
cin >> txt;
tmp_developer.SetLastname(txt);
cout << "Введіть посаду" << endl;
cin >> txt;
tmp_developer.SetPosition(txt);
gr.list_of_developers.push_back(tmp_developer);
tmp_dev_man = gr.list_of_developers.end();
tmp_dev_man--;
cout << "Нового розробника додано в список." << endl;
do
{
system("CLS");
cout << "В цього розробника є підлеглі ? (1 - додати підлеглого, 0 - ні)" << endl;
cin >> sub_menu;
if (sub_menu == 0)
{
cout << "Ok. На цьому список підлеглих закінчено" << endl;
break;
}
cout << "Введіть прізвище підлеглого для нового розробника" << endl;
cin >> txt;
tmp_dev_man->GetListOfPodch().push_back(txt);
} while (true);
system("pause");
break;
case 4:cout << "Виводжу на екран список всіх розробників групи" << endl;
if (gr.list_of_developers.size() == 0)
cout << "розробників у групі нема" << endl;
else
for (std::list<developer>::iterator dev_man = gr.list_of_developers.begin(); dev_man != gr.list_of_developers.end(); ++dev_man)
{
dev_man->ShowLastName();
dev_man->ShowFirstName();
if (dev_man->GetListOfPodch().size() == 0)
cout << "У цього розробника немає підлеглих" << endl;
else
{
list<string> lst_podch = dev_man->GetListOfPodch();
int i = 0;
for (std::list<string>::iterator it_podch = lst_podch.begin(); it_podch != lst_podch.end(); ++it_podch)
{
cout << "Підлеглий " << i << " - " << *it_podch << endl;
i++;
}
}
}
system("pause");
break;
case 5: cout << "виводжу на екран список програмістів" << endl;
if (gr.list_of_coders.size() == 0)
cout << "в групі немає програмістів" << endl;
cout << "введіть прізвище програміста" << endl;
cin >> txt;
tmp_coder.SetLastname(txt);
cout << "введіть ім'я програміста" << endl;
cin >> txt;
tmp_coder.SetLastname(txt);
cout << "Введіть посаду" << endl;
cin >> txt;
tmp_coder.SetPosition(txt);
gr.list_of_coders.push_back(tmp_coder);
tmp_cod_man = gr.list_of_coders.end();
tmp_cod_man--;
cout << "Нового програміста додано в список." << endl;
break;
case 6:cout << "Виводжу на екран список всіх програмістів групи" << endl;
if (gr.list_of_coders.size() == 0)
cout << "програмістів у групі нема" << endl;
else
for (std::list<coder>::iterator cod_man = gr.list_of_coders.begin(); cod_man != gr.list_of_coders.end(); ++cod_man)
{
cod_man->ShowLastName();
cod_man->ShowFirstName();
}
system("pause");
break;
cout << "Всього найкращого" << endl;
system("pause");
exit(0);
case 7:cout << "показати список груп" << endl;
if (gr.list_of_managers.size() == 0)
for (std::list<manager>::iterator groups = gr.list_of_managers.begin(); groups != gr.list_of_managers.end(); groups++)
{
tmp_iter_man->ShowLastName();
tmp_iter_man->ShowFirstName();
gr.list_of_managers.push_back(*tmp_iter_man);
}
if (gr.list_of_developers.size() == 0)
for (std::list<developer>::iterator groups = gr.list_of_developers.begin(); groups != gr.list_of_developers.end(); groups++)
{
tmp_dev_man->ShowLastName();
tmp_dev_man->ShowFirstName();
gr.list_of_developers.push_back(*tmp_dev_man);
}
if (gr.list_of_coders.size() == 0)
for (std::list<coder>::iterator groups = gr.list_of_coders.begin(); groups != gr.list_of_coders.end(); groups++)
{
tmp_cod_man->ShowLastName();
tmp_cod_man->ShowFirstName();
gr.list_of_coders.push_back(*tmp_cod_man);
}
}
} while (menu != 8);
system("pause");
}
Як зробити експорт БД з ms sql management studio в Oracle? Щоб не довелось створювати БД з тими самими даними з нуля в Oracle
Хочу зрозуміти, як щось описати в класі і потім це реалізувати в головній функції
Створити абстрактний клас Worker з полями, які задають прізвище працівника, прізвища керівника і підлеглих і
віртуальними методами виведення списку обов'язків та списку підлеглих на екран.
На його основі реалізувати класи Manager (керівник проекту), Developer (розробник) і Coder (молодший програміст).
Створити клас Group (група), що містить масив / параметризрвані колекцію об'єктів цих класів в динамічній пам'яті.
Передбачити можливість виведення всіх об'єктів списку і вибірки на прізвище з висновком всього дерева підлеглих.
Написати демонстраційну програму, в якій будуть використовуватися всі методи класів.
Допоможіть будь-ласка доробити
#define _CRT_SECURE_NO_WARNINGS
#include<iostream>
#include<string.h>
using namespace std;
class worker
{
public:
char name[100];
virtual void setlastname(char *s) = 0;
};
class managerublic worker
{
public:
void setlastname(char *s)
{
strcpy (name, s);
}
};
class developerublic worker
{
};
class coder
{
};
class group1
{
manager *manager1;
};
int main()
{
manager A1;
A1.setlastname((char *)"Ivanov");
}
Знайдені повідомлення: з 321 по 335 з 335
Сторінки Попередня 1 … 15 16 17