Стефан Дэвис - С++ для чайников .

Тут можно читать онлайн Стефан Дэвис - С++ для чайников . - бесплатно полную версию книги (целиком) без сокращений. Жанр: sci_tech, издательство Издательский дом Вильямс. Компьютерное издательство Диалектика, год 2007. Здесь Вы можете читать полную версию (весь текст) онлайн без регистрации и SMS на сайте лучшей интернет библиотеки ЛибКинг или прочесть краткое содержание (суть), предисловие и аннотацию. Так же сможете купить и скачать торрент в электронном формате fb2, найти и слушать аудиокнигу на русском языке или узнать сколько частей в серии и всего страниц в публикации. Читателям доступно смотреть обложку, картинки, описание и отзывы (комментарии) о произведении.
  • Название:
    С++ для чайников .
  • Автор:
  • Жанр:
  • Издательство:
    Издательский дом Вильямс. Компьютерное издательство Диалектика
  • Год:
    2007
  • Город:
    Москва
  • ISBN:
    0-7645-6852-3, 978-5-8459-0723-3
  • Рейтинг:
    4/5. Голосов: 11
  • Избранное:
    Добавить в избранное
  • Отзывы:
  • Ваша оценка:
    • 80
    • 1
    • 2
    • 3
    • 4
    • 5

Стефан Дэвис - С++ для чайников . краткое содержание

С++ для чайников . - описание и краткое содержание, автор Стефан Дэвис, читайте бесплатно онлайн на сайте электронной библиотеки LibKing.Ru
empty-line
1
empty-line
4

С++ для чайников . - читать онлайн бесплатно полную версию (весь текст целиком)

С++ для чайников . - читать книгу онлайн бесплатно, автор Стефан Дэвис
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

/* Увеличение индекса */

_________________

344 стр. Часть 6. Великолепная десятка

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 стр. Глава 31. Программа BUDGET

{

/* Добавление на счёт */

balance += transaction ;

}

/* Снятие со счёта */

if ( transaction < 0 )

{

transaction = -transaction ;

if ( balance < transaction )

{

cout << "Недостаточно денег: всего"

<< balance

<< ", снимаем "

<< transaction

<<" \n" ;

}

else

{

balance -= transaction ;

}

}

} while ( transaction != 0 ) ;

}

Демонстрация работы данной программы:

Нажмите С для продолжения X для выхода Программа создаёт банковские счета - фото 347

Нажмите С для продолжения, X для выхода:

Программа создаёт банковские счета

С для создания счёта, X для выхода: С

Введите номер счёта: 1234

Введите положительную сумму вклада,

отрицательную сумму для снятия со счёта

или нуль для завершения работы

: 200

: -100

: -200

Недостаточно денег: всего 100 , снимаем 200

: 0

С для создания счёта, X для выхода: с

Введите номер счёта: 2345

Введите положительную сумму вклада,

отрицательную сумму для снятия со счёта

или нуль для завершения работы

: 200

: -50

: -50

: 0

С для создания счёта, X для выхода: х

Информация о счёте

Баланс счёта 1234 = 100

Баланс счёта 2345 = 100

Баланс по всем счетам = 200

Press any key to continue...

_________________

346 стр. Часть 6. Великолепная десятка

Разберёмся в том, как работает BUDGET . В этой программе было создано два массива, один из которых содержит номера счетов, а второй — балансы. Эти массивы синхронизированы таким образом, что элемент balance[ n ] содержит баланс счёта с номером из accountNumber[ n ] , независимо от значения n . В связи с ограничением длины массива количество счетов, содержащихся в программе, не может превышать MAXACCOUNTS .

Главная программа разделена на две части: первая отвечает за сбор информации ( в ней происходит считывание размеров вкладов, снятие денег и запись результата ), а вторая — за вывод информации. Фрагмент, отвечающий за сбор информации, организован в виде цикла, в котором счета обрабатываются каждый в отдельности. В начале цикла пользователю предлагается ввести С для продолжения работы и X — для завершения. Если был введён символ X , происходит выход из цикла и переход во вторую часть main( ) .

Программа выходит из цикла, если количество созданных счетов достигло MAXACCOUNTS , независимо от того, был ли введён X .

Обратите внимание, что происходит проверка введённого символа на равенство как 'X' , так и 'х' — ведь в отличие от компьютера человек может не обратить внимания на регистр вводимых символов.

Если пользователь ввёл ' С ', то управление передаётся функции init( ) , которая создаёт счёт и заполняет его необходимой информацией. После этого функция process( ) добавляет в счёт информацию о транзакции.

Аргументами функций init( ) и process( ) являются указатели, так что эти функции могут изменять значения своих аргументов. В противном случае обновленная информация о счёте была бы утрачена по окончании работы функций.

После того как создание счетов завершено, управление переходит блоку, отвечающему за вывод итоговых результатов. В этом блоке происходит считывание каждого счёта и вывод баланса каждого из них. В конце выводится общая сумма.

Функция init( ) создаёт новый счёт после приглашения ввести его номер и обнуляет создаваемый счёт.

Очень важно не забыть проинициализировать новый элемент. Нулевой баланс счёта лучше непредсказуемого значения ( например, отрицательного ).

Функция process( ) использует цикл для ввода каждой новой транзакции. Положительные значения считаются вкладом, а отрицательные — снятием со счёта. Для завершения работы со счётом достаточно ввести нуль.

Значение "0" используется программой в качестве флага. Это хотя и довольно распространённый, но не самый хороший метод. Я использовал его в этой программе только потому, что он помогает сэкономить довольно много места.

Существует множество способов улучшить программу BUDGET. Их поиск станет основой для последующего изучения языка С++. В конце книги вы увидите, как эта программа превратится в полнофункциональную объектно-ориентированную программу на С++.

Стиль программирования...347

Вы, наверное, заметили, что я пытался быть последовательным в отступах и в именовании переменных. Наша голова имеет ограниченную "производительность". И эту производительность следует направлять на создание работающих программ, а не на расшифровку уже написанных, которые невозможно прочитать из-за плохого оформления.

Важно, чтобы вы научились правильно именовать свои переменные, корректно располагать скобки и выполнять многое другое, что составляет стиль программирования. Разработав стиль программирования, придерживайтесь его, и он войдёт в привычку. Однажды вы заметите, что пишете программы быстрее, а их чтение не вызывает затруднений.

_________________

347 стр. Глава 31. Программа BUDGET

Это особенно важно, когда над проектом работают несколько программистов, поскольку правильный стиль помогает избежать проблем, которые обрушились на строителей Вавилонской башни. Кроме того, я бы настоятельно советовал тщательно разбираться в каждом сообщении об ошибке или предупреждении компилятора. Даже если считать, что предупреждение — это ещё не ошибка, то зачем дожидаться, пока оно превратится в ошибку? Тем более, что, если предупреждение такое простое, каким кажется, разобраться в нём и устранить его не составит труда. В большинстве случаев предупреждения вызываются ошибочным стилем программирования, который лучше исправить. Одни говорят, что недосмотры — это их личное дело, другие же считают, что это лишняя трата времени. Однако в любом случае обидно будет обнаружить ошибку, о которой компилятор предупреждал вас давным-давно.

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать


Стефан Дэвис читать все книги автора по порядку

Стефан Дэвис - все книги автора в одном месте читать по порядку полные версии на сайте онлайн библиотеки LibKing.




С++ для чайников . отзывы


Отзывы читателей о книге С++ для чайников ., автор: Стефан Дэвис. Читайте комментарии и мнения людей о произведении.


Понравилась книга? Поделитесь впечатлениями - оставьте Ваш отзыв или расскажите друзьям

Напишите свой комментарий
x