
- •1. Понятие алгоритма. Свойства алгоритма. Способы записи алгоритмов. Блок-схема как графический способ записи алгоритма. Основные элементы блок-схемы.
- •4. Основные принципы ооп. Полиморфизм.
- •. Объектно-ориентированное программирование
- •5.Основные принципы ооп. Наследование. Управление доступом к членам классов (предка и потомка).
- •Объектно-ориентированное программирование
- •6.Понятие класса, объекта. Члены класса – поля и методы. Создание объекта. Область видимости объекта
- •7.Понятие метода в c#. Формальные и фактические параметры. Способы передачи параметров
- •10.Булевские переменные в c#. Возможные значения. Операции над булевскими переменными. Использование логических выражений.
- •11.Строковые и символьные переменные в c#. Возможные значения и операции со строковыми и символьными переменными.
- •Цикл while
- •17. Одномерные массивы в c#. Способы объявления и использования. Доступ к элементам массива.
- •19. Понятие потока. Система ввода-вывода в c#.
- •20. Понятие файла. Файлы последовательного доступа. Режимы работы с файлом последовательного доступа.
- •2 Сорта доступа: последовательный доступ и
10.Булевские переменные в c#. Возможные значения. Операции над булевскими переменными. Использование логических выражений.
. Для Булева типа данных, bool, в C# определены
два значения true и false (истина и ложь).
Следовательно, переменная типа bool или
логическое выражение будут иметь одно из этих
двух значений. Более того , не существует способа
преобразования значений типа bool в целочисленные
значения. Например, значение 1 не преобразуется в
значение true, а значение 0 - в значение false.
Особенности использования булевой переменной.
Во-первых, при выводе значения типа bool с помощью
метода WrlteLine ( ) на экран выводится слово true
или false. Во-вторых, используя переменную типа bool
можно управлять оператором if. Если условием
выполнения оператора if является истинность
переменной то нет необходимости записывать
оператора if так: if (b - true) достаточно более короткое
выражение if (b). В-третьих, результатом выполнения
оператора сравнения такого как <, является значение
типа bool. Вот почему выражение 10>9 выводи на
экран значение true. Далее, дополнительная пара скобок,
в которые заключено выражение 10>9 , является
необходимой, поскольку оператор + имеет больший
приоритет, чем оператор > .
11.Строковые и символьные переменные в c#. Возможные значения и операции со строковыми и символьными переменными.
Строковые переменные.
Объекты класса String объявляются как все прочие
объекты простых типов - с явной или отложенной
инициализацией, с явным или неявным вызовом
конструктора класса. Чаще всего, при объявлении
строковой переменной конструктор явно
не вызывается, а инициализация задается
строковой константой. Но у класса String
достаточно много конструкторов. Они позволяют
сконструировать строку из:
- символа, повторенного заданное число раз;
- массива символов char [ ];
- части массива символов.
Операции над строками:
- присваивание (=);
- две операции проверки эквивалентности (==) и (!=);
- конкатенация или сцепление строк (+);
- взятие индекса ([ ]).
Символьные переменные.
Значением символьной переменной является один
символ из фиксированного набора. Такой набор
обычно включает буквы, цифры, знаки препинания,
знаки математических операций и различные
специальные символы (процент, амперсенд,
звездочка, косая черта и др.). Подчеркнем, что,
в отличие от строковой переменной, символьная
всегда содержит ровно один символ.
(Строковая содержит строку из нескольких символов.)
Конечно, в памяти компьютера никаких символов
не содержится. Символы представляются их
целочисленными кодами в некоторой фиксированной
кодировке. Кодировка определяется тремя параметрами:
- диапазоном значений кодов
- множеством изображаемых символов
- отображением множества кодов на множество символов.
12.Оператор присваивания. Явное и неявное преобразование типов данных при присваивании в C#.
Оператор присваивания указывается как
одинарный знак равенства (-). В C# он работает
практически также, как в любом другом языке
программирования. Оператор присваивания имеет
следующий синтаксис:
var - expression;
Тип переменной должен быть совместим
с типом выражения.
Оператор присваивания имеет одно интересное
свойство: позволяет создавать «цепочку присваиваний».
Пример:
int x, y, z;
x - y - z - 100;
(переменным x, y, z присваивается значение 100)
Такая последовательность переменных и оператор
допускается, поскольку оператор = присваивает
переменной, находящийся слева него, значение
выражения, находящегося справа. Следовательно,
выражение z =100 будет имеет значение 100, которое
присваивается переменной y, а затем - переменной x.
Используя «цепочку присваиваний», можно одним
значением легко инициализировать группу переменных.
В C# преобразования делятся на неявные и явные.
К неявным относятся те преобразования, результат
выполнения которых всегда успешен и не приводит к
потере точности данных. Неявные преобразования
выполняются автоматически. Для арифметических
данных это означает, что в неявных преобразованиях
диапазон типа назначения содержит в себе диапазон
исходного типа. Например, преобразование из типа
byte в тип int относится к неявным, поскольку
диапазон типа byte является подмножеством
диапазона int. Это преобразование всегда успешно и
не может приводить к потере точности. Заметьте,
преобразования из целочисленных типов к типам с
плавающей точкой относятся к неявным. Хотя здесь
и может происходить некоторое искажение значения,
но точность представления значения сохраняется,
например, при преобразовании из long в double порядок
значения остается неизменным. К явным относятся
разрешенные преобразования, успех выполнения
которых не гарантируется или может приводить к потере
точности. Такие потенциально опасные преобразования
должны быть явно заданы программистом.
Преобразование из типа int в тип byte относится к явным,
поскольку оно небезопасно и может приводить к потере
значащих цифр. Заметьте, не для всех типов существуют
явные преобразования.
13.Арифметические выражения в C#. Целочисленные выражения и выражения с плавающей точкой. Порядок выполнения операций и их результаты.
14.Условные алгоритмы. Условный оператор if в C#. Примеры использования. Условный оператор switch в C#. Примеры использования.
Условный переход можно реализовать в
программе с помощью ключевых слов языка:
if, else или switch. Такой переход возможен только при
условии, если он является истинным.
if...else оператор
if...else — это оператор ветвления, работа которого
определяется условием. Условие оператора
анализируется инструкцией if. Если условие верно
(true), то выполняется блок инструкций программы,
описанных после условия.
if ( expression ) statement 1
[else statement2 ]
Такой вид этого оператора вы можете найти в
документации по С#.
Он показывает, что работа условного оператора
определяется булевым выражением (выражение,
которое имеет значение true или false) в круглых скобках.
Если значение этого выражения истинно, то выполняется
блок инструкций statementl. Если же выражение ложно,
произойдет выполнение блока инструкций statement2.
Необходимо заметить, что вторая часть оператора
(else statement^) может не указываться. Если инструкций
в блоках statementl или statement2 больше одной, то блок
обязательно нужно брать в фигурные скобки.
using System;
class Conditional
I
static void Mainf )
{
int valueOne = 20;
//устанавливаем второе значение больше первого
int valueTwo = 10;
if ( valueOne > valueTwo )
Console.WriteLine f
"valueOne: {0} больше чем valueTwo: fl}",
valueOne, valueTwo);
else
Console.WriteLine(
"valueTwo: {0} больше или равно valueOne: {1}",
valueTwo, valueOne);
//устанавливаем первое значение больше второго
valueTwo = 30;
if ( valueOne > valueTwo )
{
Console.WriteLine(
"valueOne: {0} больше чем valueTwo: (1)",
valueOne, valueTwo);
i
//делаем значения одинаковыми
valueOne = valueTwo;
iffvalueOne =" valueTwo)
{
Console.WriteLine (
"valueOne и valueTwo равны: {0}=={1}",
valueOne, vaiueTwo);
}
}
}
15. Циклические алгоритмы. Оператор цикла for в C#. Примеры использования.
Если еще раз внимательно посмотреть на примеры
(while, do...while, goto), можно заметить постоянно
повторяющиеся операции: первоначальная
инициализация переменной i, ее наращивание на 1
внутри цикла, проверка переменной i на
выполнение условия (i < 10). Цикл for позволяет
вам объединить все операции в одной инструкции.
for ( [инициализация ]; [ выражение]; [ наращивание] )
{
инструкция
}
Выполним тот же пример, но уже с использованием
цикла for:
using System;
public class ForCycle
{
public static int Main()
{
for (int i = 0; i < 10; i++)
{
Console.WriteLine("i: {0}", i);
}
return 0;
}
}
Результатом выполнения такого цикла будет вывод
на экран информации вида:
0
1
2
…
9
Принцип работы такой инструкции очень прост:
1. Происходит инициализация переменной i.
2. Выполняется проверка соответствия условию.
Если условие истинно, то происходит выполнение
блока вложенных инструкций; если условие
оказалось ложным, то цикл прекращается и
выполняется программа за фигурными скобками.
3. Переменная i увеличивается на 1.
Наращивание переменной внутри цикла происходит
на такое число единиц, на которое вы сами зададите.
Операция i++ означает «увеличить значение
переменной на 1». Если вы хотите использовать
другой шаг изменения i, то смело можете написать
так i += 2. В этом случае значение переменной i
будет изменяться на 2 единицы, и на экране
вы увидите:
0
2
4
6
8
16. Циклические алгоритмы. Оператор цикла while (do/while) в C#. Примеры использования.