Математические действия и функции
В этом подразделе вы научитесь правильно вводить в компьютер сложные формулы. Если вы – школьник не самых старших классов, то не все математические функции, что здесь упомянуты, будут вам известны. Не огорчайтесь, при дальнейшем чтении непонятные вещи вам не понадобятся. Действия арифметикиобозначаются в VB следующим образом:
На уроках математики мы привыкли писать ab+cd , подразумевая: «a умножить на b плюс c умножить на d». В VB это выражение мы обязаны писать так: a*b+c*d. Иначе компьютер подумает, что нужно к переменной, имеющей имя ab, прибавить переменную, имеющую имя cd. Во избежание двусмысленности знак умножения положено писать всегда, в том числе и перед скобками. Например, a*(b+c) вместо a(b+c). Скобки. Ввиду того, что с клавиатуры всю информацию приходится вводить символ за символом в одну строку, ввод двухэтажных выражений, таких как затруднен. Поэтому для обозначения деления в программировании выбрана косая черта. Приведенное выражение на VB положено записывать так: a+1)/(b+1). Если бы мы не поставили скобок, то выражение получилось бы таким a+1/b+1, а это неправильно, так как компьютер, как и мы, всегда перед сложением и вычитанием выполняет умножение и деление, поэтому в последнем случае, не зная наших намерений, он бы сначала разделил 1 на b , а затем к результату прибавил бы a и 1. Помните, что компьютер выполняет арифметические действия в привычном для нас порядке: сначала вычисляет функции, возводит в степень, извлекает корни, затем выполняет умножение с делением, затем сложение с вычитанием. Вопрос: когда в выражениях можно ставить скобки? Ответ: всегда, когда у вас возникают сомнения в правильной очередности действий. Лишняя пара скобок не помешает. Пример: записать на VB выражение: Запишем пока так: (1 + a / (2+a*b)) / (3+a) * b Разберитесь в этой записи. Сложные выражения с большим количеством скобок на глаз воспринимаются с трудом, так как трудно для конкретной скобки увидеть ее законную пару. В этом случае я могу посоветовать идти «от малого к большому», то есть сначала заметить самые малые из взятых в скобки фрагменты выражения. У нас это (3+a) и (2+a*b). Заметьте глазами их скобки. После этого вам будет уже легче заметить скобки для более крупных фрагментов, таких как (1 + a / (2+a*b)) , и т.д. VB приходит вам на помощь, и в момент ввода очередной скобки выделяет полужирным шрифтом ее и ее пару. Разобрались? Приведенная запись меня совсем не удовлетворяет, так как мы не знаем, что VB будет делать раньше – делить (1 + a / (2+a*b)) на (3+a) или умножать (3+a) на b. А от этого зависит результат. Добавим для верности пару скобок: ((1 + a / (2+a*b)) / (3+a)) * b Теперь все в порядке. Точка или запятая в десятичных дробях?Почти во всех языках программирования и уж, конечно, в VB, в программном тексте в окне кода принято в десятичных дробях вместо запятой ставить точку. Пример: y=62.8 – шестьдесят две целых восемь десятых. Однако, если помните, результаты в текстовое поле VB выводит с запятой. В чем дело? VS, являясь приложением Windows, частично воспринимает от нее привычку пользоваться в России запятой. Особой проблемы тут нет. В подавляющем большинстве случаев то, что я уже сказал, поможет вам сделать правильный выбор. В остальных случаях применяйте метод «научного тыка» – пользуйтесь, например, точкой, а если VS жалуется или начинает делать что-то не то, меняйте ее на запятую. Математические функции. Кроме нескольких действий арифметики VB может выполнять и другие математические действия, например, извлечение квадратного корня. Однако на компьютере нет клавиши со значком , поэтому в VS имеется специальная функция – Sqrt. Например, корень из 25 обозначается так – Sqrt(25), корень из a+b так – Sqrt(a+b). Здесь Sqrt – сокращение от английского выражения Square root – квадратный корень. Аргумент, то есть то, из чего нужно извлечь корень, записывается в скобках. Приведу неполный список математических функций VB: Почти все они являются методами класса System.Math.
Кроме этого, имеются функции Sin, Cos, Tan(что означает тангенс), Asin (что означает арксинус), Acos, Atan и некоторые другие. Работа со случайными величинами описана в 7.3.1. Проверьте работу интересующих вас математических функций, написав программу такого вида: Imports System.Diagnostics.Debug, System.Math Public Class Form1 Inherits System.Windows.Forms.Form Windows Form Designer generated code Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click WriteLine(PI) WriteLine(Round(17.48)) End Sub End Class Проверьте в уме: Выражение (2+1)^2 при вычислении даст 9
Задание 9. Определите устно, без компьютера, что напечатает процедура: Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click Dim a, b As Double a = (2 ^ 2 + 1) * (20 - (2 ^ 2) ^ 2) - 11 b = Round((a + 2) / 10) * (11 \ (a - 4)) WriteLine(a ^ 2 + b - 1) End Sub Понятно ли вам, что здесь нужно округлять ((a+2)/10) , а не ((a+2)/10)*(11\(a-4)) ? Если непонятно, то внимательно найдите к каждой скобке ее пару, начиная с фрагмента (a+2). Числовые литералы. Слово «число» имеет слишком широкий смысл. Поэтому целесообразно конкретные числа, встречающиеся в программном тексте в окне кода, иногда называть по-другому. Будем называть их числовыми литералами. Так, в строке y = 20 * a - Round(-2.54) + 0.01 присутствует три числовых литерала: 20, -2.54, 0.01. Один из них целый, два – дробных. Литералы еще традиционно называют константами, но у этого термина в VB несколько другое значение. В дальнейшем понятие литерала я расширю и на нечисловые типы данных. Числовые типы данных Данные– это то, над чем работает программа, чтобы получить результат. А программа– это инструкция о том, что нужно делать с данными, чтобы получить результат. Так, в нашем проекте Калькулятор данными были числа, вводимых нами в два верхних текстовых поля, а результатом – число в нижнем текстовом поле. В проекте Плеер данными были звуковые и видеофайлы на диске, а результатом – звук в наушниках и изображение на экране. Данные часто выступают в качестве значений переменных. Поэтому мы имеем право говорить о типах данных точно так же, как говорим о типах переменных. Это одни и те же типы. Литералы, которые мы пишем в тексте программы – тоже данные, ведь программа работает и над ними тоже. Поставьте курсор мыши на любой литерал в тексте программы и увидите подсказку с названием типа данных, к которому, по мнению VB, относится этот литерал. Поэтому в дальнейшем я не буду различать типы данных и типы переменных. Вкратце и без пояснений типы данных VB перечислены в 5.2.3. В этом подразделе мы будем говорить только о типах числовых данных. В VB имеется 7 числовых типов. В таблице все они приведены, а подробные пояснения – в следующих разделах. Для справки я привел сведения и по простым нечисловым типам.
* – Размер ячейки под строковую переменную зависит от размеров строки и от компьютера.
Популярное: Как построить свою речь (словесное оформление):
При подготовке публичного выступления перед оратором возникает вопрос, как лучше словесно оформить свою... Почему человек чувствует себя несчастным?: Для начала определим, что такое несчастье. Несчастьем мы будем считать психологическое состояние... Личность ребенка как объект и субъект в образовательной технологии: В настоящее время в России идет становление новой системы образования, ориентированного на вхождение... Почему стероиды повышают давление?: Основных причин три... ©2015-2024 megaobuchalka.ru Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. (2165)
|
Почему 1285321 студент выбрали МегаОбучалку... Система поиска информации Мобильная версия сайта Удобная навигация Нет шокирующей рекламы |