Добавил:
2200 7008 9480 6099 TKFF БЛАГОДАРНОСТЬ МОЖНО ТУТ ОСТАВИТЬ Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ДИПЛОМ 2025 / 4 курса_МТУСИ / 1 КУРС / Информатика / С# для чайников - Мюллер.pdf
Скачиваний:
0
Добавлен:
04.06.2025
Размер:
53.3 Mб
Скачать

Толку от этой программы, помимо иллюстрации некоторых фундаменталь­ ных моментов программирования С#, очень мало. Она просто возвращает вам то, что вы ввели. Можно представить себе и более сложный пример програм­ мы, в которой выполняются некоторые вычисления над введенными данны­ ми и генерируется какой-то более сложный вывод на экран (иначе для чего проводить вычисления?..), но и эта программа будет очень ограничена в своей функциональности.

Одним из ключевых элементов любого компьютерного процессора является его возможность принимать решения. Под выражением "принимать решения" подразумевается, что процессор может пустить поток выполнения команд по тому или и ному пути в зависимости от того, истинно или ложно некоторое условие. Любой язык программ ирования должен обеспечивать такую возмож­ ность управления потоком выполнения.

Три фундаментальных вида "lчЕN Пs, l,u, (tlow control) представ­ ляют собой инструкцию i f, цикл и безусловный переход (один из циклов, foreach, будет рассмотрен в главе 6, "Глава для коллекционеров").

Ветвление с использованием if и switch

Основой принятия решения в С# является инструкция if:

if Н ­уоГвЫ К

G G

;

GG

G G

Непосредственно за оператором if в круглых скобках содержится некото­ рое "f ,N NxsчЕ s ,-sтипа bool (см. главу 2, "Работа с переменными"), по­ сле чего следует блок кода, заключенный в фигурные скобки. Если условное выражение истинно (имеет значен ие true), программа выполняет код в фи­ гурных скобках. Если нет - этот код программой опускается. (Если програм­ ма выполняет код в фигурных скобках, то его выполнение завершается после закрывающей фигурной скобки и продолжается выполнение кода после нее.)

Работу оператора if проще понять, рассмотрев конкретный пример:

G G

.

G F

 

F

т

) , )

lЦ. ЧАСТЬ 1 Основы программирования на С#

=

Вэтом фрагменте исходного текста проверяется, содержит ли переменная

аотрицательное значение, и, если это так, переменной а присваивается значе­ ние Инструкn ция i f гласит: "если а меньше нуля, присвоить переменной а значение О".

Если в фигурные скобки заключена только одна инструкция, то их можно не использовать. С# рассматривает код i f и ?яE нSlнъn

Si ,рзъl гъ тnинструкция ; как если бы оно было записано как подРОБностиТЕХНИЧЕСКИЕ if s ?яE нSlнъn Siрзъ"гъ rn{ инструкция; } , т.е. в приведенном выше

фрагменте можно было бы написать i f ( а< О ) а=О ; . Но для большей удобочитаемости лучше всегда использовать фигурные скобки.

Инструкция if

Рассмотрим небольшую программу, вычисляющую проценты. Пользователь вводит вклад и проценты, и программа подсчитывает сумму, получаемую по итогам года (это не слишком сложная программа). Вот как подобные вычисле­ ния выглядят на С#:

цц

у

,х, ш;,W

,,(Aгшr ;

Aим ,х,

=A,

=

В первом уравнении величина вклада principal умножается на величину процентной ставки interest (деление на 100 связано с тем, что пользователь вводит величину ставки в процентах). Получившаяся величина увеличения вклада сохраняется в переменной interestPaid, а затем суммируется с основ­ ным вкладом и сохраняется в переменной total.

Программа должна учитывать, что данные вводит всего лишь человек, ко­ торому свойственно ошибаться. Например, ошибкой должны считаться отри­ цательные величины вклада или процентов (конечно, в банке хотели бы, чтобы это было не так . . . ). В приведенной далее программе Calculateinterest вы­ полняются соответствующие проверки:

цц сшr)) цц цц цц

1:к 6

rш,Fк

,х,

 

.

,

 

,гW

.

 

 

 

 

нг йчйц мц Управление потоком выполнения

U5

Программа eаrпт. асо,е сомолсначинает свою работу с предложения пользователю ввести величину вклада. Это предложение выводится с помощью функции смнсоtнеоч я hкоторая вы водит значение типа

СОВЕТ лвмнео на консоль. Всегда точно объясняйте пользователю, чего вы от него хотите. Если возможно, укажите также требуемый формат вводи­ мых данных. Обычно на неинформативные приглашения наподобие одного символа > пользователи отвечают совершенно некорректно.

В программе для считывания всего пользовательского ввода до нажатия кла­ виши <Enter> в переменную типа лсмнео используется функция моаромеоч я ­ Поскольку программа работает с величиной вклада как имеющей тип роиныат, введенную строку следует преобразовать в переменную типа ропмыаr, что и делает функция eиен омсждилопныаr ч n AПолученный результат сохраняется в переменной яммепмяаrх

Команды gоарt(ео ч я сомро, tмео ч яи ,иsопмыа­ ч Sслужат примерам и eеы.e.em тий.ф.eлm Вызов метода делегирует некоторую работу дру­

гой части программы, именуемой методом. Подробно вызов метода ЗАПОМНИ! будет описан в части 2, "Объектно-ориентированное программирова­

ние на С#", но приведенные здесь примеры очень просты и понятны. Если же вам что-то не ясно в вызовах функций, потерпите немного: ниже все будет детал ьно объяснено.

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

Вот пример вывода программы при корректном пользовательском вводе :

yъn/Эг

x nъг

- Qfi Q . и

лз

Q l t v -i

 

- i t d v . i

л

v y y

А так выглядит вы вод программы при ошибочном вводе отрицательной ве­ личины процентной ставки :

vъn/Эг

x р.S y m

гdпрп , з тине nкавк тоЬоеоя еето nакавл

//ы

Соседние файлы в папке Информатика