|
Главная » информатика
Организация циклов
Цикл — это участок кода, в котором операторы выполняются по несколько раз. Такой способ в ряде случаев бывает чрезвычайно удобным, поскольку позволяет повторять необходимые действия столько раз, сколько требуется (тысячи и даже миллионы), без необходимости выписывать соответствующий код такое же количе- ство раз. Управление ппрядком выппя„о„, „ 65 . ^ ^ ^ r ^ r s ^ грамму- выч~ю Дя из предположения, что проТенты 1 И С Л " Д е с я т И л е™е™ № исхо- снимаются и не добавляются насчет: Н а Ч И С Л Я Ю Т С Я е Ж е Г О Д Н 0 и ™™™ суммы не double balance = Ю00; balance *. interestRate; balance *- interestRate; balance *= interestRate; balance *= interestRate; balance *= interestRate; balance *= interestRate; balance *= interestRate; к о д о „ ме»ее П М е з н ы ) , Цикл do Д о с т а т о ч н о если и ^ имеет следующую структуру: Л р 0 М [ 1 я е т с я »«О Т°Р~ ™
...
Читать дальше »
|
Оператор switch
Оператор switch очень похож на оператор if в том смысле, что он также обес- печивает условное выполнение кода в зависимости от результата выполненной проверки. Однако оператор switch позволяет производить проверку для многих значений переменной за один проход вместо того, чтобы проверять всего лишь одно условие. Эти проверки ограничены отдельными значениями и не допускают конструкций типа "больше, чем X", поэтому их использование имеет некоторые отличия; однако такой способ является очень эффективным. Принципиальная структура оператора switch имеет следующий вид: switch {<контрольнаяПеременная>) ( case <значение1>: <код, который должен выполняться в том случае, если <контрольнаяПеременная> == <значение1> > \ break; \ ' * ; • • • • ••• • • case <значение2>: <код, который должен выполняться в том случае, если <контрольнаяПеременная>
...
Читать дальше »
|
Оператор goto
С# позволяет помечать строки кода, а затем непосредственно переходить к их выполнению с помощью оператора goto. У этого оператора имеются свои преиму- щества и недостатки. Основное преимущество заключается в том, что это очень простой способ управлять очередностью выполнения кодов. Однако чрезмерное его использование может привести к трудному для понимания "лоскутному" коду, что является его главным недостатком. Для лучшего понимания давайте рассмотрим, каким образом может использо- ваться этот оператор. Оператор goto имеет вид: goto <имяМетки>; Метки задаются таким образом: <имяМетки>: В качестве примера разберем следующий код: int my Integer = 5; goto myLabel; myInteger +=10; myLabel: Console.WriteLine("mylnteger = {0}•, myinteger); Его выполнение осуществляется следующим образом: • Переменная myinteger объявляется как имеющая тип int и ей присваивается значен
...
Читать дальше »
|
Логические операторы присваивания
Последние операторы, которые нам осталось обсудить в этом разделе,— это комбинация рассмотренных выше операторов с оператором присваивания. Они во многом сходны с математическими операторами присваивания, рассматривавши- мися в предыдущей главе ( + = , *= и т.д.). Логические операторы приведены в следующей таблице: Оператор Тип Пример выражения Результат Бинарный Бинарный Бинарный varl &= var2; varl 1= var2; varl A= var2; Переменной varl присваивается значение, являющееся результатом выполнения операции varl & var2 Переменной varl присваивается значение, являющееся результатом выполнения операции varl I var2 Переменной varl присваивается значение, являющееся результатом выполнения операции varl л var2 Эти операторы используются как с логическими, так и с численными значениями, точно так же, как и операторы &, | и ". Обратите внимание
...
Читать дальше »
|
Операторы работы с битами
По прочтении предыдущего раздела может возникнуть вопрос, для чего вообще существуют операторы & и |. Ответ заключается в том, что эти операторы могут использоваться для выполнения операций над численными значениями. Фактиче- ски они имеют дело с хранящейся в переменной последовательностью битов, а не со значением переменной как таковым. Давайте шаг за шагом рассмотрим работу этих операторов, начав с оператора &. Он действует сле- дующим образом: каждый бит первого операнда сравнивается с находящимся в такой же позиции битом второго операнда, а бит, записывающийся в аналогичной позиции результата, определяется следующим образом (см. табл. слева). Аналогичные действия выпол- няются и в случае применения оператора |, только результат вычисляется несколько иначе (см. табл. справа). В качестве примера рассмот- рим операцию, выполняемую следующим кодом: int r
...
Читать дальше »
|
Управление
порядком выполнения У всех программ на С#, которые рассматривались до сих пор, имеется одна об- щая черта. Во всех случаях выполнение кода происходило последовательно сверху вниз, строка за строкой, без каких-либо пропусков. Однако если бы приложения всегда выполнялись таким образом, то наши возможности были бы сильно огра- ничены. В настоящей главе мы изучим два способа управления порядком выполнения программ, т. е. последовательностью выполняемых в программе на С# строк. Вот эти способы: • Ветвление — выполнение кода обусловлено результатами предшествующих вычислений, например: "выполнить этот код только в том случае, если значение переменной myval меньше 10". • Использование циклов — повторяющееся выполнение одних и тех же операторов (определенное количество раз или до тех пор, пока не выполнится контрольное условие). Оба способа предполагают использование булевой логики. В предыдущей гла
...
Читать дальше »
|
Операторы присваивания
До настоящего момента мы пользовались простым оператором присваивания = , и кому-то может показаться удивительным, что существуют какие-либо другие операторы присваивания. Однако они действительно существуют и, что кажется еще более удивительным, оказываются весьма полезными! Все другие операторы присваивания работают схожим с оператором = обра- зом. Так же, как и у оператора =, результат их выполнения — присваивание рас- положенной слева переменной значения, вычисленного посредством операторов и операндов, расположенных в правой части. Представим эти операторы и объяснение их работы в табличной форме: Оператор Значение Пример использования Результат в выражении Бинарное += Бинарное -= Бинарное *= Бинарное /= Бинарное %= Бинарное varl = var2; varl += var2; varl -= var2; varl *= var2; varl /•« var2; varl %= var2; Переменной varl присваивается значение пе
...
Читать дальше »
|
Выражения
Теперь, когда вы познакомились с объявлением и инициализацией переменных, настало время узнать, какие действия можно выполнять над ними. Для этих целей язык С# имеет целый набор операторов, в частности, оператор присваивания =, который мы уже использовали. Записывая операторы в определенном сочетании с переменными и литеральными значениями (при использовании совместно с опе- раторами они называются операндами), мы можем создавать выражения, которые являются основными строительными блоками компьютерных программ. Существуют различные операторы, начиная от самых простых и до чрезвычайно сложных, которые вряд ли вам встретятся где-либо, кроме как в математических приложениях. Простые операторы включают в себя все основные математические действия (например, оператор + производит сложение двух операндов), а сложные операторы предназначены для выполнения манипуляций над двоичным представле- нием содержимого
...
Читать дальше »
|
Объявление переменных и присваивание им значений Для быстрого повторения давайте вспомним, что мы объявляли переменные, просто указывая их тип и имя, например: int age; Далее мы присваивали переменным значения с помощью оператора присваивания: a g e ^ 2 5 ; Запомните, что, перед тем как начать использовать переменную, вы должны ее инициализировать. В качестве такой инициализации может использоваться приведенное выше присваивание. Существуют еще два способа, которыми мы можем воспользоваться и которые, скорее всего, встретятся вам в кодах на С#. Первый из них — это возможность одновременного объявления сразу нескольких переменных одного типа, чего можно добиться перечислением их имен через запятую после указания типа: int xSize, ySize; В данном случае обе переменные — xsize и ySize — описаны как целые числа. Второй способ, который вам наверняка встретится, заключается в одновремен- ном объявлении переменной
...
Читать дальше »
|
Литеральные значения В предыдущем примере мы столкнулись с двумя литеральными значениями: це- лым числом и строкой. Переменные других типов также обладают определенными литеральными значениями, которые сведены в приведенную ниже таблицу. Многие из них предполагают использование суффиксов, т. е. добавление в конец лите- рального значения некоторой последовательности символов, которая позволяет определить необходимый тип. Некоторые литеральные значения могут иметь несколько типов, которые определяются в время работы компилятора по кон- тексту: Тип(ы) bool int, uint, long, ulong uint, ulong long, ulong ulong float double decimal char string Значение Логическое Целое Целое Целое Целое Вещественное Вещественное Вещественное Символьное Строковое Суффикс Отсутствует Отсутствует и или и 1 ИЛИ L u l , uL, U l , UL, l u , 1U, LU ИЛИ LU f ИЛИ F Отсутствует, d или D m или м
...
Читать дальше »
|
|
|
Календарь
« Апрель 2024 » | Пн | Вт | Ср | Чт | Пт | Сб | Вс | 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 |
Статистика
Онлайн всего: 1 Гостей: 1 Пользователей: 0
|