Партнерка на США и Канаду по недвижимости, выплаты в крипто
- 30% recurring commission
- Выплаты в USDT
- Вывод каждую неделю
- Комиссия до 5 лет за каждого referral
lastName As String
End Type
Type Person
Fio As Fam
Birthdate As Date
End Type
И ниже пример процедуры, использующей пользовательские типы
Public Sub UserType()
Dim Петров As Person
Dim Козлов As Person
Петров. Fio. firstName = "Петр"
Петров. Fio. lastName = "Петров"
Петров. Birthdate = #1/23/1961#
Козлов. Fio. firstName = Петров. Fio. firstName
Козлов. Fio. lastName = "Козлов"
Козлов. Birthdate = #7/21/1966#
Debug. Print Козлов. Fio. firstName, Козлов. Fio. lastName," родился ", Козлов. Birthdate
End Sub
Применение пользовательских типов имеет следующую особенность: между переменными этих типов присвоение допустимо, все остальное нет, в том числе и сравнение. Так что можно написать:
Петров = Козлов
но нельзя написать:
If (Петров = Козлов) Then...
В последнем случае необходимо работать с переменными на уровне полей:
If (Петров. Fio. firstName = Козлов. Fio. firstName) Then...
3.9. Задания для самостоятельной работы.
1. Определить, может ли кирпич, имеющий форму прямоугольного параллелепипеда с ребрами a, b, и c, пройти через прямоугольное отверстие со сторонами X и Y.
2. Определить, находится ли точка М(х, у) внутри единичного круга с центром в начале координат.
3. Определить, находится ли точка М(х, у) внутренней области треугольника с вершинами А(0,0), В(а,0) и С(0,b), где a и b – положительные числа.
4. Определить, имеются ли среди целых чисел А, В и С хотя бы одно четное.
5. Вычислить значение величины
2u+1, если u < 0,
F(u) =
cosu, если u ≥ 0
при условии, что:
lg(-x), если x < 0,
u =
√x, если x ≥ 0.
6. Найти среди чисел a, b и c наименьшее и заменить им число, большее из них.
7. Каждое из чисел a и b отлично от нуля. Если они одинаковых знаков, то заменить меньшее из них большим; если они имеют разные знаки, присвоить каждому из них знак числа, меньшего по абсолютной величине.
8. Шар массой М с радиусом А, постоянной плотностью p притягивает материальную точку массой m, находящуюся на расстоянии r от центра шара. Вычислить силу притяжения по формуле:
gA3/r2, если r ≥ A,
U =
g2, если r < A,
где g = 4π/3fpm,
f = 6,67*10-11 – гравитационная постоянная.
9. A, B, r1 и r2 – заданные целые положительные числа. Выяснить, является ли хотя бы одно из чисел r1 и r2 остатком от деления A на B.
10. Вычислить значение величины
T = b/(ax)-2(ax+1)+2ln|ax|, |ax|>1;
величины
H = (a-x)(a+2x)+ln(a+2x+1), |ax|<1;
величины
S = (1/3)x+(1/2)(ax+2), |ax|=1.
11. Задана тройка чисел a, b, c. Вывести на печать:
1) max(|a|,|b|), abc<0;
2) max(|a|,|c|), abc>0;
3) max(|b|,|c|), abc=0.
12. Квадраты для игры в крестики-нолики (3х3) занумерованы слева направо и сверху вниз. Заданы номера трех квадратов N1, N2, N3, причем N1<N2<N3. Определить, лежат ли квадраты на одной прямой.
13. Найти остаток от деления целой части значения функции Z=ln(x+ab) на 7 и в зависимости от его величины напечатать сообщение об одном из дней недели, пронумеровав их от 0 до 6.
14. Составьте программу, определяющую номер минимального элемента из трех х1, х2, х3.
15. Расположить три числа a, b, c в порядке возрастания их значений.
16. Составьте программу нахождения двух наибольших чисел из трех чисел x, y, z.
17. Даны числа x, y, z. Найти:
а) max(x+y+z, xyz)+3;
б) min((x+y)x,(y+z)y)-4.
18. Даны положительные числа a, b, c и d. Выяснить, можно ли прямоугольник со сторонами a, b уместить внутри прямоугольника со сторонами c, d так, чтобы каждая из сторон одного прямоугольника была параллельна или перпендикулярна каждой стороне второго прямоугольника. Ответ получите в текстовой форме: ‘можно’ или ‘нельзя’.
19. Даны положительные числа a, b, c, x. Выяснить пройдет ли кирпич с ребрами a, b и c в квадратное отверстие со стороной x. Просовывать кирпич в отверстие разрешается только так, чтобы каждое из его ребер было параллельно или перпендикулярно каждой из сторон отверстия. Ответ получите в текстовой форме: ‘можно’ или ‘нельзя’.
20. Если сумма трех различных чисел x, y, z меньше 1, то меньшее из x, y заменить полусуммой y и z, иначе большее из x, z заменить на y.
21. По номеру y (y>0) некоторого года определить С – номер его столетия. Учесть, что, к примеру, началом ХХ столетия был 1901, а не 1900 год.
22. Даны действительные числа a, b, c, d. Если a<b<c<d, то каждое число заменить наибольшим из них. Если a>b>c>d, то числа оставить без изменения, в противном случае все числа заменяются их квадратами.
Задания на использование условных операторов.
1 Составить программу вычисления площадей различных геометрических фигур 
2 Составить программу вычисления значения функции
3 Составить программу вычисления значения функции 
4 Даны три числа а, b, с, удовлетворяющие аксиоме треугольника и число р. Выполнить следующие действия: если р=1 - найти периметр треугольника; если р=2 - найти площадь треугольника; если р=3 - найти угол а. Иначе напечатать слово "треугольник".
5 Найти остаток от деления целого выражения а=(с+d)(2k-m) на 5 и вывести сообщение о величине остатка. Если остаток равен 0, присвоить а значение целой части выражения. При нечетном остатке напечатать "нечетное число", при четном - "четное число"
6 Написать программу, которая по номеру машины выводит фамилию студента, сидящего за ней.
7 Найти остаток от деления целой части выражения z = cos(x2+1) на 4 и, и зависимости от его величины, напечатать сообщение об одном из времен года, пронумеровав их от 0 до 3.
8 Найти остаток от деления целого выражения c = k(a+b) на 4 и вывести сообщение о величине остатка. Если остаток равен 0, то значение переменной оставить без изменения, если 1 или 3 - уменьшить на величину остатка, если 2 - увеличить на величину остатка.
9 По номеру дня недели (1,2,3,4,5,6,7) указать название этого дня. Указать рабочие и выходные дни.
10 Найти остаток от деления целой части выражения sin(a+b)0.5c на 4 и вывести на экран сообщение о величине остатка. Если остаток равен 0, то значение выражения заменить на его целую часть. Если остаток равен 1, значение выражения заменить на его дробную часть. В остальных случаях оставить без изменения.
Задачи на использование массивов.
Упорядочить по возрастанию элементы каждой строки матрицы размером n на m.
Задана матрица размером n на m. Найти максимальный по модулю элемент матрицы. Переставить строки и столбцы матрицы таким образом, чтобы максимальный по модулю элемент был расположен на пересечении k-й строки и k-го столбца. Дана квадратная матрица A [N, N]. Записать на место отрицательных элементов матрицы нули, а на место положительных — единицы. Вывести на печать нижнюю треугольную матрицу в общепринятом виде. Дана действительная матрица размером n на m, все элементы которой различны. В каждой строке выбирается элемент с наименьшим значением, затем среди этих чисел выбирается наибольшее. Указать индексы элемента с найденным значением. Дана действительная квадратная матрица порядка N (N — нечетное), все элементы которой различны. Найти наибольший элемент среди стоящих на главной и побочной диагоналях и поменять его местами с элементом, стоящим на пересечении этих диагоналей. Для заданной квадратной матрицы сформировать одномерный массив из ее диагональных элементов. Найти след матрицы, суммируя элементы одномерного массива. Преобразовать исходную матрицу по правилу: четные строки разделить на полученное значение, нечетные оставить без изменения.3.10. Контрольные вопросы.
Основы синтаксиса языка VBA.
Перечислить арифметические операторы и операторы сравнения. Оператор Like. Подстановочные символы для оператора Like. Логические операторы. Переменные и типы данных. Объявление переменных. Ключевые слова используемые при объявлении переменной. Основные правила выбора имен переменных. Охарактеризовать типы данных используемые в VBA. Объектные переменные. Объявление объектных переменных. Константы. Массивы. Динамические массивы. Команды для работы с массивами. Пользовательские типы данных. Перечислить основные управляющие конструкции VBA. Конструкция if…then Оператор Select Case Оператор GoTo Цикл for Цикл for each Цикл do while…loop Цикл do until…loop. Конструкция While…wend Процедуры и функции. Различие между процедурами и функциями. Область видимости процедур. Передача параметров в процедуру. Способы передачи параметров.
|
Из за большого объема этот материал размещен на нескольких страницах:
1 2 3 4 5 |


