Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ответы программирование.doc
Скачиваний:
34
Добавлен:
20.04.2015
Размер:
147.46 Кб
Скачать

10. Файл, полный путь к файлу. В чем преимущества использования файлов для ввода и вывода?

Файл данных – это совокупность (последовательность) компонент, имеющая имя, расположенная на внешнем носителе. Файлы могут быть объединены в каталоги (директории, папки), также имеющие имя. Использование файлов данных позволяет хранить данные на внешнем носителе, обрабатывая при необходимости порциями (например, при больших объемах данных), многократно использовать один и тот же набор данных (например, при отладке), а также использовать результаты выполнения одной программы (формируя из них файл) как входные данные при выполнении другой программы и т.п.

Использование файлов данных позволяет хранить данные на внешнем носителе, обрабатывая при необходимости порциями (например, при больших объемах данных), многократно использовать один и тот же набор данных (например, при отладке), а также использовать результаты выполнения одной программы (формируя из них файл) как входные данные при выполнении другой программы и т.п.

=========================================================================================================

11. Что такое поток. Какие операции определены для потока. Открытие потока для чтения и его привязка к файлу.

Поток – это абстракция последовательности байтов, например файл или другое устройство, предоставляющее данные. Класс Stream (поток) и его производные классы предоставляют универсальное представление различных типов ввода и вывода, избавляя программиста от необходимости знания отдельных сведений операционной системы и базовых устройств.

Потоки включают три основные операции:

1) чтение из потока – перенос информации из потока в структуру данных, такую как массив байтов;

2) запись в поток – передача данных из структуры данных в поток;

3) потоки также могут поддерживать поиск.

Для ввода из файла (созданного заранее в текстовом редакторе) необходимо вначале открыть поток класса StreamReader, связав его с файлом. В приведенном ниже примере файл, из которого предполагается считывать данные, расположен по адресу С:\st\Koord.txt (это полный путь к файлу). Открытие потока и его привязка к файлу осуществляются с помощью конструктора (возможны и другие способы, которые здесь не рассматриваются):

StreamReader sr = new StreamReader(path);

Здесь sr – экземпляр класса StreamReader, а аргумент path передает конструктору строку, содержащую полный путь к файлу (в качестве аргумента можно использовать и константу, содержащую полный адрес файла). Далее строки из файла (в программе это поток sr) по очереди считываются в переменную line, из которой далее, как обычно, извлекаются отдельные значения.

После окончания работы с объявленным потоком, его следует закрыть методом Close

sr.Close();

12. Структура программы с#. Основные операторы: общий вид и назначение. Составной оператор (блок).

К основным операторам отнесем операторы, которые позволяют описать типовые структуры алгоритмов:

  • условный оператор if реализует разветвление, т.е. переход на тот или другой блок (последовательность операторов) кода;

  • оператор цикла for реализует циклы с известным количеством повторений;

  • операторы цикла while и do-while реализуют циклы по условию (while – с предусловием, do – с постусловием);

  • оператор цикла foreach используется для организации последовательной обработки элементов массива (см. гл. 3);

  • оператор выбора switch осуществляет выбор одного из нескольких фрагментов программы в зависимости от значения переменной или выражения;

  • оператор безусловного перехода goto позволяет перейти к указанной в этом операторе строке программы, используется редко, в исключительных случаях, когда другие средства приводят к усложнению программы.

Перечисленные операторы являются управляющими операторами, так как они управляют последовательностью исполнения строк программы.

К группе основных операторов отнесем также оператор присваивания, при помощи которого происходят изменения значений переменных программы.

Составной оператор (блок) – это несколько операторов, заключенных в фигурные скобки. Составные операторы (блоки) уже использовались в приведенных выше примерах программ на циклы. Внутри составного оператора можно объявлять переменные (локальные переменные блока составного оператора). Они будут доступны только внутри блока составного оператора.,

13. Считывание из файла в переменные программы. Открытие потока для вывода и привязка его к файлу, предназначенному для вывода результатов. Закрытие потока.

string path = "c:\\st\\Koord.txt";

StreamReader sr = new StreamReader(path);

int n = 0;

string line;

line = sr.ReadLine();

int r = int.Parse(line);

При выводе в файл необходимо выполнить аналогичные действия: открыть поток класса StreamWriter, задав имя потока и связав его с файлом, предназначенным для размещения выводимых результатов, вывести в этот поток (т.е. в указанный файл) необходимые результаты и закрыть поток оператором Close().

14)Ввод данных. Использование метода Parse. Метод разбора строка Split.

Ввод данных осуществляется следующим образом: из входного потока при помощи метода ReadLine (класса Сonsole) считывается строка символов. Ее значение присваивается какой-либо переменной типа string . Далее это символьное значение при помощи метода Parse, который есть у каждого встроенного типа значения, преобразуется в числовую форму представления соответствующего типа (для типа double: double.Parse, для тапа int: int.Parse). В случае ошибочного указания типа будет выдано сообщение об ошибке.

Метод Split (применается к экземпляру класса String, как и описанные выше методы) осуществляет разбор строки, т.е. позволяет выделить отдельные слова или другие сочетания символов, разделенные какими-либо разделителями, перечисляемыми в массиве символов типа char[], являющемся аргументом метода Split…….

line = sr.ReadLine();

int r = int.Parse(line);

Console.WriteLine("Радиус {0}", r);

while ((line = sr.ReadLine()) != null)

{

string[] koord = line.Split(' ');….

15)Что такое экранные формы и преимущества их использования. Элементы управления TextBox, Button, RichTextBox.

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

TextBox – это класс пространства имен: System.Windows.Forms.

(Текстовые поля форм Windows Forms используются для приема данных, вводимых пользователем, или для отображения текста. В текстовых полях можно выводить несколько строк текста, размещать текст в соответствии с размером элемента управления и применять основные элементы форматирования. Для вывода числовых данных в текстовое окно необходимо получить их строковое представление. После ввода числовых данных в текстовое окно необходимо использовать метод Parse для получения числового значения из строкового представления.)

Button – класс пространства имен System.Windows.Forms, представляет элемент управления Windows «Кнопка».

Элемент управления Windows Forms RichTextBox используется для отображения, ввода и изменения текста (если необходимо, с форматированием). Методы этого класса предоставляют возможности, схожие с возможностями текстовых редакторов, например, таких как Microsoft Word. По сравнению с классом TextBox он обладает более широкими возможностями. В частности, позволяет считывать данные из файла, а также выводить в файл.