Главная Случайная страница


Полезное:

Как сделать разговор полезным и приятным Как сделать объемную звезду своими руками Как сделать то, что делать не хочется? Как сделать погремушку Как сделать так чтобы женщины сами знакомились с вами Как сделать идею коммерческой Как сделать хорошую растяжку ног? Как сделать наш разум здоровым? Как сделать, чтобы люди обманывали меньше Вопрос 4. Как сделать так, чтобы вас уважали и ценили? Как сделать лучше себе и другим людям Как сделать свидание интересным?


Категории:

АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника






Задача 2. Дан двумерный массив (матрица) размером NxM





3.1 Постановка задачи:

 

Дан двумерный массив (матрица) размером NxM.

1. Определить сумму элементов массива с нечетными значениями индексов его элементов.

2. Найти произведение максимальных элементов массива.

3. Упорядочить массив по возрастанию элементов сверху вниз и слева направо.

 

3.2 Блок-схема:

 

 

Рисунок 5 – Блок-схема задачи 2

 

 

3.3 Текст программы:

 

Dim Am(50, 50) As Integer

 

Private Sub Command2_Click()

Form2.Visible = False

Form3.Visible = True

End Sub

 

Private Sub Command3_Click()

End

End Sub

 

Private Sub Command1_Click()

 

Picture1.Cls

Picture2.Cls

a = Val(Text1)

b = Val(Text2)

niz = Val(Text3)

verx = Val(Text4)

Randomize (verx - niz)

f = Val(Text5)

 

For i = 1 To a

strAm = ""

For j = 1 To b

Am(i, j) = niz + Int(Rnd * (verx - niz + 1))

strAm = strAm + " " + Str(Am(i, j))

Next

Picture1.Print strAm

Next

 

p = 0

s = 1

Max = Am(1, 1)

For i = 1 To a

For j = 1 To b

If Am(i, j) > Max Then Max = Am(i, j)

If i Mod 2 = 1 And j Mod 2 = 1 Then p = p + Am(i, j)

Next

Next

 

For i = 1 To a

For j = 1 To b

If Am(i, j) = Max Then s = s * Max

Next

Next

 

For i = 1 To a

For j = 1 To a

For k = 1 To b

If Am(i, j) > Am(i, k) Then

z = Am(i, j)

Am(i, j) = Am(i, k)

Am(i, k) = z

End If

Next

Next

Next

 

For i = 1 To b

For j = 1 To b

For k = 1 To a

If Am(j, i) > Am(k, i) Then

z = Am(j, i)

Am(j, i) = Am(k, i)

Am(k, i) = z

End If

Next

Next

Next

 

For i = 1 To a

strAm = ""

For j = 1 To b

strAm = strAm + " " + Str(Am(i, j))

Next

Picture2.Print strAm

Next

 

Text5.Text = p

Text6.Text = s

End Sub

 

Private Sub Form_Load()

Form6.Visible = True

Form1.Visible = False

Form2.Visible = False

Form3.Visible = False

Form4.Visible = False

Form5.Visible = False

End Sub

 

Для ввода значений переменных a (количество строк), b (количество столвцов), niz и verx (границы значений элементов массива), вывода результатов используются текстовые поля (объект TextBox).

Для ввода элементов массива (матрицы) использован генератор случайных чисел (Rnd). Для вывода элементов массива использовано графическое окно (PictureBox).

Результаты решения задачи выводятся:

- сумма элементов с нечетными индексами – в текстовое поле (объект TextBox);

- произведение максимальных элементов – в текстовое поле (объект TextBox);

- массив после упорядочивания элементов – в графическое окно (PictureBox).

 

 

 

Рисунок 6 – Решение задачи 2


Date: 2015-08-15; view: 763; Нарушение авторских прав; Помощь в написании работы --> СЮДА...



mydocx.ru - 2015-2024 year. (0.006 sec.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав - Пожаловаться на публикацию