Главная Случайная страница


Полезное:

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


Категории:

АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника






Задание для моделирования





1. Открыть редактор VBA.

2. Написать программу по генерации 500 случайных чисел на листе Excel.

3. Доработать программу для вычисления среднего значения полученных случайных чисел и записать результат в ячейку на листе.

4. Построить таблицу 4.1 (количество N подынтервалов не менее 10), при помощи редактора VBA и вывести ее на экран.

 

Для решения поставленных задач откроем редактор VBA при помощи комбинации клавиш Alt + F11.

 

Таблица 4.1

Интервал Частота попаданий в данный интервал Относительная частота попадания
1 ν1 ν1/n
2 ν2 ν2/n
N νN νN/n

 

В появившемся окне сверху справа двойным щелчком мыши выберем наш рабочий лист.

Напишем программу для генерации случайных чисел.

1. Sub Praktika()

2. a = 0

3. For i = 1 To 500

4. Sheets(1).Cells(i, 1) = Rnd

5. a = a + Sheets(1).Cells(i, 1)

6. Next i

7. Sheets(1).Cells(1, 2) = a / 500

8. For i = 0 To 0.9 Step 0.1

9. Sheets(1).Cells(i * 10 + 1, 4) = i

10. Sheets(1).Cells(i * 10 + 1, 5) = i + 0.1

11. Next i

12. For i = 1 To 10

13. Sheets(1).Cells(i, 6) = 0

14. For j = 1 To 500

15. If Sheets(1).Cells(j, 1) > Sheets(1).Cells(i, 4) And Sheets(1).Cells(j, 1) < Sheets(1).Cells(i, 5) Then

16. Sheets(1).Cells(i, 6) = Sheets(1).Cells(i, 6) + 1

17. End If

18. Next j

19. Sheets(1).Cells(i, 7) = Sheets(1).Cells(i, 6) / 500

20. Next i

21. End Sub

 

Рассмотрим подробнее написанную программу.

Запись в первой строке означает то, что начинается новая программа с именем «Practika».

В четвертой строке программы на первый в книге лист в столбец А (первый столбец) производится запись случайных чисел.

Для того чтобы записать случайные числа в ячейки А1:А500 в третьей строке программы открывается цикл For в котором переменная i изменяется от 1 до 500 и в четвертой строке вместо номера строки подставляется данная переменная.

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

Запись в шестой строке показывает программе, что в данном месте закончился код, который выполняется в цикле.

В седьмой строке в ячейку В1 (первая строка, второй столбец) записывается среднее значение полученных случайных чисел.

При помощи цикла записанного в 8-11 строках на лист Excel в столбцы D и E выводится диапазон интервалов.

В двенадцатой строке открывается цикл для перебора всех полученных интервалов.

В тринадцатой строке программы происходит обнуление значений в ячейках столбца F для корректного срабатывания счетчика количества попаданий случайной величины в интервал в строке 16.

Цикл в четырнадцатой строке позволяет перебрать все значения случайных чисел и при помощи условия в пятнадцатой строке проверить в какой из интервалов попадает случайная величина.

В девятнадцатой строке происходит расчет относительного попадания случайной величины в интервал и запись полученного значения в столбец G.

Двадцать первая строка показывает, что программа закончилась.

 

Контрольные вопросы

1. В чем отличие Visual Basic for Applications от Visual Basic?

2. Что такое макрос?

3. Для чего применяются циклы?

4. Для чего применяются условия?

5. Что означает запись Sheets(2).Cells(5, 10) = 15?

Date: 2016-05-25; view: 433; Нарушение авторских прав; Помощь в написании работы --> СЮДА...



mydocx.ru - 2015-2024 year. (0.005 sec.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав - Пожаловаться на публикацию