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

Лабы по КП / Лаба 3

.doc
Скачиваний:
16
Добавлен:
16.12.2013
Размер:
138.24 Кб
Скачать

Федеральное агентство по образованию

Государственное образовательное учреждение

Высшего профессионального образования

«Государственный Университет Управления»

Институт Информационных Систем Управления

Кафедра компьютерных технологий

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

По дисциплине «Компьютерная подготовка»

4 вариант

Выполнила:

студентка ИНиМЭ,

Проверил:

Канаков А.Г.

МОСКВА 2005

Дана матрица M*М. Определить максимальное число среди отрицательных и расположенных выше главной диагонали и минимальное среди положительных – ниже главной диагонали. Поменять их местами. Вывести на экран матрицу до и после перестановки, а так же значения найденных цифр и их координаты.

Option Explicit ‘заставляет явно объявлять все переменные

Dim I As Integer ‘объявляем циклическую переменную I

Dim J As Integer ‘объявляем циклическую переменную J

Dim MAX As Integer ‘объявляем MAX как числовую переменную

Dim kMAX As Integer ‘объявляем kMAX как числовую переменную

Dim nMAX As Integer ‘объявляем nMAX как числовую переменную

Dim MIN As Integer ‘объявляем MIN как числовую переменную

Dim kMIN As Integer ‘объявляем kMIN как числовую переменную

Dim nMIN As Integer ‘объявляем nMIN как числовую переменную

Dim SP As String ‘объявляем SP как текстовую переменную

Dim B As Single ‘объявляем B как числовую переменную

Private Sub Command1_Click() ‘начинаем процедуру

Dim N As Integer ‘объявляем N как числовую переменную

Dim A() As Integer ‘объявляем динамический массив значений типа Integer

Dim MAX As Single ‘объявляем MAX как числовую переменную

Dim kMAX As Integer ‘объявляем kMAX как числовую переменную

Dim nMAX As Integer ‘объявляем nMAX как числовую переменную

Dim MIN As Single ‘объявляем MIN как числовую переменную

Dim kMIN As Integer ‘объявляем kMIN как числовую переменную

Dim nMIN As Integer ‘объявляем nMIN как числовую переменную

Randomize ‘инициализирует генератор случайных чисел

N = InputBox("N=") ‘выводим запрос о размере массива

ReDim A(1 To N, 1 To N) ‘переопределяем массив A

‘заполнение массива случайными числами

For I = 1 To N

For J = 1 To N ‘открываем цикл для всех элементов массива

A(I, J) = Int(-100 + Rnd * 200) ‘

Next J

Next I ‘закрываем цикл

P1 N, A() ‘вызов процедуры вывода на экран элементов массива

Text1.Text = SP ‘вывод результатов работы процедуры P1 на экран

P2 MAX, nMAX, kMAX, N, A() ‘вызов процедуры нахождение максимального числа

Text3.Text = MAX ‘вывод результатов работы процедуры P2 на экран

Text4.Text = nMAX ‘вывод результатов работы процедуры P2 на экран

Text5.Text = kMAX ‘вывод результатов работы процедуры P2 на экран

P3 MIN, nMIN, kMIN, N, A() ‘вызов процедуры нахождения минимального числа

Text6.Text = MIN ‘вывод результатов работы процедуры P3 на экран

Text7.Text = nMIN ‘вывод результатов работы процедуры P3 на экран

Text8.Text = kMIN ‘вывод результатов работы процедуры P3 на экран

‘замена перемнных

B = A(nMIN, kMIN) ‘

A(nMIN, kMIN) = A(nMAX, kMAX) ‘

A(nMAX, kMAX) = B ‘

P1 N, A() ‘вызов процедуры вывода на экран элементов массива

Text2.Text = SP ‘вывод результатов работы процедуры P1 на экран

End Sub

Private Sub P1(N1 As Integer, A1() As Integer) ‘процедура вывода на экран элементов массива

SP = "" ‘

For I = 1 To N1

For J = 1 To N1 ‘открываем цикл для всех элементов массива

SP = SP + Str(A1(I, J)) + " " ‘

Next J ‘

SP = SP + vbCrLf ‘

Next I ‘закрываем цикл

End Sub ‘

Private Sub P2(MAX1 As Single, nMAX1 As Integer, kMAX1 As Integer, N2 As Integer, A2() As Integer) ‘процедура нахождения максимального числа

MAX1 = -1E+38 ‘

For I = 1 To N2

For J = 1 To N2 ‘открываем цикл для всех элементов массива

If I < J And A2(I, J) < 0 And A2(I, J) > MAX1 Then ‘

MAX1 = A2(I, J) ‘

nMAX1 = I ‘

kMAX1 = J ‘

End If ‘

Next J

Next I ‘закрываем цикл

End Sub ‘

Private Sub P3(MIN1 As Single, nMIN1 As Integer, kMIN1 As Integer, N3 As Integer, A3() As Integer) ‘

MIN1 = 1E+38 ‘

For I = 1 To N3

For J = 1 To N3 ‘открываем цикл для всех элементов массива

If I > J And A3(I, J) > 0 And A3(I, J) < MIN1 Then ‘

MIN1 = A3(I, J) ‘

nMIN1 = I ‘

kMIN1 = J ‘

End If ‘

Next J

Next I ‘закрываем цикл

End Sub ‘

Private Sub Command2_Click()‘

End ‘

End Sub ‘

Соседние файлы в папке Лабы по КП