Добавил:
Developer Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

7 лаба

.docx
Скачиваний:
0
Добавлен:
02.01.2024
Размер:
163.72 Кб
Скачать

Федеральное агентство связи

Ордена Трудового Красного Знамени

федеральное бюджетное образовательное учреждение высшего образования

«Московский Технический Университет Связи и Информатики»

(МТУСИ)

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

Лабораторная работа № 7

Тема:

«Программирование алгоритмов формирования и обработки одномерных массивов»

Вариант 00

Выполнил:

Великий студент

-----

Москва 0000

3)

4) формализация и уточнения

  1. Заполнение и преобразование одномерного массива различными способами.

  2. Введите значения одномерного массива натуральных чисел a(n), используя различные алгоритмы заполнения массива, и сформируйте его. Далее осуществите преобразование сформированного массива, используя различные методы обработки одномерных массивов, и вычислите одну из заданных характеристик сформированного массива

  1. В разрабатываемом приложении ввод значений исходного массива (процедура vvod()) может осуществляться одним из следующих способов: вводом с клавиатуры; с помощью датчика случайных чисел; формированием по формуле.

  2. Преобразование исходного массива может осуществляться несколькими способами: сортировка по возрастанию методом «пузырька»; сортировка по убыванию методом «выбора»; удаление отрицательных элементов

  3. Разработайте форму приложения, которая может иметь такой же

вид, как на рис. 4.7.7-1.

5.1) форма

5.2) схема алгоритма

5.3) код проекта

Option Strict On

Option Explicit On

Public Class Form1

Function vvodint(ByVal T As TextBox) As Integer

Return CInt(Val(T.Text))

End Function

Sub vivodint(ByVal Z As Integer, ByVal T As TextBox)

T.Text = CStr(Z)

End Sub

Sub vvod(ByRef a() As Integer)

Dim i As Integer

For i = 0 To UBound(a) - 1

a(i) = CInt(Val(InputBox(" ", "Введите элемент массива")))

Next

End Sub

Sub Rnd1(ByRef x() As Integer)

Dim i As Integer

Randomize()

For i = 0 To UBound(x)

x(i) = CInt(Rnd() * 30 - 15)

Next i

ReDim Preserve x(i)

End Sub

Sub vivod(ByVal str As Integer, ByVal tb As TextBox)

tb.Text = CStr(str)

End Sub

Sub Summa(Byref a() As Integer, ByRef s As Integer, ByRef x() As Integer)

Dim i, k As Integer

Dim nach, kon As Integer

For i = 0 To UBound(a)

If a(i) > 0 Then

kon = i

End If

Next i

For i = 0 To UBound(a)

If a(i) > 0 Then

nach = i

Exit For

End If

Next i

s = 0

For i = nach + 1 To kon - 1

s = s + a(i)

x(k) = a(i)

k = k + 1

Next i

ReDim Preserve x(k)

End Sub

Sub printLB(ByRef a() As Integer, ByRef l As ListBox)

Dim i As Integer

Dim m As String = ""

For i = 0 To UBound(a) - 1

l.Items.Add(Format(a(i), "00"))

Next i

End Sub

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click

Dim n, x, y, s1 As Integer

n = CInt(TextBox3.Text)

Dim a(n) As Integer

x = vvodint(TextBox1)

y = vvodint(TextBox2)

Rnd1(a)

printLB(a, ListBox2)

Summa(a, s1, a)

printLB(a, ListBox3)

vivodint(s1, TextBox4)

End Sub

Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button1.Click

End

End Sub

End Class

6) результат

7) проверка результат

Соседние файлы в предмете Информатика