Книжная полка Сохранить
Размер шрифта:
А
А
А
|  Шрифт:
Arial
Times
|  Интервал:
Стандартный
Средний
Большой
|  Цвет сайта:
Ц
Ц
Ц
Ц
Ц

Прикладное программирование с использованием языка С-Шарп

Покупка
Артикул: 799088.01.99
Доступ онлайн
350 ₽
В корзину
Данное пособие предназначено для студентов-бакалавров, уже прошедших ранее курс изучения языка программирования С++ и приступающих теперь к изучению языка нового программирования С-Шарп (C#). Основное внимание уделено особенностям практического освоения нового языка программирования. Данное пособие будет полезно для студентов средних курсов, обучающихся разработке прикладных программных комплексов.
Бельков, С. А. Прикладное программирование с использованием языка С-Шарп : учебно-методическое пособие / С. А. Бельков. - Екатеринбург : Изд-во Уральского ун-та, 2017. - 120 с. - ISBN 978-5-7996-2035-6. - Текст : электронный. - URL: https://znanium.com/catalog/product/1936343 (дата обращения: 30.04.2024). – Режим доступа: по подписке.
Фрагмент текстового слоя документа размещен для индексирующих роботов. Для полноценной работы с документом, пожалуйста, перейдите в ридер.
Министерство образования и науки Российской Федерации
Уральский федеральный университет
имени первого Президента России Б. Н. Ельцина

С. А. Бельков

ПРИКЛАДНОЕ 
ПРОГРАММИРОВАНИЕ
С ИСПОЛЬЗОВАНИЕМ 
ЯЗЫКА C‑ШАРП

Рекомендовано методическим советом
Уральского федерального университета
в качестве учебно-методического пособия
для студентов вуза, обучающихся по направлению 
09.03.04 — Программная инженерия

Екатеринбург
Издательство Уральского университета
2017

УДК 004.432С-Шарп(075.8)
ББК 32.973.22я73
          Б44
Рецензенты:
кафедра прикладной информатики Уральского государственного 
архитектурно-художественного университета (завкафедрой доц., 
канд. техн. наук Г. Б. Захарова);
президент Свердловской региональной общественной организа-
ции «Центр самореализации человека будущего» канд. хим. наук 
А. Г. Аксентьев

Научный редактор — доц., канд. техн. наук В. Г. Томашевич

 
Бельков, С. А.
Б44    Прикладное программирование с использованием языка 
С-Шарп : учебно-методическое пособие / С. А. Бельков. — Екате-
ринбург: Изд-во Урал. ун-та, 2017. — 120 с.

ISBN 978-5-7996-2035-6

Данное пособие предназначено для студентов-бакалавров, уже прошед-
ших ранее курс изучения языка программирования С++ и приступающих 
теперь к изучению языка нового программирования С-Шарп (C#). Основ-
ное внимание уделено особенностям практического освоения нового язы-
ка программирования.
Данное пособие будет полезно для студентов средних курсов, обучаю-
щихся разработке прикладных программных комплексов.

Библиогр.: 6 назв. Рис. 10.

УДК 004.432С-Шарп(075.8)
ББК 32.973.22я73

ISBN 978-5-7996-2035-6 
© Уральский федеральный
 
     университет, 2017

ВВЕДЕНИЕ
Д
ля того чтобы войти в среду программирования, надо 
найти в системе Windows кнопку Пуск — обычно она 
в левом нижнем углу экрана. Нажав ее при помощи мышки, по-
лучаем меню, в котором выбираем строку Программы и да-
лее — Visual Studio.
Два раза щелкаем мышкой на строке Visual Studio, и запу-
скается программа Visual Studio, в окошке которой надо выбрать 
язык C#, а в подменю языка — вид проекта Console Application 
или Windows Application.
После ее запуска появляется окно, в котором надо выбрать 
New-Project. Появляется окно, в нижних строчках которого 
необходимо указать имя своего проекта и папки, в которой он 
будет храниться, и нажать кнопку ОК.
Появляется шаблон текста программы. В нем необходимо 
найти блок, в заголовке которого присутствует слово Main, обозначающее 
заголовок главной программы. Операторы собственной 
программы записываются внутри этого блока.

1. БАЗОВЫЕ КОНСтРуКцИИ ЯЗЫКА C#

1.1. Вид программы на языке C#
Т
ипичная программа на языке С# описывается некоторым 
объектным классом, в котором соответственно 
есть описания его свойств (переменных и констант) и методов. 
В этом классе имеется главный метод с именем main, в котором 
будут записаны основные операторы программы. Например, 
для консольного приложения имеем:
static void main ()//заголовок начала программы
{
<объявления переменных>
<блок операторов>//каждый оператор заканчивается знаком;
}//окончание программы

Каждое объявление и каждый оператор программы языка 
Си заканчиваются знаком «;».
После двух наклонных черт (//) указываются комментарии 
к программе.
Комментарий к программе указывается также внутри конструкции/* … */.

Рассмотрим традиционный пример приветствия:
Console.WriteLine (“Привет”);
Console.ReadLine ();//остановка экрана до нажатия клавиши

Здесь функция Console.WriteLine служит для вывода какой-
либо строки, а функция Console.ReadLine ждет ввода каких-
либо символьных данных с клавиатуры. Обе функции исполь-
зуются в консольном режиме.

1.2. Простые типы данных

1.2. Простые типы данных

Для объявления числовых переменных используются следу-
ющие простые типы данных [1]:
short — короткое целое (занимает 1 байт, т. е. 8 бит, и имеет 
диапазон значений от 127 до 127);
int — целое (занимает 2 байта);
long — длинное целое (4 байта);
float — число с плавающей точкой (4 байта);
double — число с плавающей точкой двойной точности 
(8 байт).
Переменные символьного типа принимают значение, соот-
ветствующее одной литере (букве, цифре или другому симво-
лу). В программе эти переменные объявляются так:
 
сhar имя_переменной;
пусть в программе используется такое описание:
 
char p, q, t;
Присвоение значений таким переменным можно сделать 
следующим образом:
 
p=’A’; q=’*’; t=’8’.
Для указания на символ его помещают в апострофы, напри-
мер 8 — это целая константа, а ’8’ — это символ числа 8 с кодом 
представления 64 (код символа ’0’, который равен 48, плюс 8).
Для объявления символьных переменных используется сле-
дующий простой тип:
 
char — символ (1 байт).
Указание перед целочисленным типом данных ключевого 
слова unsigned (положительное число без знака) увеличивает 
положительный диапазон чисел по сравнению с соответствую-
щим типом данных со знаком, так как для представления числа 
используется теперь еще один бит, который для чисел со зна-
ком хранит информацию об их знаке. Например, тип unsigned 

1. Базовые конструкции языка C#

short имеет диапазон от 0 от 255 (вместо [–127, +127] для short), 
т. е. расширяет положительный диапазон short.
При объявлении функций (подпрограмм) используется так-
же тип void (пустой), обозначающий отсутствие возвращаемых 
функцией значений.

1.3. Оператор присваивания

Структура оператора присваивания такова:
 
имя_переменной = выражение;
Здесь знак «=» означает операцию присваивания. Имя пе-
ременной и конкретное выражение определяет пользователь 
в соответствии с синтаксисом языка. В результате выполнения 
операции присваивания переменной в левой части присваива-
ется значение выражения в правой части оператора присваи-
вания. Например,
 
float a;
 
a = sqrt (5*3);
Отметим также, что операцию присваивания следует отли-
чать от логической операции сравнения на равенство, которая 
обозначается «==».

1.4. Понятие арифметического выражения

Выражение содержит один или несколько операндов, кото-
рые связаны между собой знаками операций и сгруппированы 
в круглые скобки.
Операндом может быть имя переменной, ссылка на функ-
цию (например, Math.Sin (Math.PI) в тригонометрическом 
выражении), собственная константа (например, с именем pi).

1.5. Ввод данных с клавиатуры и вывод на экран

При отсутствии скобок выражения вычисляются слева на-
право. Сначала выполняются операции с более высоким при-
оритетом, затем — с более низким. Арифметические операции 
одного уровня старшинства группируются в порядке убывания 
приоритета групп следующим образом:
1) * — умножение;
 
/ — деление;
 
% — целый остаток от деления;
2) + — сложение;
 
- — вычитание.
В С# используются следующие арифметические функции 
(содержатся в библиотеке Math):
Math.Abs (выражение) — модуль выражения;
Math.Pow (выражение, степень) — возведение в степень;
Math.Sqrt (выражение) — квадратный корень;
Math.Exp (выражение) — экспонента;
Math.Sin (выражение) — синус угла в радианах;
Math.Cos (выражение) — косинус угла в радианах;
Math.Tan (выражение) — тангенс угла в радианах;
Math.Atan (выражение) — арктангенс угла в радианах.
Функция Math.Abs работает с целыми числами, для веще-
ственных чисел используется функция Math.Fabs.

1.5. Ввод данных с клавиатуры и вывод на экран

Ввод данных (в консольном режиме) осуществляется по-
средством оператора Console.ReadLine, результатом которо-
го может быть строка.
Вывод данных (в консольном режиме) осуществляется опе-
ратором Console.WriteLine, на входе которого может быть 
строка.

1. Базовые конструкции языка C#

Пример ввода с клавиатуры целого числа:
int i; string s;
Console.WriteLine (“Введите целое число: ”);
s=Console.ReadLine ();//ввод строки символов с клавиатуры
i=Convert.ToInt16 (s);//преобразование строки в целое число
Console.WriteLine (“i=”, i);//распечатка переменной
Console.ReadLine ();

Пример ввода с клавиатуры вещественного числа (цифры 
с точкой):
double f; string s;
Console.WriteLine (“Введите вещественное число: ”);
s=Console.ReadLine ();
f=Convert.ToDouble (s);
Console.WriteLine (“f=”, f);
Console.ReadLine ();
Здесь функция ReadLine рассматривает вводимые симво-
лы как строку, поэтому их необходимо конвертировать в соот-
ветствующий тип. Для этого используется функция Convert.

1.6. Форматный вывод

Рассмотрим пример форматного вывода:
Console.Write (”{0}”, item);
Console.Write (”{0} {1}”, item1, item2);

Форматные конструкции в фигурных скобках {0} или {1} обо-
значают номер параметра в списке печатаемых переменных, 
разделяемых запятыми. Для форматного вывода вещественно-
го числа можно написать следующее:
Console.Write (”{0: ##.###}”, f);
где 0 — номер переменной из списка печатаемых аргументов, 

1.7. Особенности использования данных  целого и вещественного типа

а «##.###» задает формат распечатки вещественного числа (две 
позиции для целых долей числа и три позиции для дробных чи-
сел после запятой).

1.7. Особенности использования данных  
целого и вещественного типа

Все переменные целого и вещественного типов должны быть 
объявлены в разделе объявления переменных следующим об-
разом:
int список_имен_целочисленных_переменных;
float список_имен_вещественных переменных;
Например:
int k;
float a, b;

Число типа int занимает в памяти компьютера два байта, 
число типа float — четыре байта. Если для представления чис-
ла требуется больше памяти, то используются типы long (длин-
ное целое) и double (вещественное число с двойной точно-
стью), для которого количество байт для представления числа 
в два раза больше. Например, если для представления целого 
числа хватает двух байтов (число в диапазоне [-32768, +32767]), 
можно использовать тип int (целое). Когда для работы про-
граммы достаточно положительного целого числа, перед ис-
пользуемым целочисленным типом данных указывается ключ 
unsigned, например unsigned int (целое без знака, т. е. число 
в диапазоне от 0 до 65535) и аналогично — unsigned short int 
или unsigned long. Диапазоны типов данных имеются в спра-
вочниках по языку или в подсказках (пункт help) используе-
мой для него среды программирования — на начальных этапах 
знакомства с языком они не существенны.

1. Базовые конструкции языка C#

1.8. Правила согласования типов

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

1. Если операция выполняется над данными двух разных ти-
пов, обе величины приводятся к «высшему» из двух типов. Этот 
процесс называется «повышением» типа.

2. Последовательность имен типов, упорядоченных от «высшего» 
к «низшему» выглядит так:
double float long int short char
Применение ключевого слова unsigned повышает ранг соответствующего 
типа данных со знаком.

3. В операторе присваивания конечный результат вычисления 
выражения в правой части приводится к типу переменной, 
которой должно быть присвоено это значение. Данный процесс 
может привести и к «повышению», и к «понижению» типа.

4. Для сохранения точности вычислений при арифметических 
операциях все величины типа float преобразуются в данные 
типа double, а типы char и short преобразуются к типу int, 
что существенно уменьшает ошибку округления.
Если результат выражения (переменная в левой части оператора 
присваивания) должен быть вещественным, а в правой части 
оператора присваивания использованы целочисленные переменные, 
то иногда (например, при использовании операции 
деления) в результате может пропасть дробная часть числа. Поэтому 
для таких случаев в правой части выражения рекомендуется 
выполнять операцию преобразования (приведения) типа
float a; int k; int n;
a = (float)k/(float)n;

Доступ онлайн
350 ₽
В корзину