Различие между процедурами и функциями



Функции - это процедуры особого вида, результатом работы которых является некоторое значение, подобное переменной.

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

Модули, созданные программистом

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

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

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

Модуль можно разделить на несколько разделов: заголовок, интерфейсная часть, реализационная часть, инициализационная часть.

Процедуры Sub…End Sub
Синтаксис процедуры Sub.. .End Sub такой:
[Private I Public] [Static] Sub имя [(список)]
[операторы]
[Exit Sub]
[операторы]
End Sub

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

Параметры

Private Процедуры объявленные как Private, можно вызывать только в текущем модуле.

Public Процедуры объявленные как Public, можно вызывать в любом модуле приложения.

Static Все переменные, объявленные в процедуре, будут статическими, т.е. их значения сохраняются между вызовами.

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

Параметры Список формальных параметров, значения которых передаются в процедуру. Разделителем в списке параметров является запятая (,).

Операторы Любая группа операторов, выполняемых в процедуре или функции.

Тип Тип возвращаемого значения функции.

Выражение Возвращаемое значение функции.

Обращение к процедуре

Используется оператор вызова процедуры, который имеет следующий вид:

Call Имя [(Список фактических параметров)]

Имя – это имя вызываемой процедуры, определенной в программе при помощи оператора Sub.

Список фактических параметров – это список фактических параметров, разделенных запятыми.

В качестве фактических параметров можно использовать константы, переменные, выражения и массивы.

Если фактическим параметром является массив, то в списке параметров пишется имя массива, а затем ().

Фактические параметры должны соответствовать формальным по количеству, порядку следования и типу.

Порядок обращения к процедуре

Вызов процедуры при помощи оператора Call.

Формальные параметры в процедуре заменяются на фактические.

Вычисление при помощи данной процедуры с фактическими параметрами.

Возврат в основную программу к оператору, следующему после обращения.

Пример обращения к процедуре:

Private Sub button1_Click()

Dim a() As Single, s As Single, i As Integer, n As Integer

n = CSng(InputBox("n"))

Redim a(0 to n-1)

For i = 0 To n-1

a(i) = CSng(InputBox("a(i)"))

Next i

Call sum(n, a, s)

ТextBox1.Text=TextBox1.Text + “s="+CStr(s)

End Sub

 

Формальные и фактические параметры

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

Формальные параметры используются в операторе описания процедуры или функции.

Фактические параметры – это реальные переменные, с которыми происходит обращение к процедуре или функции. VB требует строгого соответствия типа между формальными и фактическими параметрами, т.е. например, Integer - Integer , Single – Single.


22. Visual Basic. Функции, создаваемые пользователем. Функция. Описание. Формальные и фактические параметры. Обращение к процедуре-функции. Порядок выполнения.

23. Visual Basic. Запись информации в файл и чтение из файла.

Используйте метод WriteAllText для записи текста в файл, указывая файл и текст, который требуется записать. В этом примере строка "This is new text."записывается в файл test.txt, при этом текст добавляется к тексту, имеющемуся в файле.

My.Computer.FileSystem.WriteAllText("C:\TestFolder1\test.txt",

"This is new text to be added.",True)

Запись набора строк в файл:

Выполните цикл по коллекции строк. Используйте метод WriteAllText для записи текста в файл, указав конечный файл, строку, которую требуется добавить, и присвоив параметру append значение True.

В этом примере имена файлов в каталоге Documents and Settings записываются в файл FileList.txt, при этом между каждой записью вставляется символ перевода строки для удобства чтения.

For Each foundFile As String In

My.Computer.FileSystem.GetFiles("C:\Documents and Settings")

foundFile = foundFile & vbCrLf

My.Computer.FileSystem.WriteAllText(

"C:\Documents and Settings\FileList.txt", foundFile, True)

Next

Чтение данных из текстового файла:

Для считывания содержимого текстового файла в строку используйте метод ReadAllText объекта My.Computer.FileSystem, указав путь. В следующем примере содержимое файла test.txt считывается в строку и затем отображается в окне сообщения.

Dim fileReader As String

fileReader = My.Computer.FileSystem.ReadAllText("C:\test.txt")

MsgBox(fileReader)

Чтение данных из зашифрованного текстового файла:

Для считывания содержимого текстового файла в строку используйте метод ReadAllText объекта My.Computer.FileSytem, указав путь и тип кодировки файла. В следующем примере содержимое файла test.txt в кодировке UTF32 считывается в строку и затем отображается в окне сообщения.

Dim fileReader As String

fileReader = My.Computer.FileSystem.ReadAllText("C:\test.txt",

System.Text.Encoding.UTF32)

MsgBox(fileReader)

24. Алгоритм нахождения значения определенного интеграла с заданной степенью точности методом левых прямоугольников. Программная реализация на Visual Basic.

Private Sub Button5_Click(ByVal sender As Object, ByVal e As EventArgs) Handles Button5.Click

   Dim a, b, n, h, d As Single

   Dim x() As Single

   a = TextBox1.Text

   b = TextBox2.Text

   n = 1000

   h = (b - a) / n

   ReDim x(n)

   For i = 0 To n

       x(i) = a + i * h

   Next

   For i = 0 To n - 1

       d = d + F(x(i)) * (x(i + 1) - x(i))

   Next

   TextBox8.Text = d

End Sub

25. Алгоритм нахождения корня уравнения с заданной степенью точности методом деления отрезка пополам. Программная реализация на Visual Basic.

 

26. Алгоритм сортировки методом пузырька. Программная реализация на Visual Basic.

 

Наиболее известным методом сортировки является сортировка пузырьковым методом. Его популярность объясняется запоминающимся названием и простым алгоритмом.

Метод основан на том, что в процессе исполнения алгоритма более "легкие" элементы массива постепенно "всплывают".

Особенностью данного метода является сравнение не каждого элемента со всеми, а сравнение в парах соседних элементов. Выполняется несколько последовательных просмотров массива от начала к концу. Если соседние элементы расположены "неправильно", то они меняются местами.

Public Class Form1

Dim a(50) As Integer

Dim n As Integer 'фактическая размерность массива

Dim it As Integer 'число итераций обмена элементов

Private Sub init1(ByVal n As Integer)

   ' Заполнение массива с клавиатуры

   Dim i As Integer

   For i = 0 To n - 1

       a(i) = Val(InputBox("Введите " + Str(i + 1) + " элемент:"))

   Next i

End Sub

Sub sorting2(ByVal n As Integer)

   't -промежуточная переменная для перестановки элементов

   Dim i, j, t As Integer

   it = 0

   For i = 1 To n - 1

       For j = n - 1 To i Step -1

           ' увеличиваем число итераций обмена элементов

           it = it + 1

           ' если элемент справа болеше элемента слева,

             'то "вытесняем" его - пузырек "всплывает"

           If a(j - 1) > a(j) Then 'перестановка элементов

               t = a(j - 1)

               a(j - 1) = a(j) : a(j) = t

           End If

       Next

   Next

End Sub

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

   ' Заполнение массива с клавиатуры

   Dim i As Integer

   n = Val(InputBox("Введите количество элементов массива", "Ввод данных"))

   init1(n)   'вызов процедуры заполнения массива с клавиатуры

   ListBox1.Items.Clear() 'очистить список ListBox1

   For i = 0 To n - 1 'вывести исходный массив в список ListBox1

       ListBox1.Items.Add(a(i))

   Next

End Sub

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click

   ' сортировка

   Dim i As Integer

   sorting2(n)    'вызов процедуры сортировки

   For i = 0 To n - 1 'вывод отсортированного массива в ListBox2

       ListBox2.Items.Add(a(i))

   Next

   Label2.Text = it

End Sub

 

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

 

End Sub

End Class

 

 

27. Технологии виртуализации, как основа построения облачных сервисов. Публичные, частные, гибридные облака.

Визуализация (от лат. visualis, «зрительный») — общее название приёмов представления числовой информации или физического явления в виде, удобном для зрительного наблюдения и анализа.

Облачные вычисления (англ. cloud computing) — информационно-технологическая концепция, подразумевающая обеспечение повсеместного и удобного сетевого доступа по требованию к общему пулу (англ. pool) конфигурируемых вычислительных ресурсов (например, сетям передачи данных, серверам, устройствам хранения данных, приложениям и сервисам — как вместе, так и по отдельности), которые могут быть оперативно предоставлены и освобождены с минимальными эксплуатационными затратами или обращениями к провайдеру.

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

Национальным институтом стандартов и технологий США зафиксированы следующие обязательные характеристики облачных вычислений:

Самообслуживание по требованию (англ. self service on demand) — потребитель самостоятельно определяет и изменяет вычислительные потребности, такие как серверное время, скорости доступа и обработки данных, объём хранимых данных без взаимодействия с представителем поставщика услуг;

Универсальный доступ по сети — услуги доступны потребителям по сети передачи данных вне зависимости от используемого терминального устройства;

Объединение ресурсов (англ. resource pooling) — поставщик услуг объединяет ресурсы для обслуживания большого числа потребителей в единый пул для динамического перераспределения мощностей между потребителями в условиях постоянного изменения спроса на мощности; при этом потребители контролируют только основные параметры услуги, но фактическое распределение ресурсов, предоставляемых потребителю, осуществляет поставщик;

Эластичность — услуги могут быть предоставлены, расширены, сужены в любой момент времени, без дополнительных издержек на взаимодействие с поставщиком, как правило, в автоматическом режиме;

Учёт потребления — поставщик услуг автоматически исчисляет потреблённые ресурсы на определённом уровне абстракции, и на основе этих данных оценивает объём предоставленных потребителям услуг.

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

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

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

Частное облако

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

Публичное облако

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

Гибридное облако

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

28. Технология виртуализации, как основа построения облачных сервисов.

 

29. Компьютерные вирусы. Сетевые черви. Троянские программы. Средства борьбы с вредоносным программным обеспечением.

Компьютерный вирус - это небольшая программа способная к саморазмножению и выполнению разных деструктивных действий. На сегодняшний день известно свыше 50 тыс. компьютерных вирусов.

Существует много разных версий относительно даты рождения первого компьютерного вируса. Однако большинство специалистов сходятся на мысли, что компьютерные вирусы, как таковые, впервые появились в 1986 году, хотя исторически возникновение вирусов тесно связано с идеей создания самовоспроизводящихся программ. Одним из "пионеров" среди компьютерных вирусов считается вирус "Brain", созданный пакистанским программистом по фамилии Алви. Только в США этот вирус поразил свыше 18 тыс. компьютеров. В начале эпохи компьютерных вирусов разработка вирусоподобных программ носила чисто исследовательский характер, постепенно превращаясь на откровенно вражеское отношение к пользователям безответственных, и даже криминальных "элементов". В ряде стран уголовное законодательство предусматривает ответственность за компьютерные преступления, в том числе за создание и распространение вирусов.

Вирусы действуют только программным путем. Они, как правило, присоединяются к файлу или проникают в тело файла. В этом случае говорят, что файл заражен вирусом. Вирус попадает в компьютер только вместе с зараженным файлом. Для активизации вируса нужно загрузить зараженный файл, и только после этого, вирус начинает действовать самостоятельно.

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


Дата добавления: 2018-11-24; просмотров: 227; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!