Програмування на Visual Basic

[ виправити ] текст може містити помилки, будь ласка перевіряйте перш ніж використовувати.


Нажми чтобы узнать.
скачати

ГОУВПО

Уфимський державний авіаційний технічний університет

Кафедра Інформатики

ПОЯСНЮВАЛЬНА ЗАПИСКА

до контрольної роботи з інформатики

Програмування на Visual Basic

Уфа 2009

Завдання № 1. Сума ряду



Умова задачі:

Для числового ряду знайти

а) суму членів числового ряду при М = 10;

б) точне значення суми членів числового ряду, обчислена за формулою Sum 2 = 15е;

в) похибки обчислення суми членів числового ряду (абсолютну і відносну) по відношенню до точного значенням суми членів числового ряду.

Рішення:

Складемо блок-схему алгоритму рішення задачі (представлена ​​на малюнку зліва).

Отже, для вирішення задачі використовуємо змінні:

М (кількість членів обчислюваного числового ряду);

f (допоміжна змінна, обчислює для циклу факторіал);

Sum 1 (сума членів числового ряду);

Sum 2 (точне значення суми);

Err 1 (абсолютна похибка);

Err 2 (відносна похибка);

і визначимося з типом даних, який вони можуть містити. Значення змінних M і k будуть короткими цілими (I nteger), значення f - довгим цілим (Long), а значення змінних Sum 1, Sum 2, Err 1, Err 2 - речові подвоєною точності [].

Для введення значень змінної M, а також виведення результатів використовуються текстові поля (об'єкт TextBox). Щоб зробити поля для виведення незмінними, при визначенні характеристик поля в рядку Enable вкажемо False [].

Складемо текст програми (наведено з коментарями).

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. Знайти місця розташування (номери індексів) мінімальних елементів масиву.

Рішення:

Складемо блок-схему алгоритму рішення задачі






























Програма буде містити кілька «циклів у циклі» з причини того, що організує роботи з масивами.

Текст програми

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 - Робота з масивами

Завдання № 3. Робота з рядковими даними



Умова задачі:

Дана рядок, що закінчується крапкою. Підрахувати, скільки в ній слів.

Рішення:

Щоб визначити кількість слів у рядку, складемо цикл, який буде перевіряти кожен символ у рядку, починаючи з другого, на збіг з пропуском. Щоб виключити можливість помилки (на випадок, якщо в одному інтервалі між словами виявиться більше одного пропуску), поставимо додаткову умову: символ, наступний до перевіряється, не повинен бути пропуском. Тобто, програма буде вважати прогалини, які слідують за яким-небудь іншим символом. А так як інтервалів між словами на 1 менше, ніж самих слів, додамо до отриманої суми прогалин одиницю (але тільки за умови, що довжина рядка не дорівнює нулю, тобто жодного слова не введено).

Текст програми

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с., Іл

Посилання (links):
  • http://vb.hut.ru/
  • Додати в блог або на сайт

    Цей текст може містити помилки.

    Програмування, комп'ютери, інформатика і кібернетика | Контрольна робота
    38.9кб. | скачати


    Схожі роботи:
    Завдання з програмування на Visual Basic
    Мова програмування Visual Basic for Applications
    Табличний процесор MS Excel Мова програмування Visual Basic for Applications
    Створення програмного продукту на мові програмування Visual Basic for Applications
    Access і Visual basic for Application Excel VBA прийоми програмування
    Використання мови програмування Visual Basic for Applications VBA для обробки результатів 2
    Використання мови програмування Visual Basic for Applications VBA для обробки результатів
    Основи Visual Basic 50
    Потоки в Visual Basic
    © Усі права захищені
    написати до нас
    Рейтинг@Mail.ru