Цикл с известным числом повторений — КиберПедия 

Механическое удерживание земляных масс: Механическое удерживание земляных масс на склоне обеспечивают контрфорсными сооружениями различных конструкций...

Особенности сооружения опор в сложных условиях: Сооружение ВЛ в районах с суровыми климатическими и тяжелыми геологическими условиями...

Цикл с известным числом повторений

2017-10-21 523
Цикл с известным числом повторений 0.00 из 5.00 0 оценок
Заказать работу

Оператор for представляет возможность организовать цикл по некоторой переменной, изменяющейся в заданном диапазоне.

Оператор записывают так:

For x? xn, xn+dx.. xk

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

Например, следующая функция возвращает сумму x1+x3+x5+x7

Границы диапазона могут быть заданы не только конкретными значениями, но и переменными:

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

Цикл с условием

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

While условие

оператор.

Это означает, что оператор будет выполняться в цикле до тех пор, пока истинно условие.

Например, найти сумму ряда

для x>1, суммировать пока очередной член ряда больше 0,001

Оператор прерывания

Если цикл надо завершить досрочно, применяется оператор break.

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

 

 

Задание к лабораторной работе № 5

Решить в MathCad программным(встроенные функции работы с массивами не применять) способом следующие задачи:

 

1. Найти минимальный и максимальный элементы вектора y ={ y 1, y 2,…, y 10 } и поменять их местами.

2. Задан вектор c ={ c 1, c 2, …, c n }. Найти вектор y ={ c 1 /| c |, c 2 /| c |, …, c n /| c |}, где | c | - длина вектора c.

3. Даны два вектора x ={ x 1, x 2, …, x n } и y ={ y 1, y 2, …, y n }. Определить, ортогональны ли эти векторы.

4. Найти косинус угла между двумя векторами a ={ a 1, a 2, …, a 20 } и b ={ b 1, b 2, …, b 20 }.

5. Из двух векторов x ={ x 1, x 2, …, x 16 } и y ={ y 1, y 2, …, y 16 } определить тот, у которого больше длина.

6. Найти сумму s положительных компонентов вектора b ={ b 1, b 2, …, b 15 }. Образовать новый вектор по формуле

 

1. Заданы два вектора a ={ a 1, a 2, …, a n } и b ={ b 1, b 2, …, b n }. Определить тот из них, который имеет наименьшую длину.

2. Найти наименьший из положительных элементов массива x ={ x 1, x 2, …, x 20 }.

3. Найти наибольшее значение суммы x i + y i для массивов x ={ x 1, x 2, …, x 20 } и y ={ y 1, y 2, …, y20 }.

4. Даны векторы u ={ u 1, u 2, …, u 8 } и w ={ w 1, w 2, … w 8 }. Найти среднее арифметическое длин этих векторов.

5. Вычислить сумму отрицательных и произведение положительных элементов вектора x ={ x 1, x 2, …, x 10 }. Найти длину этого вектора.

6. Найти индексы наименьшего и наибольшего элементов вектора x ={ x 1, x 2, …, x 10 }. Определить их сумму S.

7. Определить количество положительных элементов вектора x ={ x 1, x 2, …, x 20 }. Образовать новый вектор y из положительных элементов вектора x.

8. Найти минимальный и максимальный элементы вектора y ={ y 1, y 2,…, y 10 }. Вывести на экран их значения и индексы.

9. Вычислить среднее арифметическое всех положительных элементов вектора x ={ x 1, x 2, …, x 20 }.

10. Заданы векторы a ={ a 1, a 2, …, a n } и b ={ b 1, b 2, …, b n }. Найти скалярное произведение этих векторов.

11. Даны векторы x ={ x 1, x 2, …, x 9 } и y ={ y 1, y 2, …, y 9 }. Найти количество положительных, отрицательных и нулевых элементов в каждом из этих векторов.

12. Определить индекс наименьшего из положительных элементов вектора y ={ y 1, y 2, …, y 15 }.

13. Даны векторы a и b Найти cos угла между ними.

14. Задан вектор a={a 1, a 2, …, a 8 }. Поменять его первый элемент с минимальным и последний– с максимальным.

15. Определить индекс наибольшего из отрицательных элементов вектора y ={ y 1, y 2, …, y 15 }.

16. Определить количество положительных элементов вектора x ={ x 1, x 2, …, x 20 }. Образовать новый вектор y из отрицательных элементов вектора x.

17. Определить индекс наименьшего по модулю элемента вектора y ={ y 1, y 2, …, y 15 }.

18. Даны два вектора x ={ x 1, x 2, …, x n } и y ={ y 1, y 2, …, y n }.Найти значение z=2· | x |– | y |, где | x |, | y |- длины векторов x, y.

19. Вычислить среднее геометрическое всех положительных элементов вектора x={x 1, x 2, …, x 20 }.

20. Вычислить среднее геометрическое модулей всех отрицательных элементов вектора x={x 1, x 2, …, x 20 }..

21. Дан вектор x={x 1, x 2, …, x n }. Найти z=sin(k)-cos(m), где k–максимальный по модулю элемент, m – минимальный элемент вектора.

22. Найти наибольший из положительных элементов массива x ={ x 1, x 2, …, x 20 } и количество отрицательных элементов..

23. Дан вектор x ={ x 1, x 2, …, x n }. Найти: сумму элементов больших 10, произведение отрицательных элементов и наибольший по модулю элемент вектора.

24. Даны векторы a ={ a 1, a 2, …, a 10 } и b ={ b 1, b 2, …, b 10 }. Найти косинус угла между ними и количество элементов вектора равных нулю.

 

 

Лабораторная работа № 6

 

Построение графиков. Вычислить в Exсel выражение с применением функций рабочего листа и созданием функции пользователя в VBA.

 

Построение диаграмм в Excel

Для создания диаграммы в Excel необходима таблица значений. Рассмотрим построение декартовых графиков функциональной зависимости y=f(x). Пусть имеется экспериментальные данные измерения пройденного пути в зависимости от времени. Заполнив ими два соседних столбца (или строки) на рабочем листе Excel, выделим их вместе с названиями, вызовем «Мастер диаграмм» (пункт меню «Вставка»à «Диаграмма»), и выберем тип диаграммы «Точечная».

 

 

Тип графика «Точечный»

 

Тип «Точечная» берёт значения из одного столбца (самого левого при таком способе построения) и откладывает их по оси «х», а соответствующие им из других столбцов по оси «y». Частой ошибкой бывает выбор для подобного типа диаграмм пункта «График». Посмотрим, что произойдёт при таком выборе.

 


Тип диаграммы «График»

 

 

Полученный график не соответствует «Точечному» (и действительности). Значения расположены через равные промежутки, хотя в исходной таблице интервалы по оси «х» разные.

 

Возможно построение нескольких графиков в одном окне диаграммы. Пусть надо добавить новый ряд данных по температуре. Щелкнув правой кнопкой мыши в окне диаграммы, выбираем в контекстном меню пункт «Исходные данные»,

 

 

 

В диалоговом окне исходных данных на вкладке «Ряд», нажимаем кнопку «Добавить» и указываем в соответствующих полях диапазоны значений.

 

 

Так как данные в рядах «Путь» и «Температура» различаются на два порядка, вид графика для данных «Путь» мало показателен. В Excel существует возможность построить один из графиков во второй, вспомогательной оси. Для создания вспомогательной оси, надо щёлкнуть правой кнопкой по линии графика и, выделив её таким образом, в появившемся контекстном меню выбрать пункт «Формат рядов данных» и установить переключатель «по вспомогательной оси».

 

 

 

При построении графика функции заданной в аналитическом виде, например

y=a*sin(x-b), где x изменяется от -3 до 2 с шагом dx=0,25 a=2,4 b=0,3

таблицу значений можно построить следующим образом: в ячейку, например «D4», ввести начальное значение х то есть -3, в ячейку «D5» ввести следующее значение (для шага изменения по х равного 0,25 это будет -2,75), затем, выделив эти две ячейки, протянуть за правый нижний уголок, заполнив таким образом столбец значений по «x». Для значений « в ячейку «E4» вводим формулу «=$B$4*SIN(D4-$B$5)», где ««$B$4» и «$B$5» ссылки на ячейки со значениями «a» и «b» соответственно, эти адреса должны быть абсолютными, а «D4» - ссылка на ячейку со значениями «х», этот адрес должен быть относительным. Копируя методом протягивания ячейку «E4» вниз на нужное количество строк, получаем столбец значений «y». Затем строим график, выбирая тип «Точечный», и форматируем, задавая заголовки, линии сетки и т.п.

При построении и исследовании удобно применять имена диапазонов. Создадим таблицу входных значений для построения графика, где n – число точек. Выделив диапазон А4:В9 через пункты меню «Вставка»à «Имя» à «Создать» дадим имена соответствующим ячейкам. В ячейку для dx введем формулу «=(xk-xn)/n». В ячейке D4 напишем «=xn» а в ячейку ниже (D5) – «=D4+dx» и скопируем ячейку D5 методом протаскивания до ячейки с адресом D24, заполнив, таким образом, 20 ячеек значениями x.

Выделив диапазон D4:D24, присвоим ему имя x. Теперь, при написании формул можно использовать не адреса ячеек, а имена. Это дает более наглядное написание формул.

Напишем в ячейке E4 формулу «=a*sin(x-b)» и, скопировав ее методом протаскивания до ячейки E24, заполним значениями функции.

 

 

 

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

 

 

Для построения графика функции, имеющего разный функциональный вид для разных значений аргумента (это задача «Развилка») используется логическая функция «=ЕСЛИ(условие; значение истинно; значение ложь)». Для графика функции заданной условием Y=a*sin(x) если x<-1, Y=b* │x│ если x>=-1 формула принимаем следующий вид

=ЕСЛИ(D4<-1;$B$4*SIN(D4);$B$5*КОРЕНЬ(ABS(D4)))

или при применении имен «=ЕСЛИ(X<-1;a*SIN(X);b*КОРЕНЬ(ABS(X)))»

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

Public Function Развилка(a, b, x) As Double

Dim y As Double

If x < -1 Then

y = a * Sin(x)

Else

y = b * Sqr(Abs(x))

End If

Развилка = y

End Function

 

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

 

 

При построении графика функции, имеющей три условия, применяется вложенная развилка. Например, при условии:

Y=a*sin(x) если x<-1

Y=b* │x│ если -1<= x <0,5

Y= x если x>=0,5

формула при применении адресов следующая:

=ЕСЛИ(D4<-1;$B$4*SIN(D4);ЕСЛИ(И(D4>-1;D4<=0,5);$B$5*КОРЕНЬ(ABS(D4));D4))

Здесь для условия -1<=x<0,5 применена логическая функция

И(логическое_значение1; логическое_значение2;...)

возвращающая значение ИСТИНА, если все аргументы имеют значение ИСТИНА; значение ЛОЖЬ, если хотя бы один аргумент имеет значение ЛОЖЬ.

 

 

Задание к лабораторной работе № 6

 


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

Биохимия спиртового брожения: Основу технологии получения пива составляет спиртовое брожение, - при котором сахар превращается...

Автоматическое растормаживание колес: Тормозные устройства колес предназначены для уменьше­ния длины пробега и улучшения маневрирования ВС при...

Индивидуальные и групповые автопоилки: для животных. Схемы и конструкции...

Историки об Елизавете Петровне: Елизавета попала между двумя встречными культурными течениями, воспитывалась среди новых европейских веяний и преданий...



© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!

0.04 с.