Форум программистов, компьютерный форум, киберфорум
Наши страницы
Java SE (J2SE)
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
artemama
0 / 0 / 0
Регистрация: 11.12.2017
Сообщений: 8
#1

Задача Класс, объект Банкомат

11.12.2017, 15:13. Просмотров 540. Ответов 12
Метки нет (Все метки)

Создать класс и объекты описывающие Банкомат.
Набор купюр находящихся в банкомате должен задаваться тремя свойствами: количеством купюр номиналом 20 50 100.
Сделать методы для добавления денег в банкомат.
Сделать функцию снимающую деньги. На вход передается сумма денег. На выход – булевское значение (операция удалась или нет).
При снятии денег функция должна рапечатывать каким количеством купюр какого номинала выдается сумма. Создать конструктор с тремя параметрами – количеством купюр. Прочее – на ваше усмотрение.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.12.2017, 15:13
Ответы с готовыми решениями:

Написать класс, описывающий банкомат
Создать класс, описывающий банкомат. Набор купюр, находящихся в банкомате...

Что такое объект, класс, метод?
Изучаю язык java, а он в свою очень объектно-ориентированный, поэтому хочу...

Объект класса Простая дробь, используя класс Число
Помогите пожалуйста. Нужно создать объект класса Простая дробь, используя класс...

Создать объект класса Автомобиль, используя класс Колесо
Ребята помогите решить задачу Создать объект класса Автомобиль, используя...

Создать объект класса Птица, используя класс Крылья
Помогите пожалуйста. Создать приложение, удовлетворяющее требованиям,...

12
WWH
4 / 4 / 2
Регистрация: 23.12.2016
Сообщений: 124
11.12.2017, 17:12 #2
Я думаю что так, поправьте если что.
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
public class Банкомат {
 
    public static void main(String[] args) {
        int coins20;
        int coins50;
        int coins100;
        int allMoney;
        
    }
    
    public Банкомат(int coins20, int coins50, int coins100){
        coins20 = 0;
        coins50 = 0;
        coins100 = 0;
    }
    public static void addMoney(int coins20, int coins50, int coins100, int addcoins20, int addcoins50, int addcoins100){
        coins20 += addcoins20;
        coins50 += addcoins50;
        coins100 += addcoins100;
        int allAddCons = addcoins20 * 20 + addcoins50 * 50 + addcoins100 * 100;
        int allCoins = coins20 * 20 + coins50 * 50 + coins100 * 100;
        
    }
    
    public static boolean takeAwayMoney(int sum, int coins20, int coins50, int coins100){
        if(sum > coins20 * 20 + coins50 * 50 + coins100 * 100){
            sum -= coins20 * 20 + coins50 * 50 + coins100 * 100;
            return true;
        }else return false;
        
    }
    
}
1
Aviz__
462 / 319 / 105
Регистрация: 17.02.2014
Сообщений: 2,238
11.12.2017, 17:18 #3
artemama, на каком этапе у вас ступор?
0
artemama
0 / 0 / 0
Регистрация: 11.12.2017
Сообщений: 8
12.12.2017, 21:59  [ТС] #4
Добрый день
спасибо за помощь, вопрос по совету/коду который написали (вопрос наверное к гуру... или знающим... от новичка)
Java
1
2
3
4
5
6
7
8
9
10
11
12
 public static void main(String[] args) {
        int coins20;
        int coins50;
        int coins100;
        int allMoney;
        
    }
    
    public Банкомат(int coins20, int coins50, int coins100){
        coins20 = 0;
        coins50 = 0;
        coins100 = 0;
как правильнее и в чем реальное отличие?
Java
1
2
3
4
5
6
7
8
9
public class Bankomat {
 
         public static void main(String[] args) {
                int coins20=0;
                int coins50=0;
                int coins100=0;
                int allMoney=0;
                
            }
по задаче работаю, будет более готовый результат обязательно выложу в тему на суд

Добавлено через 2 часа 15 минут
Итак вот что получилось
делал 2 класса 1 сам объект Банкомат и main класс для запуска

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
public class CashMashine {
    private static int x100;
    private static int x50;
    private static int x20;
 
    public static void addMoney(int addnote100, int addnote50, int addnote20) {
        // Loading CashMashine
 
        addnote100 += x100;
        addnote50 += x50;
        addnote20 += x20;
 
    }
 
    static void askMoney(int requestCash) {
        if (requestCash % 10 != 0) {
            System.out.println("Wrong sum, pleas enter correct sum");
        } else {
            boolean firstAnswer;
            if (x100 * 100 + x50 * 50 + x20 * 20 >= requestCash) {
                firstAnswer = true;
 
            } else {
                firstAnswer = false;
                System.out.println("not enough money");
            }
 
        }
 
    }
}
и main

Java
1
2
3
4
5
6
7
8
9
10
11
public class Bankomat {
 
    public static void main(String[] args) {
        CashMashine CM1 = new CashMashine();
 
        CM1.addMoney(20, 30, 25);
        CM1.askMoney(1250);
 
    }
 
}
Загвоздка - как красиво написать какими купюрами выдаст сумму, (приходит на ум логика простейших математических действий - отнять все сотни, потом от остатка 50.... )
0
ArtemFM
238 / 221 / 163
Регистрация: 10.09.2015
Сообщений: 834
12.12.2017, 22:16 #5
просто делишь
Java
1
2
3
4
5
6
7
8
9
int[] nominal = {100, 500, 1000, 5000}; //массив имеющихся купюр
int[] count = new int[nominal.length]; //кол-во купюр выдать
int index = nominal.length - 1;
 
while (index != -1) {
    count[index] = money / nominal[index];
    money %= nominal[index];
    index--;
}
Добавлено через 2 минуты
ответ:
Java
1
2
3
for (int i = 0; i < count.length; i++) {
   System.out.printf("Номинал в %d руб. = %d шт.\n", nominal[i], count[i]);
}
1
WWH
4 / 4 / 2
Регистрация: 23.12.2016
Сообщений: 124
13.12.2017, 19:24 #6
A что значит
Java
1
2
3
4
5
 
public class CashMashine {
    private static int x100;
    private static int x50;
    private static int x20;
?
Как переменной int можно присвоить значнение x100?
0
Aviz__
462 / 319 / 105
Регистрация: 17.02.2014
Сообщений: 2,238
14.12.2017, 10:05 #7
Цитата Сообщение от WWH Посмотреть сообщение
присвоить значенение x100
x100 = 100; а так пробовали? Вы очень храбрый(ая)
0
artemama
0 / 0 / 0
Регистрация: 11.12.2017
Сообщений: 8
14.12.2017, 16:04  [ТС] #8
Цитата Сообщение от Aviz__ Посмотреть сообщение
x100 = 100; а так пробовали? Вы очень храбрый(ая)
не очень понял шутку про храброго....

х100 - это имя переменной....
0
Aviz__
462 / 319 / 105
Регистрация: 17.02.2014
Сообщений: 2,238
14.12.2017, 16:09 #9
Цитата Сообщение от artemama Посмотреть сообщение
храброго
если будете дальше программировать, то чуть позже, надеюсь, поймете...
0
WWH
4 / 4 / 2
Регистрация: 23.12.2016
Сообщений: 124
14.12.2017, 19:51 #10
Объясни шутку, то что это переменная а не значение я уже понял.
0
Aviz__
462 / 319 / 105
Регистрация: 17.02.2014
Сообщений: 2,238
15.12.2017, 07:58 #11
Цитата Сообщение от WWH Посмотреть сообщение
я уже понял
пока и на этом "спасибо")). К счастью, мы с вами на "ты" не переходили!
я уважаю вас, как личность и не вижу оснований тыкать.
0
artemama
0 / 0 / 0
Регистрация: 11.12.2017
Сообщений: 8
15.12.2017, 15:04  [ТС] #12
и все таки
Цитата Сообщение от Aviz__ Посмотреть сообщение
чуть позже, надеюсь, поймете...
может поможете понять чуть раньше? а то если бы Вам было все равно, прошли бы мимо..., а так вроде как заинтриговали, и приходится клещами вытягивать совет.... (может это ход хитрый...)
0
Aviz__
462 / 319 / 105
Регистрация: 17.02.2014
Сообщений: 2,238
15.12.2017, 15:20 #13
Теперь вы точно не забудете)).
0
15.12.2017, 15:20
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
15.12.2017, 15:20

Наследование. Создать объект класса Планета, используя класс Материк
Задание: Создать приложение, удовлетворяющее требованиям, приведенным в...

Создать объект класса Простая дробь, используя класс Число
Создать объект класса Простая дробь, используя класс Число. Методы: вывод на...

Банкомат
Создать класс Банкомат и класс Наличная карта (поля: Фамилия, пароль карты,...


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

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru