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


Полезное:

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


Категории:

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






Тема 4.8. Лабораторная работа





МОСКОВСКИЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ СВЯЗИ И ИНФОРМАТИКИ

КАФЕДРА ИНФОРМАТИКИ

Лабораторные работы по дисциплине «информатика»

Выполнил студент

Группы БИН1202 Кумецкий Павел Юрьевич

 

 

 

Тема 4.8. Лабораторная работа

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

 

 

1.

12) Сформировать двумерный массив М(4,5) по правилу: , где r - случайное число из отрезка [0;1]. Вставить после столбца с заданным номером k (0<= k <=5) столбец из единиц (значение k вводится с клавиатуры). Вывести полученный массив M.

2. В разработанном приложении ввод исходного массива может осуществляться одним из следующих способов:

· вводом с клавиатуры;

· с помощью датчика случайных чисел(M(i, j) = Rnd() * 100 – 50);

· формированием по формуле().

3.


 

 

Блок-схемы прикреплены отдельным листом

Option Strict On

Option Explicit On

Imports System.Math

Public Class Form1

'Кнопка “Заполнить массив M и выполнить задание”

Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click

Dim h As Integer

Dim n As Integer

Dim k As Integer

h = vvod(TextBox1)

n = vvod(TextBox2)

k = vvod(TextBox3)

Dim M(0 To h - 1, 0 To n - 1) As Single

zapolnenie(h, n, M)

vivod_mas(h, n, M, ListBox1)

perestanovka(h, n, M, k)

vivod_mas(h, n, M, ListBox2)

End Sub

 

Sub vivod_mas(ByVal h As Integer, ByVal n As Integer, ByVal M(,) As Single, ByRef L As ListBox)

Dim i, j As Integer

Dim z1 As String = ""

Dim s1 As String = ""

h = M.GetLength(0) - 1

n = M.GetLength(1) - 1

L.Items.Add(z1)

For i = 0 To h

z1 = ""

For j = 0 To n

If M(i, j) < 0 Then s1 = Space(3) Else s1 = Space(4)

z1 = z1 + Format(M(i, j), "0.000") + s1

Next j

L.Items.Add(z1)

Next i

z1 = ""

End Sub

 

Public Sub zapolnenie(ByVal h As Integer, ByVal n As Integer, ByVal M(,) As Single)

Dim r1 As String = ""

Dim r2 As String = ""

Dim y1 As String = ""

Dim r As Single

Dim i, j As Integer

Select Case ComboBox1.SelectedIndex

Case 0

For i = 0 To h - 1

For j = 0 To n - 1

r1 = Str(i): r2 = Str(j)

y1 = InputBox("Эл-т массива a" + r1 + "," + r2 + ",Ввод эначений эл-тов массива M()")

M(i, j) = CSng(y1)

Next j

Next i

Case 1

MessageBox.Show("числа генерируются на отрезке [-50;49] или [-149;-50] каждый раз по новому")

For i = 0 To h - 1

For j = 0 To n - 1

M(i, j) = Rnd() * 100 - 50

Next j

Next

Case 2

For i = 0 To h - 1

For j = 0 To n - 1

r = 2 * Rnd()

M(i, j) = -30 + 60 * r

Next j

Next i

End Select

End Sub

 

Sub perestanovka(ByVal h As Integer, ByVal n As Integer, ByRef M(,) As Single, ByVal K As Integer)

If K < 0 Or K > n Then

Do While K <= 0 Or K > n

MessageBox.Show("Вы ввели столец, который не входит в состав вашего массива")

K = CInt(InputBox("Введите k, удовлетвор. условию задачи"))

Loop

End If

ReDim Preserve M(0 To (h - 1), 0 To n)

For j = n To K Step -1

For i = 0 To h - 1

M(i, j) = M(i, j - 1) 'элементу строки i присваиваем элемент этой же строки,

'но из предыдущего столбца

Next i

Next j

For i = 0 To h - 1

M(i, K) = 1

Next i

End Sub

 

'Кнопка “Выход”

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

Application.Exit()

End Sub

 

'Функция ввода данных (кол-ва строк и столбцов) из TextBox

Function vvod(ByVal T As TextBox) As Integer

Return CInt(T.Text)

End Function

 

'Кнопка “Повторить’’

Private Sub Button2_Click(ByVal sender As System.Object, _

ByVal e As System.EventArgs) Handles Button2.Click

ListBox1.Items.Clear()

ListBox2.Items.Clear()

TextBox1.Text = ""

TextBox2.Text = ""

TextBox3.Text = ""

End Sub

 

End Class

 

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



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