Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
C#_Console.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
1.4 Mб
Скачать

Упражнение 3. Добавление дополнительных public методов

В этом упражнении Вы добавите еще два метода в класс Account: методы Withdraw и Deposit.

Метод Withdraw принимает на вход один параметр типа decimal и вычитает указанную сумму из баланса счета. Однако перед этим производится проверка, имеется ли на счету необходимая сумма, чтобы не превысить кредитный лимит счета. Метод возвращает значение типа bool, указывающее удалось ли снять со счета необходимую сумму.

Метод Deposit также принимает на вход один параметр типа decimal и прибавляет указанное значение к балансу счета. Метод возвращает новое значение баланса счета.

  • Добавьте метод Deposit в класс BankAccount

  • Откройте проект MoreMethods.sln из папки install folder\Labs\Lab07\Starter\MoreMethods.

Замечание: Этот проект совпадает с окончательным вариантом проекта упражнения 2.

  • В класс BankAccount добавьте нестатический public метод Deposit. Этот метод принимает на вход параметр типа decimal, значение которого прибавляется к балансу счета. Метод возвращает новое значение баланса счета.

class BankAccount

{

...

public decimal Deposit(decimal amount)

{

accBal += amount;

return accBal;

}

...

}

  • В класс CreateAccount добавьте статический public метод TestDeposit. Это будет void-метод с одним параметром типа BankAccount. В теле метода у пользователя будет запрашиваться сумма, которую необходимо положить на счет. Это значение будет конвертироваться в тип decimal и передаваться в качестве входного параметра при вызове метода Deposit:

class CreateAccount

{

...

public static void TestDeposit(BankAccount acc)

{

Console.Write("Enter amount to deposit: ");

decimal amount = decimal.Parse(Console.ReadLine());

acc.Deposit(amount);

}

...

}

  • В метод CreateAccount.Main добавьте инструкции для вызова только что созданного вами метод TestDeposit. Убедитесь в том, что вы вызываете метод TestDeposit для обоих объектов банковских счетов. Для вывода информации о счете после осуществления вклада используйте метод CreateAccount.Write:

class CreateAccount

{

static void Main( )

{

BankAccount berts = NewBankAccount( );

Write(berts);

TestDeposit(berts);

Write(berts);

BankAccount freds = NewBankAccount( );

Write(freds);

TestDeposit(freds);

Write(freds);

}

}

  • Сохраните проект.

  • Откомпилируйте программу и исправьте ошибки, если это необходимо. Запустите программу. Убедитесь в том, что метод Deposit работает корректно.

Замечание: Если у вас осталось время, вы можете добавить в тело метода Deposit проверку того, что передаваемое на вход значение параметра является неотрицательным.

  • Добавьте метод Withdraw в класс BankAccount

  • В класс BankAccount добавьте нестатический public метод Withdraw. Этот метод принимает на вход один параметр типа decimal и вычитает указанную сумму из баланса счета. Однако перед этим производится проверка, имеется ли на счету необходимая сумма, чтобы не превысить кредитный лимит счета. Метод возвращает значение типа bool, указывающее удалось ли снять со счета необходимую сумму.

class BankAccount

{

...

public bool Withdraw(decimal amount)

{

bool sufficientFunds = accBal >= amount;

if (sufficientFunds) {

accBal -= amount;

}

return sufficientFunds;

}

...

}

  • В класс CreateAccount добавьте статический public метод TestWithdraw. Это будет void-метод с одним параметром типа BankAccount. В теле метода у пользователя будет запрашиваться сумма, которую необходимо снять со счета. Это значение будет конвертироваться в тип decimal и передаваться в качестве входного параметра при вызове метода Withdraw. При неудачной попытке снятия денег со счета на экран будет выводиться сообщение:

class CreateAccount

{

...

public static void TestWithdraw(BankAccount acc)

{

Console.Write("Enter amount to withdraw: ");

decimal amount = decimal.Parse(Console.ReadLine());

if (!acc.Withdraw(amount)) {

Console.WriteLine("Insufficient funds.");

}

}

...

}

  • В метод CreateAccount.Main добавьте инструкции для вызова только что созданного вами метод TestWithdraw. Убедитесь в том, что вы вызываете метод TestWithdraw для обоих объектов банковских счетов. Для вывода информации о счете после изъятия суммы со счета используйте метод CreateAccount.Write:

class CreateAccount

{

static void Main( )

{

BankAccount berts = NewBankAccount( );

Write(berts);

TestDeposit(berts);

Write(berts);

TestWithdraw(berts);

Write(berts);

BankAccount freds = NewBankAccount( );

Write(freds);

TestDeposit(freds);

Write(freds);

TestWithdraw(freds);

Write(freds);

}

}

  • Сохраните проект.

  • Откомпилируйте программу и исправьте ошибки, если это необходимо. Запустите программу. Убедитесь в том, что метод Withdraw работает корректно. Протестируйте удачные и неудачные попытки снятия денег со счета.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]