Программирование на Visual Basic
Составление блок-схемы алгоритма решения задачи, погрешности вычисления суммы членов числового ряда. Разработка программ на языке на Visual Basic, работа с массивами. Особенности работы со строковыми данными. Варианты реализации формы приложения.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | контрольная работа |
Язык | русский |
Дата добавления | 18.06.2010 |
Размер файла | 220,4 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
13
ГОУВПО
Уфимский государственный авиационный технический университет
Кафедра Информатики
ПОЯСНИТЕЛЬНАЯ ЗАПИСКА
к контрольной работе по информатике
Программирование на Visual Basic
Уфа 2009 г.
Задание № 1. Сумма ряда
Условие задачи:
Для числового ряда найти
а) сумму членов числового ряда при М=10;
б) точное значение суммы членов числового ряда, вычисленное по формуле Sum2=15е;
в) погрешности вычисления суммы членов числового ряда (абсолютную и относительную) по отношению к точному значению суммы членов числового ряда.
Решение:
Составим блок-схему алгоритма решения задачи (представлена на рисунке слева).
Итак, для решения задачи используем переменные:
М (количество членов вычисляемого числового ряда);
f (вспомогательная переменная, вычисляющая для цикла факториал);
Sum1 (сумма членов числового ряда);
Sum2 (точное значение суммы);
Err1 (абсолютная погрешность);
Err2 (относительная погрешность);
и определимся с типом данных, который они могут содержать. Значения переменных M и k будут короткими целыми (Integer), значение f - длинным целым (Long), а значения переменных Sum1, Sum2, Err1,Err2 - вещественные удвоенной точности [1].
Для ввода значений переменной M, а также вывода результатов используются текстовые поля (объект TextBox). Чтобы сделать поля для вывода неизменяемыми, при определении характеристик поля в строке Enable укажем False [2].
Составим текст программы (приведен с комментариями).
13
Public Class Form1
Private Sub ButtonOK_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ButtonOK.Click
' описание переменных:
Dim M As Integer ' количество членов числового ряда
Dim Sum1 As Double, Sum2 As Double ' сумма и точная сумма ряда
Dim Err1 As Double, Err2 As Double ' абсолютная и относительная погрешности
Dim k As Integer, f As Long ' вспомогат.переменные
' для организации цикла и подсчета факториала
' количество членов числового ряда вводятся в форме
M = Val(TextM.Text)
' вычисления
f = 1
Sum1 = 0
For k = 1 To M
f = f * k
Sum1 = Sum1 + (k + 1) ^ 3 / f
Next k
Sum2 = 15 * 2.718281828495
Err1 = Sum2 - Sum1
Err2 = Err1 / Sum2 * 100
' вывод результатов вычислений в поля формы
TextSum1.Text = Format(Sum1, "0.00000")
TextSum2.Text = Format(Sum2, "0.00000")
TextErr1.Text = Format(Err1, "0.00000000")
TextErr2.Text = Format(Err2, "0.00000000")
End Sub
Private Sub ButtonCancel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ButtonCancel.Click
End
End Sub
End Class
На рис.1 представлен вариант реализации формы приложения:
Рисунок 1 - Вычисление суммы ряда
Задание № 2. Работа с массивами
Условие задачи:
Дан двумерный массив (матрица) размером NxN.
1. Определить сумму элементов, значения которых кратны заданному числу F.
2. Найти местоположения (номера индексов) минимальных элементов массива.
Решение:
Составим блок-схему алгоритма решения задачи
13
Программа будет содержать несколько «циклов в цикле» в виду того, что организует работы с массивами.
Текст программы
Public Class Form1
описание переменных уровня модуля: массив
Dim Arr(100, 100) As Integer
Dim N As Integer ' количество элементов массива
Private Sub ButtonGenerate_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ButtonGenerate.Click
описание переменных:
Dim Amin As Integer, Amax As Integer ' границы значений элементов массива
Dim i As Integer, j As Integer ' вспомогат.переменные
для организации цикла
' количество элементов массива и границы значений вводятся в форме
N = Val(TextN.Text)
Amin = Val(TextMin.Text)
Amax = Val(TextMax.Text)
' создание массива с помощью генератора случайных чисел
Dim Str1 As String
ListArray.Items.Clear() ' количество столбцов в поле вывода массива
For i = 0 To N - 1
Str1 = ""
For j = 0 To N - 1
Arr(i, j) = Amin + Int(Rnd() * (Amax - Amin))
Str1 = Str1 + Space(3) + Str(Arr(i, j))
Next j
ListArray.Items.Add(Str1)
Next i
End Sub
Private Sub ButtonOK_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ButtonOK.Click
' описание переменных:
Dim F As Integer ' число (вводимое) для поиска кратных элементов массива
Dim Fsum As Long ' сумма (искомая) кратных элементов массива
Dim Amin As Integer ' значение минимального элемента
Dim i As Integer, j As Integer ' вспомогат.переменные
' для организации цикла
' число для поиска кратных элементов вводится в форме
F = Val(TextF.Text)
If F = 0 Then Exit Sub
' вычисления
Fsum = 0
If N > 0 Then Amin = Arr(0, 0)
For i = 0 To N - 1
For j = 0 To N - 1
If Arr(i, j) / F = Int(Arr(i, j) / F) Then Fsum = Fsum + Arr(i, j)
If Amin > Arr(i, j) Then Amin = Arr(i, j)
Next j
Next i
' вывод результатов вычислений в поля формы
LabelSum.Text = Fsum
LabelMin.Text = Amin
' очистка полей для повторных нажатий кнопки "Вычислить"
ListMin.Items.Clear()
For i = 0 To N - 1
For j = 0 To N - 1
If Arr(i, j) = Amin Then
ListMin.Items.Add("элемент (" + Str(i + 1) + ";" + Str(j + 1) + ")")
End If
Next j
Next i
End Sub
Private Sub ButtonCancel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ButtonCancel.Click
End
End Sub
End Class
На рис.2 представлен вариант реализации формы приложения.
Для вывода суммы элементов, кратных заданному числу и минимальных элементов используются поля Label [2].
Рисунок 2 - Работа с массивами
Задание № 3. Работа со строковыми данными
Условие задачи:
Дана строка, заканчивающаяся точкой. Подсчитать, сколько в ней слов.
Решение:
Чтобы определить количество слов в строке, составим цикл, который будет проверять каждый символ в строке, начиная со второго, на совпадение с пробелом. Чтобы исключить возможность ошибки (на случай, если в одном интервале между словами окажется больше одного пробела), поставим дополнительное условие: символ, следующий до проверяемого, не должен являться пробелом. Т.е, программа будет считать пробелы, которые следуют за каким-либо другим символом. А так как интервалов между словами на 1 меньше, чем самих слов, добавим к полученной сумме пробелов единицу (но только при условии, что длина строки не равна нулю, т.е. ни одного слова не введено).
13
Текст программы
Public Class Form1
Private Sub ButtonOk_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ButtonOk.Click
' описание переменных:
Dim Str1 As String ' вводимая строка
Dim S As Integer ' количество слов в строке
Dim i As Integer ' вспомогат.переменные для организации цикла
Str1 = TextStr1.Text
S = 0
' поиск пробелов в строке:
' каждый пробел после некоторого символа добавляет слово
' (начальные пробелы и несколько пробелов подряд игнорируются)
For i = 2 To Len(Str1)
If Mid(Str1, i, 1) = " " And Mid(Str1, i - 1, 1) <> " " Then
S = S + 1
End If
Next i
If Len(Trim(Str1)) > 0 Then S = S + 1
' вывод результатов
TextS.Text = S
End Sub
Private Sub ButtonCancel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ButtonCancel.Click
End
End Sub
End Class
На рис.2 представлен вариант реализации формы приложения
Рисунок 3 - Работа со строковыми данными
Список использованной литературы
1. VisualBasic-Крепкий орешек!: Вводный курс в VisualBasic. - Режим доступа: http://vb.hut.ru
2. Иванюк, А. VisualBasic: Магия простоты
3. Культин, Н.Б VisualBasic. Освой на примерах/Н.Б. Культин. - СПб, 2004. -288с., ил
Подобные документы
Рождение и развитие Basic. Краткое описание Visual Basic for Applications. Новые возможности Visual Basic 5.0. Пример взаимодействия Excel и Visual Basic. Программирование табличных функций. Встраивание, применение функций. Формы, средства управления OLE.
реферат [20,7 K], добавлен 11.03.2010Язык программирования Visual Basic: краткая история возникновения, значение и общая характеристика. Изучение основных свойств Visual Basic, синтаксис языка. Обзор ключевых операторов Visual Basic, пользовательские процедуры и функции данного языка.
контрольная работа [36,4 K], добавлен 23.07.2014Программный проект Баз данных средствами Visual Basic 6.0. Проектирование структуры таблицы базы данных Visual Basic 6.0. Заполнение созданных таблиц БД исходными данными. Создание пользовательского меню. Вид формы и свойства элементов управления.
курсовая работа [3,0 M], добавлен 19.06.2010Архитектура и принцип действия персонального компьютера, понятие и классификация его программного обеспечения. Блок-схема алгоритма расчета квадратного трехчлена. Назначение, возможности, интерфейс и работа Windows. Программирование на Visual Basic.
реферат [33,5 K], добавлен 26.12.2009Принципы визуального программирования. Создание программы, генерирующей звук через определенные промежутки времени. Visual Basic как средство разработки прототипов программы, для разработки приложений баз данных и компонентного способа создания программ.
лабораторная работа [1,1 M], добавлен 10.12.2014Разработка игры-аналога телевизионной передачи "Кто хочет стать миллионером?" с использованием программной среды Visual Basic и средств объектно-ориентированного программирования. Описание и листинг программы, составление алгоритма и блок-схемы.
курсовая работа [253,2 K], добавлен 28.06.2009Описание Visual Basic Scripting Edition как скриптового языка программирования, интерпретируемого компонентом Windows Script Host. Правила работы языка и применение VBS-сценариев для обработки данных, управления системой, работы с учетными записями.
доклад [31,3 K], добавлен 11.05.2012Сущность основных понятий объектно-ориентированного программирования: объект, класс, полиморфизм. Блок-схема алгоритма и текст программы для вычисления площади круга, прямоугольника и трапеции. Принцип работы и результаты тестирования приложения.
курсовая работа [588,7 K], добавлен 17.07.2012Сумма двух разреженных полиномов, заданных ненулевыми коэффициентами и их номерами. Разработка программ на языке программирования Visual Basic for Applications. Вывод справочной информации. Операционная система Windows. Хранение двоичных данных.
научная работа [390,2 K], добавлен 09.03.2009Многообразие мини-игр и возможности языка Visual basic 6.0 для их реализации. Понятие мини-игр и их классификация. Элементы управления мини-игры "Реверси". Разработка прикладной программы. Создание игрового интерфейса. Написание программного кода.
курсовая работа [1,5 M], добавлен 03.06.2014