Читать «С++ для "чайников" .» онлайн - страница 232
Стефан Рэнди Дэвис
transactionType == 'X' )
{
break ;
}
/* Если введено С */
if ( transactionType == 'c' ||
transactionType == 'C' )
{
/* Инициализация нового счёта */
init( &accountNumber[ noAccounts ] ,
&balance[ noAccounts ] ) ;
/* Ввод информации о транзакции */
process( accountNumber[ noAccounts ] ,
balance[ noAccounts ] ) ;
/* Увеличение индекса */
_________________
344 стр. . Великолепная десятка
noAccounts++ ;
}
}
double total = 0 ;
cout << "Информация о счёте\n" ;
for ( int i = 0 ; i < noAccounts ; i++ )
{
cout << "Баланс счёта "
<< accountNumber[ i ]
<< " = "
<< balance[ i ]
<< "\n" ;
/* Накопление общей информации */
total += balance[ i ] ;
}
// Вывод
cout << "Баланс по всем счетам = "
<< total
<< "\n" ;
/* Пауза для того, чтобы посмотреть на результат работы программы */
system( "PAUSE" ) ;
return 0 ;
}
/* init — Инициализация счёта путём чтения номера и обнуления баланса */
void init( unsigned* pAccountNumber ,
double* pBalance )
{
cout << "Введите номер счёта:" ;
cin >> *pAccountNumber ;
*pBalance = 0.0 ;
}
/* process — Обновление баланса */
void process( unsigned& accountNumber ,
double& balance )
{
cout << "Введите положительную сумму вклада,\n"
<< "отрицательную сумму для снятия со счёта\n"
<< "или нуль для завершения работы\n"
<< endl ;
double transaction ;
do
{
cout << ":" ;
cin >> transaction ;
// Вклад
if ( transaction > 0 )
_________________
345 стр. . Программа BUDGET
{
/* Добавление на счёт */
balance += transaction ;
}
/* Снятие со счёта */
if ( transaction < 0 )
{
transaction = -transaction ;
if ( balance < transaction )
{
cout << "Недостаточно денег: всего"
<< balance
<< ", снимаем "
<< transaction
<<" \n" ;
}
else
{
balance -= transaction ;
}
}
} while ( transaction != 0 ) ;
}
Демонстрация работы данной программы:
Нажмите С для продолжения, X для выхода:
Программа создаёт банковские счета