visual basic для базового курса ( 8-х и 9-х классов )

Post on 10-Jan-2016

38 Views

Category:

Documents

4 Downloads

Preview:

Click to see full reader

DESCRIPTION

Visual Basic для базового курса ( 8-х и 9-х классов ). Глезденев В.И., Удальцова А.И. – учителя информатики СОШ №3. Команды VB: AutoRedraw = True - разрешение вывода на форму; InputBox - окно запроса значения переменной; MsgBox - окно вывода сообщения; - PowerPoint PPT Presentation

TRANSCRIPT

Visual Basic Visual Basic для для базового курса базового курса ((8-х и 9-х 8-х и 9-х классовклассов))

Глезденев В.И., Удальцова А.И. – учителя информатики СОШ №3Глезденев В.И., Удальцова А.И. – учителя информатики СОШ №3

КомандыКоманды VB: VB:AutoRedraw = True - разрешение вывода на форму;InputBox - окно запроса значения переменной;MsgBox - окно вывода сообщения;Print - вывод на форму текстовых сообщений.

Первая программа:Private Sub Form_Load()Form1.AutoRedraw = True

im = InputBox("Ваше имя?", "Запрос")MsgBox ("Привет, " + im + "!")Print im + ", ты справился с заданием."Print "Нажмите х для завершения работы."End Sub

Для запуска программы даем команду Пуск – Старт (F5) / Run – Start (F5)

Или нажимаем на кнопку

Результат работы Результат работы программыпрограммы

Private Sub Form_Load()AutoRedraw = Truea = InputBox("Переменная A=", "Значение A")b = InputBox("Переменная B=", " Значение B")a = Val(a)b = Val(b)Print "A="; a; "B="; bPrint "A+B="; a + bPrint "A-B="; a - bPrint "A*B="; a * bPrint "A/B="; a / bPrint "A\B="; a \ bPrint "A>B -"; a > bPrint "A<B -"; a < bPrint "A=B -"; a = bPrint "A MOD B ="; a Mod bPrint "B^2 ="; b ^ 2Print "Корень из A ="; Sqr(a)End Sub

Арифметические и Арифметические и логические логические операции. операции.

Private Sub FormPrivate Sub Form__LoadLoad()()AutoRedraw = TrueAutoRedraw = Truea = InputBox("Введите значение а",a = InputBox("Введите значение а",__ "длина прямоугольника")"длина прямоугольника")b = b = InputBoxInputBox("Введите значение b",("Введите значение b",__ "ширина прямоугольника")"ширина прямоугольника")a = Val(a)a = Val(a)bb = = ValVal((bb))Print "длина прямоугольника"; aPrint "длина прямоугольника"; aPrint "ширина прямоугольника"; bPrint "ширина прямоугольника"; bs=a*bs=a*bPrint "Print "ПлощадьПлощадь прямоугольникапрямоугольника"; s"; sEnd SubEnd Sub

Линейный алгоритм. Линейный алгоритм. Решение задач.Решение задач.

При вводе чисел с При вводе чисел с десятичной дробью десятичной дробью необходимо целую необходимо целую часть числа отделять часть числа отделять от дробной от дробной точкойточкой: : цена - 35.7, цена - 35.7, количество – 0.45количество – 0.45

Private Sub Form_Load()Private Sub Form_Load()AutoRedraw = TrueAutoRedraw = Trueaa = = InputBoxInputBox("Введите цену товара",("Введите цену товара",__ "цена товара")"цена товара")bb = = InputBoxInputBox("Введите количество товара",("Введите количество товара",__ "количество товара")"количество товара")a = Val(a)a = Val(a)b = Val(b)b = Val(b)PrintPrint "цена товара ="; "цена товара ="; aaPrintPrint "количество товара ="; "количество товара ="; bbs = a * bs = a * br = Fix(s)r = Fix(s)k = Fix((s - r) * 100 + 0.5)k = Fix((s - r) * 100 + 0.5)Print "стоимость товара="; r; " р. "; k; " коп."Print "стоимость товара="; r; " р. "; k; " коп." EndEnd SubSub

Линейный алгоритм. Решение Линейный алгоритм. Решение задач.задач.

действие

?

нет

да

Запись в одну строку:Запись в одну строку:

IFIF <условие> <условие> THENTHEN <действие> <действие>

Условный оператор Условный оператор IF IF (краткая (краткая форма). форма).

Запись, если действий многоЗапись, если действий много

IFIF <условие> <условие> THENTHEN <действие_1><действие_1><действие_2><действие_2>……<действие_<действие_NN>>END IFEND IF

Графическое представление Графическое представление условного оператора краткой формыусловного оператора краткой формы

Private Sub Form_Load()Private Sub Form_Load()Form1.AutoRedraw = TrueForm1.AutoRedraw = Trued = InputBox("Введите значение D",d = InputBox("Введите значение D",__ "количество привезенных столов")"количество привезенных столов")e = InputBox("Введите значение E",e = InputBox("Введите значение E",__ "количество помещений")"количество помещений")f = InputBox("Введите значение F", f = InputBox("Введите значение F", __"кол"кол--во для во для 1-1-го помещения")го помещения")d = Val(d)d = Val(d)e = Val(e)e = Val(e)f = Val(f)f = Val(f)Print "количество привезенных столов ="; dPrint "количество привезенных столов ="; dPrint "количество помещений ="; ePrint "количество помещений ="; ePrint "количество столов для одного помещения ="; fPrint "количество столов для одного помещения ="; fn = e * fn = e * fIf d >= n Then Print "Столами заставят "; e; " помещений"If d >= n Then Print "Столами заставят "; e; " помещений"If d < n Then Print "Столами заставят "; Fix(d / f); " помещений"If d < n Then Print "Столами заставят "; Fix(d / f); " помещений"If d >= n Then Print "Да, столов хватит. Лишних - "; d - nIf d >= n Then Print "Да, столов хватит. Лишних - "; d - nIf d < n Then Print "Нет, столов не хватит. Не хватает - "; n - dIf d < n Then Print "Нет, столов не хватит. Не хватает - "; n - dEnd SubEnd Sub

Решение задач.Решение задач.

Запись в одну строку: Запись в одну строку:

IFIF <условие> <условие> THENTHEN <дейст_1> <дейст_1> ELSEELSE <дейст_2> <дейст_2>

Запись, если действий многоЗапись, если действий много

IFIF <условие> <условие> THENTHEN

<действие_1<действие_1_1_1>>……<действие_<действие_1_N1_N>>

ELSEELSE

<действие_<действие_2_2_1>1>……<действие_<действие_2_N2_N>>

ENDEND IFIF

Условный оператор Условный оператор IF IF (полная форма). (полная форма).

Графическое Графическое представление представление условного оператора условного оператора краткой формыкраткой формы

действие_1

?

нет

да

действие_2

Решение задач.Решение задач.Private Sub Form_Load()Private Sub Form_Load()AutoRedraw = TrueAutoRedraw = Trueaa = = InputBoxInputBox("Введите значение А", "Ввод А")("Введите значение А", "Ввод А")bb = = InputBoxInputBox("Введите значение В", " Ввод В")("Введите значение В", " Ввод В")a = Val(a): b = Val(b)a = Val(a): b = Val(b)Print "1- йPrint "1- й способ"способ"Print "a="; a; " b="; bPrint "a="; a; " b="; bIf a > b Then Max = a Else Max = bIf a > b Then Max = a Else Max = bPrint "Print "МаксимальноеМаксимальное значениезначение ="; Max ="; MaxIf a < b Then Min = a Else Min = bIf a < b Then Min = a Else Min = bPrintPrint "Минимальное значение ="; "Минимальное значение ="; MinMinaa = = InputBoxInputBox("Введите значение А", "Ввод А")("Введите значение А", "Ввод А")bb = = InputBoxInputBox("Введите значение В", " Ввод В")("Введите значение В", " Ввод В")a = Val(a): b = Val(b)a = Val(a): b = Val(b)Print "2-Print "2- й способ й способ " "Print "a="; a; " b="; bPrint "a="; a; " b="; bMax = aMax = aIf b > Max Then Max = bIf b > Max Then Max = bPrint "Print " Максимальное значение Максимальное значение ="; Max="; MaxMin = aMin = aIf b < Min Then Min = bIf b < Min Then Min = bPrint " Минимальное значение ="; MinPrint " Минимальное значение ="; MinEnd SubEnd Sub

Логические функции: Логические функции: NOT, AND, NOT, AND, OROR. . Private Sub Form_Load()Private Sub Form_Load()

AutoRedraw = TrueAutoRedraw = Trueaa = = InputBoxInputBox("Введите значение А", "Ввод А")("Введите значение А", "Ввод А")bb = = InputBoxInputBox("Введите значение В", " Ввод В")("Введите значение В", " Ввод В")cc = = InputBoxInputBox("Введите значение ("Введите значение CC", " Ввод ", " Ввод CC")")a = Val(a): b = Val(b) : c = Val(c)a = Val(a): b = Val(b) : c = Val(c)Print "a="; a; " b="; b ; " c="; cPrint "a="; a; " b="; b ; " c="; cMax = aMax = aIf b > Max Then Max = bIf b > Max Then Max = bIf c > Max Then Max = cIf c > Max Then Max = cPrint "Print " Максимальное значение Максимальное значение ="; Max="; MaxMin = aMin = aIf b < Min Then Min = bIf b < Min Then Min = bIf c < Min Then Min = cIf c < Min Then Min = cPrint " Минимальное значение ="; MinPrint " Минимальное значение ="; MinIf (a<Max) AND (a>Min) Then p=aIf (a<Max) AND (a>Min) Then p=aIf (b<Max) AND (b>Min) Then p=bIf (b<Max) AND (b>Min) Then p=bIf (c<Max) AND (c>Min) Then p=cIf (c<Max) AND (c>Min) Then p=cPrint " Промежуточное значение ="; Print " Промежуточное значение ="; ppEnd SubEnd Sub

Некоторые свойства формы в Некоторые свойства формы в VBVB..Height – высота формы;Width – ширина формы;Единица измерения в VB twp – твипы (10 twp = 1 точка на экране)Изменять ширину и высоту формы можно разными способами:

1. Мышкой (ЛКМ на квадраты границ формы);2. В окне свойств;

3. Непосредственно в программе:Private Sub Form_Load()AutoRedraw = TrueHeight = 4000Width = 6000End Sub

Координаты в Координаты в VBVB..

0,0

0,Height

Width, 0

Цвета в VB:RGBRGB(0, 0, 0) – черный;(0, 0, 0) – черный; RGBRGB(0, 0, 255) – синий;(0, 0, 255) – синий;RGBRGB(0, 255, 0) – зеленый;(0, 255, 0) – зеленый; RGBRGB(0, 255, 255) – голубой;(0, 255, 255) – голубой;RGBRGB(255, 0, 0) – красный;(255, 0, 0) – красный; RGBRGB(255, 0, 255) – фиолетовый;(255, 0, 255) – фиолетовый;RGBRGB(255, 255, 0) – желтый;(255, 255, 0) – желтый; RGBRGB(255, 255, 255) – белый;(255, 255, 255) – белый;

Графические методы:Графические методы:Line(X1,Y1)-(X2,Y2) - линия, где (X1,Y1) – начало, (X2,Y2) – конец.

Line(X1,Y1)-(X2,Y2), RGB(255, 0, 0),B - незакрашенный прямоугольник (рамка), где (X1,Y1) – левый верхний угол, (X2,Y2) – правый нижний угол, RGB(255, 0, 0) – цвет красный, B – рамка;

Line(X1,Y1)-(X2,Y2), RGB(255, 0, 0),BF – закрашенный RGB(255, 0, 0) красным цветом прямоугольник;

Графические методы:Графические методы:Circle(X,Y),R – окружность с центром в (X,Y) и радиусом R;

Pset(X,Y),RGB(255, 0, 0) – точка с координатами (X,Y) и цветом RGB(255, 0, 0);

ForeColor = RGB(255, 0, 0) –установка цвета рамок, окружностей, точек;

FillColor= RGB(255, 0, 0) - установка цвета заливки рамок, окружностей;

FillStyle = 3 - установка стиля заливки; (ниже приведены все стили)

CLS – очистка формы или графического объекта.

Point(X,Y) – определяет цвет в указанной точке.

Использование графических методовИспользование графических методов

Графика Графика Visual BasicVisual Basic..

Private Sub Form_Load()Private Sub Form_Load()AutoRedraw = TrueAutoRedraw = TrueEnd SubEnd SubPrivate Sub Command1_Click()Private Sub Command1_Click()nn = = InputBoxInputBox("Значение ("Значение NN (1 или 2 или 3)", "Ввод (1 или 2 или 3)", "Ввод NN")")n = Fix(Val(n)): Clsn = Fix(Val(n)): ClsIf n = 1 ThenIf n = 1 ThenFillColor = RGB(255, 0, 0): FillStyle = 6FillColor = RGB(255, 0, 0): FillStyle = 6Line (100, 100)-(1100, 1100), , BLine (100, 100)-(1100, 1100), , BEnd IfEnd IfIf n = 2 ThenIf n = 2 ThenFillColor = RGB(255, 255, 0): FillStyle = 7FillColor = RGB(255, 255, 0): FillStyle = 7Line (200, 200)-(1700, 700), , BLine (200, 200)-(1700, 700), , BEnd IfEnd IfIf n = 3 ThenIf n = 3 ThenFillColor = RGB(0, 0, 255): FillStyle = 5FillColor = RGB(0, 0, 255): FillStyle = 5Circle (2000, 2000), 800Circle (2000, 2000), 800End IfEnd IfIf (n > If (n > 33) OR (n <1) Then _) OR (n <1) Then _Print " Print " данноеданное действиедействие невозможноневозможно. N="; n. N="; nEnd SubEnd Sub

N=N=11

N=N=22

N=N=33

Графика с условием.Графика с условием.

На панели инструментов расположены основные элементы На панели инструментов расположены основные элементы управления выполнением программы. Рассмотрим командную управления выполнением программы. Рассмотрим командную кнопку (кнопку (Command ButtonCommand Button).).

Выбираем на панели Выбираем на панели инструментов данный инструментов данный объект (ЛКМ), на форме объект (ЛКМ), на форме рисуем кнопку, как рисуем кнопку, как показано на рис. показано на рис.

Изменяем свойство Изменяем свойство Caption Caption на «Задание 1». Добавляем на «Задание 1». Добавляем еще две кнопки: «Задание еще две кнопки: «Задание 2», «Задание 3». Кнопки не 2», «Задание 3». Кнопки не копировать, рисовать копировать, рисовать каждую в отдельности.каждую в отдельности.

Командные кнопки.Командные кнопки.

Командные кнопки.Командные кнопки.

0

pi/2

pi

3*pi/2

2*pi

2000

1400

1

2

3

4

1500

3000

Масштаб: 1 клетка – 200х200 twp

Дуги.Дуги.

Дуги. Эллипсы.Дуги. Эллипсы.

12 3

4 5

Сектора.Сектора.

ЗаданиеЗадание № №33.. «Занятость в кружках». «Занятость в кружках».Из 30 учащихся класса музыкой занимаются 10 ребят, 15 – Из 30 учащихся класса музыкой занимаются 10 ребят, 15 – плаванием, 5 – не ходят ни на музыку, ни на плавание. Построить плаванием, 5 – не ходят ни на музыку, ни на плавание. Построить круговую диаграмму распределения учащихся по кружкам.круговую диаграмму распределения учащихся по кружкам.

Const pi = 3.1415Const pi = 3.1415

Private Sub Command3_Click()Private Sub Command3_Click()FillColor = RGB(255, 0, 0)FillColor = RGB(255, 0, 0)FillStyle = 7FillStyle = 7Circle (2000, 2000), 1000, , -0.001, -2 * pi / 3Circle (2000, 2000), 1000, , -0.001, -2 * pi / 3FillColor = RGB(0, 255, 0)FillColor = RGB(0, 255, 0)FillStyle = 6FillStyle = 6Circle (2000, 2000), 1000, , -2 * pi / 3, -5 * pi / 3Circle (2000, 2000), 1000, , -2 * pi / 3, -5 * pi / 3FillColor = RGB(0, 0, 255)FillColor = RGB(0, 0, 255)FillStyle = 5FillStyle = 5Circle (2000, 2000), 1000, , -5 * pi / 3, -2 * piCircle (2000, 2000), 1000, , -5 * pi / 3, -2 * piEnd SubEnd Sub

10

15

5

Решение текстовых задач.Решение текстовых задач.

200 2600

100

1500

X1,Y1

R

XX

YY

Случайные числа. Случайное Случайные числа. Случайное расположение фигур. расположение фигур.

300300 24002400

200200

14001400

X1, Y1X1, Y1

AA

BB

X1+B, Y1+AX1+B, Y1+A

Случайные числа. Случайное Случайные числа. Случайное расположение фигур. расположение фигур.

Цикл FOR. Цикл FOR. Последовательности отрезков.Последовательности отрезков.

Последовательности отрезков и Последовательности отрезков и прямоугольников.прямоугольников.

ПоследовательностПоследовательности прямоугольников.и прямоугольников.

Последовательности Последовательности прямоугольников.прямоугольников.

Последовательности случайных чисел.Последовательности случайных чисел.

Гистограмма последовательности Гистограмма последовательности случайных чисел.случайных чисел.

Выделение чисел из последовательности Выделение чисел из последовательности случайных чисел по условию.случайных чисел по условию.

Выделение чисел из последовательности Выделение чисел из последовательности случайных чисел по условию.случайных чисел по условию.

Выделение максимальных и Выделение максимальных и минимальных значений в минимальных значений в

последовательности случайных чисел.последовательности случайных чисел.

X, YX, Y

X+DX, Y+DYX+DX, Y+DY

DXDX

DYDY

Относительные Относительные координаты.координаты.

ОтносительнОтносительные ые координатыкоординаты..

ЗаданиеЗадание №2 №2Private Sub Command3_Click()Private Sub Command3_Click()Cls: X=100: Y=3000Cls: X=100: Y=3000A=400: H=800A=400: H=800FOR i=1 TO 8FOR i=1 TO 8LINE(X, Y)-(X+A, Y)LINE(X, Y)-(X+A, Y)LINE (X+A, Y)-(X+A/2, Y-H)LINE (X+A, Y)-(X+A/2, Y-H)LINE (X+A/2, Y-H)-(X, Y)LINE (X+A/2, Y-H)-(X, Y)X=X+600: H=H+200X=X+600: H=H+200NEXT iNEXT iEnd SubEnd Sub‘ ‘ используяиспользуя относительныеотносительные координатыкоординаты::Private Sub Command4_Click()Private Sub Command4_Click()Cls: X = 100: Y = 3000Cls: X = 100: Y = 3000A = 400: H = 800A = 400: H = 800For i = 1 To 8For i = 1 To 8PSet (X, Y): Line -Step(A, 0)PSet (X, Y): Line -Step(A, 0)Line -Step(-A / 2, -H): Line -Step(-A / 2, H)Line -Step(-A / 2, -H): Line -Step(-A / 2, H)X = X + 600: H = H + 200X = X + 600: H = H + 200Next iNext iEnd SubEnd Sub

ОтносительнОтносительные ые координатыкоординаты..

A

B

D

C

A

B

D

C

Построение Построение фигур фигур случайным случайным образом образом

Случайное появление фигур на Случайное появление фигур на форме. форме. TimerTimer..

Циклы:Циклы:Do While … Loop;Do While … Loop;Do Until … Loop;Do Until … Loop;Do … Loop While;Do … Loop While;Do … Loop Until.Do … Loop Until.

Погрузка грузовика:Погрузка грузовика:

Движение фигур по Движение фигур по форме.форме.

Движение фигур по Движение фигур по форме.форме.

Массивы.Массивы. Замена элементов в массиве.Замена элементов в массиве.

Массивы.Массивы. Замена рядом стоящих Замена рядом стоящих

элементов.элементов.

| х - 2 | = а y = | x - 2 |

y = | x |

Графики уравнений:Графики уравнений:

y = | | x+ 3 | – 4 |

График уравнения:График уравнения:

График уравнения График уравнения | x + | x + 22 | | + + || x - 3 | = x - 3 | = аа

y = 1 – 2 x

y = 5y = 2 x - 1

График уравнения | x + 3 | – | x - 1 | = а

y = 4

y = 2 x + 2

y = - 4

Графики Графики уравнений:уравнений:

3

Цикл в цикле.Цикл в цикле.

4

Сортировка массива.Сортировка массива.

Массивы.Массивы. Задача «Соревнование»Задача «Соревнование»

Двумерные массивы.Двумерные массивы. Выделение строки, столбца, перезапись Выделение строки, столбца, перезапись минимальных элементов строк в первый минимальных элементов строк в первый

столбец.столбец.

Работа со строкой:Работа со строкой: Задача «рекламная строка» горизонтального Задача «рекламная строка» горизонтального расположения.расположения.

Работа со строкой:Работа со строкой: Задача «рекламная строка» вертикального Задача «рекламная строка» вертикального расположения.расположения.

Некоторые темы, не Некоторые темы, не освещенные в презентации:освещенные в презентации: 1. Подпрограммы и функции;1. Подпрограммы и функции;

2. Локальные и глобальные переменные;2. Локальные и глобальные переменные;

3.3. Рекурсия;Рекурсия;

4. Работа с файлами.4. Работа с файлами.

top related