КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Разбор олимпиадных задач
Двумерные массивы. Объявление массива Dim A(9) As Byte Dim arrB(1 To 1000) As Integer. В первом случае нумерация индексов i начинается с нуля. Во втором – начинается с единицы. Например. Dim A(1 To 10) as Integer Dim i as Byte For i = 1 To 10 A(i) = i^2 Text1.Text = Text1.Text + CStr(A(i)) Next Ответ: 149162536496481100 Объявление: Dim A(1 To 9, 1 To 9) As Byte Dim B (9,9) As Byte. Например.
1. Дано натуральное число. Определить, является ли разность его максимальной и минимальной цифр четным числом.
Решение на Visual Basic:
Dim digA, i, f, f1, f2, s As Integer digA = Text1 'считывание числа 'Поиск минимальной цифры fmin = Mid(digA, 1, 1) 'Пусть минимальная цифра для начала равна первой цифре числа For i = 1 To Len(digA) 'Организуем цикл, который зависит от длины числа f = Mid(digA, i, 1) If f <= fmin Then fmin = f End If Next i 'Поиск максимальной цифры числа fmax = Mid(digA, 1, 1) For i = 1 To Len(digA) f = Mid(digA, i, 1) If f >= fmax Then fmax = f End If Next i s = fmax - fmin 'разность максимальной и минимальной цифр числа. Text3 = s 'вывод на экран разницы. If s = 0 Then Text2 = "это нуль" ElseIf s Mod 2 = 0 Then 'Если остаток от деления равен нулю, то число четное. Text2 = "Чет" Else Text2 = "нечет" End If
2. Известны координаты трех точек на плоскости. Если они могут являться вершинами треугольника, то определить вид этого треугольника и по формуле Герона определить его площадь.
Решение на Visual Basic: Dim x1, x2, x3, y1, y2, y3 As Double x1 = Text1 x2 = Text3 x3 = Text5 y1 = Text2 y2 = Text4 y3 = Text6 lac = Sqr((x3 - x1) ^ 2 + (y3 - y1) ^ 2) lab = Sqr((x2 - x1) ^ 2 + (y2 - y1) ^ 2) lbc = Sqr((x3 - x2) ^ 2 + (y3 - y2) ^ 2) If lac < lab + lbc And lab < lac + lbc And lbc < lac + lab Then Text7 = "Это треугольник" Else: Text7 = "Это точка или линия" End If If lab = lbc = lac Then Text8 = "Равносторонний" ElseIf lab = lac Or lab = lbc Or lbc = lac Then Text8 = "Равнобедренный" Else: Text8 = "Все стороны разные" End If If Text7 = "Это точка или линия" Then Text8 = "" End If p = (lab + lac + lbc) / 2 S = Sqr(p * (p - lab) * (p - lac) * (p - lbc)) Text9 = S Text10 = lab Text11 = lac Text12 = lbc
3. Даны две фамилии. Определить какая из них длиннее. Ввод данных осуществляется в текстовый файл «input.txt», а вывод в файл «output.txt».
Решение на Visual Basic:
Open "input.txt" For Input As #1 Input #1, a, b Close #1 If Len(a) > Len(b) Then Open "Output.txt" For Output As #2 Print #2, a ElseIf Len(a) < Len(b) Then Open "Output.txt" For Output As #2 Print #2, b Else Open "Output.txt" For Output As #2 Print #2, "одинаковые:", a, b End If Close #2
4. В заданном массиве из N элементов есть хотя бы один нуль. Вычислить произведение элементов массива до первого нуля.
Решение на Visual Basic:
Dim n, arr As Double n = 1 arr = 1 Do While arr <> 0 arr = InputBox("Введите элемент массива", "Ваша цифра") If arr = 0 Then Exit Do End If Text2 = arr * n n = arr * n Loop
Дата добавления: 2014-12-24; Просмотров: 393; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |