Форум программистов, компьютерный форум, киберфорум
Java SE (J2SE)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.54/13: Рейтинг темы: голосов - 13, средняя оценка - 4.54
0 / 0 / 1
Регистрация: 12.03.2018
Сообщений: 15

Создать проект библиотеки

24.11.2019, 23:09. Показов 2747. Ответов 4
Метки java (Все метки)

Студворк — интернет-сервис помощи студентам
Нужно создать проект минимум на 10 классов где будет реализована городская библиотека в ООП стиле

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
//import java.util.Scanner;
public class Book extends Books{
// library;
    
        public int    sNo;
        public String bookName;
        public String authorName;
        public int    bookQty;
        public int    bookQtyCopy;
 
        public Book(int no, String title, String author, int quantity) {
            sNo         = no;
            bookName    = title;
            authorName  = author;
            bookQty     = quantity;
            bookQtyCopy = bookQty;
        }
        public Book(){
            
            System.out.println("\r\n" + "Введіть серійний номер книги/Enter Serial No of Book:");
            this.sNo = input.nextInt();
            input.nextLine();
            System.out.println("Введіть назву книги/Enter Book Name:");
            this.bookName = input.nextLine();
            System.out.println("Введіть ім'я автора/Enter Author Name:");
            this.authorName = input.nextLine();
            System.out.println("Введіть кількість книг/Enter Quantity of Books:");
            this.bookQty = input.nextInt();
            bookQtyCopy = this.bookQty;
 
        }
     }
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
import java.util.Scanner;
public class Books {
    
 
Book theBooks[] = new Book[50];     // Array that stores 'book' Objects.
public static int count;    // Counter for No of book objects Added in Array.
 
Scanner input = new Scanner(System.in);
 
 
public int compareBookObjects(Book b1, Book b2){
    if (b1.bookName.equalsIgnoreCase(b2.bookName)){
        System.out.println("Книга цієї назви вже існує / Book of this Name Already Exists.");
        return 0;
    }
    
    if (b1.sNo==b2.sNo){
        System.out.println("Книга з таким серйним номером вже не існує/Book of this Serial No Already Exists.");
        return 0;
    }
        return 1;
}
 
public void addBook(Book b){
    for (int i=0; i<count; i++){
        if (this.compareBookObjects(b, this.theBooks[i]) == 0)
            return;
    }
    if (count<50){
        theBooks[count] = b;
        count++;
    }
    
    else{
        System.out.println("Немає місця, щоб додати більше книг / No Space to Add More Books.");
    }
}
 
public void searchBySno(){
    System.out.println("\t\t\t\tПОШУК ПО СЕРІЙНИЙ НОМЕР\n");
    System.out.println("\t\t\t\tSEARCH BY SERIAL NUMBER\n");
    int sNo;
    System.out.println("Enter Serial No of Book:");
    sNo = input.nextInt();
    int flag = 0;
    System.out.println("\r\n" + "№ \\ t \\ t Ім'я \\ t \\ t Автор \\ t \\ t Доступний Кількість \\ t \\ t Загальна кількість \"");
    System.out.println("S.No\t\tName\t\tAuthor\t\tAvailable Qty\t\tTotal Qty");
 
    for (int i=0; i<count; i++){
        if (sNo == theBooks[i].sNo){
            System.out.println(theBooks[i].sNo + "\t\t" + theBooks[i].bookName + "\t\t" + theBooks[i].authorName + "\t\t" + 
                theBooks[i].bookQtyCopy + "\t\t" + theBooks[i].bookQty);
            flag++;
            return;
        }
    }
    if (flag == 0)
        System.out.println("Немає книги за серійним номером / No Book for Serial No " + sNo + " Found.");
}
 
public void searchByAuthorName(){
    System.out.println("\t\t\t\t ПОШУК ІМ’Я АВТОРА / SEARCH BY AUTHOR'S NAME");
    input.nextLine();
    System.out.println("Введіть ім'я автора / Enter Author Name:");
    String authorName = input.nextLine();
    int flag = 0;
    System.out.println("S.No\t\tName\t\tAuthor\t\tAvailable Qty\t\tTotal Qty");
    System.out.println("S.No \\ t \\ t Ім'я \\ t \\ t Автор \\ t \\ t Доступний Кількість \\ t \\ tЗагальна кількість Кількість");
    for (int i=0; i<count; i++){
        if (authorName.equalsIgnoreCase(theBooks[i].authorName)){
            System.out.println(theBooks[i].sNo + "\t\t" + theBooks[i].bookName + "\t\t" + theBooks[i].authorName + "\t\t" + 
                theBooks[i].bookQtyCopy + "\t\t" + theBooks[i].bookQty);
            flag++;
        }
    }
    if (flag == 0)
         System.out.println("Книги - " + authorName + " не знайдено.");
        System.out.println("No Books of " + authorName + " Found.");
}
public void showAllBooks(){
    System.out.println("\t\t\t\tПОКАЗАТИ ВСІ КНИГИ / SHOWING ALL BOOKS\n");
    System.out.println("S.No \\ t \\ t Ім'я \\ t \\ tАвтор \\ t \\ tДоступний Кількість t\\tВсього");
    System.out.println("S.No\t\tName\t\tAuthor\t\tAvailable Qty\t\tTotal Qty");
    for (int i=0; i<count; i++){
        System.out.println(theBooks[i].sNo + "\t\t" + theBooks[i].bookName + "\t\t" + theBooks[i].authorName + "\t\t" + 
                theBooks[i].bookQtyCopy + "\t\t" + theBooks[i].bookQty);
    }
}
 
public void upgradeBookQty(){
    System.out.println("\t\t\t\tОНОВЛЕННЯ КІЛЬКОСТІ КНИГ / UPGRADE QUANTITY OF A BOOK\n");
    System.out.println("Введіть серійний номер книги / Enter Serial No of Book");
    int sNo = input.nextInt();
    for (int i=0; i<count; i++){
        if (sNo == theBooks[i].sNo){
            System.out.println("Введіть № книг для додавання:");
            int addingQty = input.nextInt();
            theBooks[i].bookQty += addingQty;
            theBooks[i].bookQtyCopy += addingQty;
            return;
        }
    }
}
public void dispMenu(){
    System.out.println("----------------------------------------------------------------------------------------------------------");
    System.out.println("Введіть 0 для виходу із програми.");
    System.out.println("Enter 0 to Exit Application.");
    System.out.println("");
    System.out.println("Введіть 1, щоб додати нову книгу.");
    System.out.println("Enter 1 to Add new Book.");
    System.out.println("");
    System.out.println("Введіть 2, щоб оновити кількість книги.");
    System.out.println("Enter 2 to Upgrade Quantity of a Book.");
    System.out.println("");
    System.out.println("Введіть 3 для пошуку книги.");
    System.out.println("Enter 3 to Search a Book.");
    System.out.println("");
    System.out.println("Введіть 4, щоб показати всі книги.");
    System.out.println("Enter 4 to Show All Books.");
    System.out.println("");
    System.out.println("Введіть 5, щоб зареєструвати студента.");
    System.out.println("Enter 5 to Register Student.");
    System.out.println("");
    System.out.println("Введіть 6, щоб показати всіх зареєстрованих студентів");
    System.out.println("Enter 6 to Show All Registered Students.");
    System.out.println("");
    System.out.println("Введіть 7, щоб перевірити книгу. ");
    System.out.println("Enter 7 to Check Out Book. ");
    System.out.println("");
    System.out.println("Введіть 8, щоб зареєструватися");
    System.out.println("Enter 8 to Check In Book");
    System.out.println("---------------------------------------------");
 
}
public int isAvailable(int sNo){
    for (int i=0; i<count; i++){
        if (sNo == theBooks[i].sNo){
            if(theBooks[i].bookQtyCopy > 0){
                System.out.println("Книга доступна / Book is Available.");
                return i;
            }
            System.out.println("Книга недоступна / Book is Unavailable");
            return -1;
        }
    }
    System.out.println(  "У бібліотеці немає книги № " + "");
    System.out.println("No Book of Serial Number " + " Available in Library.");
    return -1;
}
public Book checkOutBook(){
    System.out.println("Введіть серійний номер книги, яку потрібно перевірити");
    System.out.println("Enter Serial No of Book to be Checked Out.");
    int sNo = input.nextInt();
    int bookIndex =isAvailable(sNo);
    if (bookIndex!=-1){
        //int bookIndex = isAvailable(sNo);
        theBooks[bookIndex].bookQtyCopy--;
        return theBooks[bookIndex];
    }
    return null;
}
public void checkInBook(Book b){
    for (int i=0; i<count; i++){
        if (b.equals(theBooks[i]) ){
            theBooks[i].bookQtyCopy++;
            return;
        }
    }
}
}
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
import java.util.Scanner;
 
public class Student {
 
 
String studentName;
String regNum;
 
Book borrowedBooks[] = new Book[3];
public int booksCount = 0;
 
Scanner input = new Scanner(System.in);
 
public Student(){
 
    System.out.println("Введіть ім'я студент / Enter Student Name:");
    this.studentName = input.nextLine();
 
    System.out.println("Введіть номер регістрації / Enter Reg Number:");
    this.regNum = input.nextLine();
 
}
}
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
import java.util.Scanner;
 
public class Students {
 
    Scanner input = new Scanner(System.in);
 
    Student theStudents[] = new Student[50];
 
    //books book;
 
 
    public static int count = 0;
 
    public void addStudent(Student s){
 
        for (int i=0; i<count; i++){
 
            if(s.regNum.equalsIgnoreCase(theStudents[i].regNum)){
                
                System.out.println("Студент з № " + s.regNum + " вже зареєстрований.");
                System.out.println("Student of Reg Num " + s.regNum + " is Already Registered.");
                return;
            }
 
        }
 
        if (count<=50){
 
            theStudents[count] = s;
            count++;
 
        }
 
    }
    public void showAllStudents(){
 
        System.out.println("Ім'я учня \t Зареєструвати номер");
        System.out.println("Student Name\t\tReg Number");
        for (int i=0; i<count; i++){
 
            System.out.println(theStudents[i].studentName + "\t\t" + theStudents[i].regNum);
 
        }
 
 
    }
 
    public int isStudent(){
        //return index number of student if available
 
         //System.out.println("Enter Student Name:");
        //String studentName = input.nextLine();
 
        System.out.println("Enter Reg Number:");
        String regNum = input.nextLine();
 
        for (int i=0; i<count; i++){
 
            if (theStudents[i].regNum.equalsIgnoreCase(regNum)){
 
                return i;
 
            }
 
        }
        System.out.println("Студент не зареєстрований / Student is not Registered.");
        System.out.println("Зареєструйтесь першим / Get Registered First.");
 
 
        return -1;
 
    }
    public void checkOutBook(Books book){
        int studentIndex =this.isStudent();
 
        if (studentIndex!=-1){
            System.out.println("перевірити / checking out");
 
            book.showAllBooks();//jjjjjjjjjjjj
            Book b = book.checkOutBook();
            System.out.println("checking out");
            if (b!= null){
 
                if (theStudents[studentIndex].booksCount<=3){
                    System.out.println("додавання книги / adding book");
                    theStudents[studentIndex].borrowedBooks[theStudents[studentIndex].booksCount] = b;
                    theStudents[studentIndex].booksCount++;
                    return;
 
                }
                else {
                    System.out.println("Студент не може запозичити більше 3-х книг.");
                    System.out.println("Student Can not Borrow more than 3 Books.");
                    return;
 
                }
            }
            System.out.println("Книга недоступна / Book is not Available.");
 
        }
 
    }
 
    public void checkInBook(Books book){
 
        int studentIndex = this.isStudent();
        if (studentIndex != -1){
            System.out.println("S.No \\ t \\ t Ім'я книги \\ t \\ tАвтор");
            System.out.println("S.No\t\t\tBook Name\t\t\tAuthor Name");
            Student s = theStudents[studentIndex];
            for (int i=0; i<s.booksCount; i++){
 
                System.out.println(s.borrowedBooks[i].sNo+ "\t\t\t" + s.borrowedBooks[i].bookName + "\t\t\t"+
                        s.borrowedBooks[i].authorName);
 
            }
            System.out.println("Введіть серійний номер книги, яку потрібно перевірити:");
            System.out.println("Enter Serial Number of Book to be Checked In:");
            int sNo = input.nextInt();
            for (int i=0; i<s.booksCount; i++){
 
                if (sNo == s.borrowedBooks[i].sNo){
 
                    book.checkInBook(s.borrowedBooks[i]);
                    s.borrowedBooks[i]=null;
                    return;
 
                }
 
 
            }
            System.out.println("Книги № "+sNo+"не знайдено");
            System.out.println("Book of Serial No "+sNo+"not Found");
 
        }
 
 
 
    }
 
 
    }
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
import java.util.Scanner;
 
 
public class Library {
    public static void main(String[] args) {
        System.out.println("********************Ласкаво просимо до Студентської бібліотеки!********************Welcome to the Student Library!********************");
        System.out.println("            Будь ласка, виберіть із наступних варіантів:               Please Select From The Following Options");
    System.out.println("**********************************************************************");
        
           // System.out.println("********************Welcome to the Student Library!********************");
            //System.out.println("              Please Select From The Following Options:               ");
        //System.out.println("**********************************************************************");
            Scanner input = new Scanner(System.in);
            Books ob = new Books();
            Students obStudent = new Students();
            int choice;
            int searchChoice;
 
            do{
 
                ob.dispMenu();
 
                choice = input.nextInt();
 
                switch(choice){
 
                    case 1:
                        Book b = new Book();
                        ob.addBook(b);
                        break;
 
                    case 2:
                        ob.upgradeBookQty();
                        break;
 
                    case 3:
                        System.out.println("Введіть 1 для пошуку за допомогою № / Enter 1 to Search with Serial No.");
                        System.out.println("Введіть 2 для пошуку з ім'ям автора (повне ім’я) / Enter 2 to Search with Author Name(Full Name).");
                        searchChoice = input.nextInt();
                       
                        switch(searchChoice){
 
                            case 1:
                                ob.searchBySno();
                                break;
                            case 2:
                                ob.searchByAuthorName();
 
                        }
                        break;
 
                    case 4:
                        ob.showAllBooks();
                        break;
                    case 5:
                        Student s = new Student();
                        obStudent.addStudent(s);
                        break;
                    case 6:
                        obStudent.showAllStudents();
                        break;
                    case 7:
                        obStudent.checkOutBook(ob);
                        break;
                    case 8:
                        obStudent.checkInBook(ob);
                        break;
                    default:
                         System.out.println("Вибір повинен бути в діапазоні 0-8");
                        System.out.println("CHOICE SHOULD BE BETWEEN 0 TO 8.");
 
                }
 
            }
            while (choice!=0);
            
        }
 
}
Вот все что смог выдавить. Дальше прошу помочь. я думал сделать много файловый массив который будет хранить информацию о книгах и студентов но не знаю как. А также то что могло бы читать файлы.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
24.11.2019, 23:09
Ответы с готовыми решениями:

Проект в VB. 3. 1. Создать проект, который по нажатию кнопки будет прорисовывать сердце проколотое стрелой
Создать проект, который по нажатию кнопки будет прорисовывать сердце проколотое стрелой. Заранее спасибо.

Не линкуется проект (не находит библиотеки)
Работал на одном ноутбуке, учил по маленьку DirectX. Возникла необходимость переехать. Поставил абсолютно одинаковый софт- VS 2010, DirectX...

Проект отдельно от qt не видит библиотеки
Добрый день/вечер, сохранил проект на яндекс.диск, она и указана как папка проектов, но не видит библиотеки например QGLWidget . Как...

4
 Аватар для sdasdaw
406 / 278 / 93
Регистрация: 14.03.2017
Сообщений: 777
24.11.2019, 23:37
SpL1NeR_1, как вариант, добавить еще
* журналы
* талончики (например при выдаче книги - бумажка к какой дате вернуть книгу)
* массив бумажек, истории кто брал эту книгу (студент, дата (с / до)).
* библиотеку подключить к городу (в городе столько то библиотек)
* город подключить к компании (хотя не знаю есть ли такое).
* класс сотрудников библиотеки.
0
0 / 0 / 1
Регистрация: 12.03.2018
Сообщений: 15
24.11.2019, 23:54  [ТС]
можеш набросать код?
0
 Аватар для sdasdaw
406 / 278 / 93
Регистрация: 14.03.2017
Сообщений: 777
25.11.2019, 00:11
SpL1NeR_1, нет, мне это не интересно
0
 Аватар для Aviz__
2755 / 2062 / 509
Регистрация: 17.02.2014
Сообщений: 9,491
25.11.2019, 10:10
SpL1NeR_1, если время поджимает, поищи помощи не за спасибо, т.к. твой код тянет на 2+ и переписывать его себе дороже((
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
25.11.2019, 10:10
Помогаю со студенческими работами здесь

Добавление статической библиотеки в проект
Пользуюсь этим мануалом http://msdn.microsoft.com/ru-ru/library/ms235627.aspx Выполняя второй пункт, нажимаю add new Reference,...

Не получается импортировать библиотеки в проект
Кто нибудб юзал Emgu CV???в любом случае (даже если нет) подскажиьте в чем может быть проблема или где копать... пишуследующее например: ...

Подключение библиотеки LibZplay в проект
Здравствуйте! Пишу плеер. Нашёл интересную библиотеку - LibZplay. С помощью неё можно написать неплохой плеер. К библиотеке прилагается...

Импорт С++ библиотеки в .NET проект
админа ...переместите, пожалуйста, если не в тот раздел засунул Вопрос у меня в заголовке, но есть ещё и детали. Есть основной...

Тестирование библиотеки. Проект или решение?
После того как написал библиотеку, то что выбирать для создания программы для тестирования данной библиотеки? Создать -&gt; Проект или...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Отправка уведомления на почту при изменении наименования справочника
Maks 24.03.2026
Программная отправка письма электронной почты на примере изменения наименования справочника "Склады" в конфигурации БП3. Перед реализацией необходимо выполнить настройку системной учетной записи. . .
модель ЗдравоСохранения 5. Меньше увольнений- больше дохода!
anaschu 24.03.2026
Теперь система здравосохранения уменьшает количество увольнений. 9TO2GP2bpX4 a42b81fb172ffc12ca589c7898261ccb/ https:/ / rutube. ru/ video/ a42b81fb172ffc12ca589c7898261ccb/ Слева синяя линия -. . .
Midnight Chicago Blues
kumehtar 24.03.2026
Такой Midnight Chicago Blues, знаешь?. . Когда вечерние улицы становятся ночными, а ты не можешь уснуть. Ты идёшь в любимый старый бар, и бармен наливает тебе виски. Ты смотришь на пролетающие. . .
Контроль уникальности заводского номера - вариант №2
Maks 24.03.2026
В отличие от предыдущего варианта добавлено прерывание циклов, также добавлены новые переменные для сохранения контекста ошибки перед прерыванием цикла: Процедура ПередЗаписью(Отказ, РежимЗаписи,. . .
SDL3 для Desktop (MinGW): Вывод текста со шрифтом TTF с помощью библиотеки SDL3_ttf на Си и C++
8Observer8 24.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-text-sdl3-c. zip finish-text-sdl3-cpp. zip
Жизнь в неопределённости
kumehtar 23.03.2026
Жизнь — это постоянное существование в неопределённости. Например, даже если у тебя есть список дел, невозможно дойти до точки, где всё окончательно завершено и больше ничего не осталось. В принципе,. . .
Модель здравоСохранения: работники работают быстрее после её введения.
anaschu 23.03.2026
geJalZw1fLo Корпорация до введения программа здравоохранения имела много невыполненных работниками заданий, после введения программы количество заданий выросло. Но на выплатах по больничным это. . .
Контроль уникальности заводского номера - вариант №1
Maks 23.03.2026
Алгоритм контроля уникальности заводского (или серийного) номера на примере документа выдачи шин для спецтехники с табличной частью в конфигурации КА2. Данные берутся из регистра сведений, по. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru