Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Турчин Д.Е. Лабораторный практикум по Информ. т...doc
Скачиваний:
1
Добавлен:
01.03.2025
Размер:
5.34 Mб
Скачать

10.2.2. Генерация случайных чисел в Visual Basic .Net (класс Random). Простейший вывод данных в текстовый файл (класс StreamWriter). Компонент Timer

При решении математических задач нередко возникает необходимость генерировать случайные числа. Для этой цели в языке VB .NET существует специальный класс Random, описанный в пространстве имен System.

Для генерации случайных чисел используются два основных метода класса Random: Next и NextDouble.

Метод Next(Xmin, Xmax) применяется для того, чтобы генерировать случайные целые числа из диапазона [Xmin, Xmax] (при этом должно быть соблюдено условие Xmax>Xmin). Если установлен только один параметр, то есть Next(X), то числа генерируются в диапазоне от 0 до заданного значения X (при этом X>0). Если параметр неуказан, то генерируются неотрицательные случайные числа из допустимого диапазона значений типа Integer.

Метод NextDouble служит для генерации случайных чисел типа Double из диапазона [0; 1].

Для того чтобы воспользоваться методами класса Random, необходимо вначале создать новый экземпляр данного класса, например:

Dim SluChis As New Random

Dim Z As Integer

Z = SluChis.Next(10)

В данном примере переменная SluChis объявлена как экземпляр класса Random. Для генерации случайных чисел используется метод Next с одним параметром, равным 10. Таким образом, переменной Z присваивается случайное целое число из диапазона [0; 10].

Использование метода NextDouble класса Random продемонстрировано в примере 10.2.

Для хранения данных достаточно часто используются текстовые файлы, которые представляют собой набор строк символов, разделенных маркерами конца строки. Специально для работы с текстовыми файлами в VB .NET введены классы StreamWriter и StreamReader. Первый из этих классов позволяет записывать строки в файл, а второй – читать текст из файла. По умолчанию эти классы работают с кодировкой Unicode.

Классы StreamWriter и StreamReader описаны в пространстве имен System.IO. Поэтому при разработке приложения, реализующего работу с файлами, необходимо сослаться на данное пространство имен с помощью ключевого слова Imports:

Imports System.IO

Рассмотрим использование класса StreamWriter. В самом простом случае создание объекта класса StreamWriter записывается следующим образом:

Dim ИмяПер As New StreamWriter("Имя_Путь")

где ИмяПер – имя переменной, являющейся экземпляром (объектом) класса StreamWriter;

"Имя_Путь" – полное имя файла, включающее в себя путь (например, "C:\output.txt").

Можно отметить следующие методы класса StreamWriter:

Write – записывает данные в поток, преобразовывая их к строковому типу;

WriteLine – записывает данные в поток, осуществляя их автоматическое преобразование к строковому виду;

Close – закрывает текущий объект и связанный с ним поток.

Использование класса StreamWriter продемонстрировано в примере 10.1.

Использование класса StreamReader будет рассмотрено в последующих работах.

При создании приложений часто бывает необходимо выполнять какие-либо действия через заданные промежутки времени. Для этого может быть использован невизуальный компонент таймер (Timer), который периодически уведомляет приложение о завершении заданного интервала времени (рис. 10.2).

Рис. 10.2. Отображение компонента таймер (Timer) на вкладке формы

Наиболее важными свойствами компонента Timer являются:

Interval – задает в миллисекундах интервал времени для таймера;

Enabled – управляет активностью таймера.

К наиболее важным методам таймера относятся:

Start – запускает таймер, устанавливая свойство Enabled в True;

Stop – останавливает таймер, устанавливая свойство Enabled в False.

Событие Tick происходит при каждом очередном завершении заданного интервала времени если таймер остановлен.