Программирование на BASIC / Visual Basic / Лабораторные работы. Вариант 11 / лаба 5
.docФедеральное агентство по образованию
Государственное образовательное учреждение
профессионального высшего обучения
Уфимский государственный авиационный университет
Кафедра информатики
Отчет по лабораторной работе № 5
По теме «Работа с массивами»
Выполнил:
Проверила: старший преподаватель Хамзина Е.А.
Уфа 2006
ОТЧЕТ
ЦЕЛЬ РАБОТЫ
Целью работы является изучение возможностей разработки приложений и получение практических навыков решения типовых задач с использованием одномерных и двумерных массивов.
ЗАДАНИЕ
1. Дан массив целых чисел из n элементов, заполненный случайным образом числами из промежутка [-100,200]. Найти сумму четных элементов, значения которых больше заданного числа.
2. Найти количество тех элементов, значения которых отрицательны и по модулю не превосходят заданного числа А.
3. Найти номер первой пары соседних элементов с разными знаками.
ТАБЛИЦА
Объект |
Свойство |
Значение |
Form1 |
Caption |
первый уровень сложности |
Text1 |
Text |
- |
Text2 |
- |
|
Text3 |
- |
|
Text4 |
- |
|
Text5 |
- |
|
Label1 |
Caption |
a |
Label2 |
b |
|
Label3 |
N |
|
Label4 |
x |
|
Label5 |
a1 |
|
Label6 |
исходный массив |
|
Label7 |
сумма четных элементов |
|
Label8 |
2 |
|
Label9 |
номер первой пары с разными знаками |
|
Command1 |
вычислить |
|
Picture1 |
- |
|
Picture2 |
- |
|
Picture3 |
- |
|
Picture4 |
- |
ИНТЕРФЕЙС
КОД ПРОГРАММЫ
Dim a As Integer, b As Integer, n As Integer, c(1 To 50) As Integer, x As Integer, a1 As Integer, k As Integer, i As Integer
Private Sub Command1_Click()
a = Val(Text1)
b = Val(Text2)
n = Val(Text3)
x = Val(Text4)
a1 = Val(Text5)
For i = 1 To n
c(i) = Int((b - a + 1) * Rnd + a)
Picture1.Print c(i)
Next i
s = 0
For i = 1 To n
If Abs(c(i)) Mod 2 = 0 And c(i) > x Then
s = s + c(i)
End If
Next i
Picture2.Print s
k = 0
For i = 1 To n
If (c(i) < 0) And (Abs(c(i)) <= a1) Then
k = k + 1
End If
Next i
Picture3.Print k
For i = 1 To n - 1
If c(i) * c(i + 1) < 0 Then
Picture4.Print i
Exit For
End If
Next i
End Sub
ЗАДАНИЕ
1. Дан двумерный массив размером n*m, заполненный случайными числами. Изменить массив путем деления всех его элементов на максимальный по модулю элемент.
2. Заполнить массив 6*6 по правилу:
1 |
2 |
3 |
4 |
5 |
6 |
2 |
3 |
4 |
5 |
6 |
1 |
3 |
4 |
5 |
6 |
1 |
2 |
4 |
5 |
6 |
1 |
2 |
3 |
5 |
6 |
1 |
2 |
3 |
4 |
6 |
1 |
2 |
3 |
4 |
5 |
ТАБЛИЦА
Объект |
Свойство |
Значение |
Form1 |
Caption |
Лаба 5 |
Text1 |
Text |
- |
Label1 |
Caption |
N |
Label2 |
массив |
|
Command1 |
ВЫЧИСЛИТЬ |
|
Picture1 |
- |
ИНТЕРФЕЙС
КОД ПРОГРАММЫ
Dim c(1 To 10, 1 To 10) As Integer
Private Sub Command1_Click()
n = Val(Text1.Text)
For i = 1 To n
For g = 1 To n
c(i, g) = i + g - 1
If (i + g - 1) > n Then c(i, g) = c(i, g) - n
Picture1.Print c(i, g);
Next g
Picture1.Print
Next i
End Sub
ВОПРОСЫ
1. Что такое массив?
2. Что называется размером массива?
3. Могут ли элементы одного и того же массива иметь разный тип?
4. Как выполняется обращение к элементам массива?
5. Что понимается под диапазоном значений индекса массива?
6. Как задается размерность массива при его описании?
7. Какое значение принимает нижняя граница диапазона значений индекса по умолчанию?
8. Чем ограничена верхняя граница диапазона значений индекса?
9. Как можно организовать ввод элементов одномерного массива?
10. Как можно организовать ввод элементов двумерного массива?
11. Как можно организовать вывод элементов одномерного массива?
12. Как можно организовать вывод элементов двумерного массива?
13. Для чего при работе с массивами используется функция Split?
14. Как организовать вывод элементов двумерного массива в таблицу?