Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.73/11: Рейтинг темы: голосов - 11, средняя оценка - 4.73
0 / 0 / 0
Регистрация: 21.11.2021
Сообщений: 44

Метод перевода денег

21.11.2021, 22:52. Показов 2426. Ответов 7
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый день,

Недавно начал обучаться на курса по С# (с нуля, биолог по образованию)
Задали след задание и у меня 0 идей как подступиться...

В класс банковский счет, созданный в прошлых упражнениях добавить метод, который переводит деньги с одного счета на другой. У метода два параметра: ссылка на объект класса банковский счет откуда снимаются деньги, второй параметр – сумма.

Вот мой класс
C#
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
using System;
 
namespace _3._2._1
{
 
    public enum AccountType { Current, Savings }
    public class BankAccount
    {
        private int _AccountNumber;
        private int _Balance;
        private AccountType _Type;
 
        public int AccountNumber
        {
            get { return _AccountNumber; }
            set { _AccountNumber = value; }
        }
        public int Balance
        {
            get { return _Balance; }
            set { _Balance = value; }
        }
        public AccountType Type
        {
            get { return _Type; }
            set { _Type = value; }
        }
 
    }
    class Program
    {
 
 
        static void Main()
        {
            BankAccount bankAccount = new BankAccount();
 
            Console.WriteLine("Введите номер аккаунта: ");
            bankAccount.AccountNumber = int.Parse(Console.ReadLine());
 
            Console.WriteLine("Введите количество денег на счету: ");
            bankAccount.Balance = int.Parse(Console.ReadLine());
 
            bankAccount.Type = AccountType.Current;
 
            Console.WriteLine(bankAccount.Type);
            Console.WriteLine("Тип банковского аккаунта " + bankAccount.Type + ", номер счета " + bankAccount.AccountNumber + ", количество " + bankAccount.Balance);
            Console.ReadKey();
 
        }
    }
}
Заранее всем большое спасибо!
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
21.11.2021, 22:52
Ответы с готовыми решениями:

Создать подпрограмму перевода валюты через метод
Создать подпрограмму перевода валюты. Подпрограмма получает число, вид исходной валюты и вид валюты в которую надо перевести число....

Рекурсивный метод перевода в десятичную систему счисления
задачу решить рекурсивным методом.Дана символьная строка,представляющая собой запись натурального числа в ричной системе...

Таблица перевода курса денег
Напечатать таблицу перевода 10,11, ..., 20 тенге в доллары США по текущему курсу (значение курса вводится с клавиатуры). Добавлено...

7
33 / 19 / 15
Регистрация: 09.03.2021
Сообщений: 84
21.11.2021, 23:17
Лучший ответ Сообщение было отмечено ZacZacovi4 как решение

Решение

C#
1
2
3
4
5
        public void Retract(BankAccount bankAccount, int amount)
        {
            bankAccount.Balance -= amount;
            this.Balance += amount;
        }
Не думаю что имеет смысл ref добавлять
1
0 / 0 / 0
Регистрация: 21.11.2021
Сообщений: 44
21.11.2021, 23:29  [ТС]
Благодарю,

Если Вас не затруднит, не могли бы вы мне продемонстрировать в коде как будет выглядеть вызов этого метода?
И нужно ли мне создать второй класс (BancAccount2) например, который будет копией первого только с другими значениями конечно?

Заранее большое спасибо!
0
33 / 19 / 15
Регистрация: 09.03.2021
Сообщений: 84
21.11.2021, 23:35
Пример
Миниатюры
Метод перевода денег  
1
33 / 19 / 15
Регистрация: 09.03.2021
Сообщений: 84
21.11.2021, 23:36
Хотя мне кажется нужно наоборот сделать, чтобы снималось с текущего и добавлялось на тот что в ссылке). Реализовал как понял описание
0
0 / 0 / 0
Регистрация: 21.11.2021
Сообщений: 44
22.11.2021, 00:01  [ТС]
До меня дошло!!!
Спасибо большое, то что надо как раз!
0
Модератор
Эксперт .NET
 Аватар для Элд Хасп
16140 / 11264 / 2888
Регистрация: 21.04.2018
Сообщений: 33,109
Записей в блоге: 2
22.11.2021, 00:20
Цитата Сообщение от ZacZacovi4 Посмотреть сообщение
public class BankAccount
По логике использования такого класса, его свойства AccountNumber и Type должны быть иммутабельными (то есть автосвойства без сеттеров), а свойство Balance - должно иметь приватный сеттер.
Первые два свойства задаются только в конструкторе BankAccount.
А свойство Balance только из метода Retract - если деньги на счету появляются, значит они откуда уходят.
Общая сумма всех денег на счетах должна быть всегда равна нулю - это основа бухгалтерии.

Добавлено через 2 минуты
Даже если у вас не стоит задача создания полного плана счётов, то всё равно для изменения Balance (добавления-удаления денег) надо сделать отдельный метод.
1
0 / 0 / 0
Регистрация: 21.11.2021
Сообщений: 44
22.11.2021, 00:36  [ТС]
Я понимаю что вы имеете в виду, но у нас вначале было задание на создание такого базового класса счет в банке с закрытыми полями: номер счета, баланс, тип банковского счета. И я уже по логике танцевал от этого класса.
Я думаю что вот это уже Next Level программирования!)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
22.11.2021, 00:36
Помогаю со студенческими работами здесь

Хеш-функция – метод перевода в другую систему счисления, метод разрешения коллизий – метод цепочек
Перевод из одной системы счисления в другую сделал, но очень плохо понимаю как сделать метод цепочек. Подскажите пожалуйста. #include...

Нужно доработать код для перевода денег между клиентами
SELECT * FROM teade JOIN Client ON client1 = client_id; UPDATE Client SET balance = balance - 1000 WHERE client_id=1; UPDATE Client SET...

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

Написать программу перевода денег из одной валюты в другую. Среда разработки RemObjects Oxygene/Pascal
Помогите пожалуйста!Необходимо написать программу перевода денег из одной валюты в другую. Среда разработки RemObjects Oxygene/ язык...

Есть плагин перевода денег между пользователями,как сделать чтоб при етом можна было отправлять сообщение
Есть плагин перевода денег между пользователями,как сделать чтоб при етом можна было отправлять сообщение вместе тем кому надсилаеш деньги


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

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Новые блоги и статьи
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru