Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатика
ИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханика
ОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторика
СоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансы
ХимияЧерчениеЭкологияЭкономикаЭлектроника

проведению ЛАБОРАТОРНого занятия

Читайте также:
  1. II. Создание глоссария по теме занятия
  2. Анализ тренировочного занятия
  3. Аудиторные занятия не более 6 часов в день.
  4. В целях интенсификации учебного процесса и контроля знаний на семинарских занятиях может проводиться программированный опрос.
  5. ВАШИ ПЕРВЫЕ ЧЕТЫРЕ ЗАНЯТИЯ
  6. Директор по проведению соревнований _______________ И. Алексеев
  7. Задание для проведения занятия в интерактивной форме

Севастопольский национальный униВЕРситЕт

Ядерной энергии И промышленности

 

 

Инструктивно-методические указания

по проведению лабораторной работы №3

на тему: «Разработка проекта для обработки массива»

 

 

Севастополь

 

 

«УТВЕРЖДАЮ»

Заведующий кафедрой КС

______________________________ Н.Сапожников

«___» _____________ 2011 г.

 

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

по дисциплине «Программирование»

 

Время: 2 часа Место проведения: компьютерный класс

 

Тема: «Разработка проекта для обработки массива»

Цель: 1. Закрепить знания возможностей языка программирования для реализации вычислительного процесса

2. Привить практические навыки разработки программ

3. Получить дальнейшие навыки по отладке и тестированию программ.

4. Воспитать чувства дисциплинированности и исполнительности.

 

план Лабораторной работы

 

1. Вводная часть 05 мин.

Основная часть 70 мин.

а) контрольный опрос 15 мин.

б)выдача индивидуального задания для выполнения 5 мин.

лабораторной работы.

в) составление программ 15 мин

г) отладка программы с использованием ИСП Делфи и

выполнение контрольного примера 15 мин.

д) подготовка и защита отчета по лабораторной работе 20 мин

3. Заключительная часть 05 мин.

В результате проведения практического занятия студенты должны

Знать:

Назначение и структуру используемых компонентов;

Уметь:

1. Разрабатывать проекты для обработки массивов;

2. Владеть приемами работы в среде Delphi.

 

Организационно-методические указания по

проведению ЛАБОРАТОРНого занятия

 

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

Составить отчет. Отчет должен содержать:

1. Постановка задачи.

2. Схема программы (модуля, процедуры) по согласованию с преподавателем.

3. Текст программы с комментарием.

4. Тестовый пример.

Защитить отчет.

Варианты заданий

 

Задачи, предлагаемые для решения, двух уровней. Первый уровень – обработка одномерного массива. Предполагает оценку не выше «хорошо».

Второй уровень – обработка двухмерного массива. Предполагает оценку «отлично». Теоритические ведения, необходимые при разработке проекта, смотреть в приложении 1.

 

Варианты первого уровня.

1. Переставить первый отрицательный и последний положительный, если таких нет, то сообщить об этом.

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

3. Элемент, стоящий перед 0, заменить на заданное число А. Если нулю равен первый элемент массива, то заменить числом А последний элемент массива.

4. Найти количество элементов больших среднего арифметического элементов данного массива.

5. Найти среднее арифметическое положительных элементов.

6. Получить новый массив В, в котором элементы равны произведению элементов массива А на их номера.

7. Разделить все элементы массива на заданное число. Исходный массив не изменять.

8. Заменить значения всех элементов таблицы суммой всех предыдущих элементов.

9. Увеличить значения каждого элемента таблицы на сумму всех предыдущих элементов.

10. Составить алгоритм, увеличивающий все элементы таблицы, значения которых меньше -10, на 5.

11. Составить алгоритм, находящий сумму элементов между первым и вторым элементами таблицы, имеющими нулевое значение.

12. Составить алгоритм, уменьшающий все элементы таблицы, значения которых меньше 40, но больше 10, на 15

13. Составить алгоритм, определяющий, сколько раз в таблице встречаются случаи, когда соседние элементы имеют различные знаки.

14. Составить алгоритм, находящий сумму элементов и их количество до первой перемены знака.

15. В заданной целочисленной таблице найти элементы, сумма которых равна данному числу, в предположении, что такие существуют.

16. Дана таблица. Составить алгоритм, находящий в ней произведение элементов, значения которых больше 10.

17. Составить алгоритм, находящий номер последнего положительного элемента в таблице.

18. Составить алгоритм, находящий сумму элементов таблицы, значение которых больше 5, а номера кратны трем.

19. Составить алгоритм, находящий номер второго отрицательного элемента в таблице.

20. Составить алгоритм, подсчитывающий количество различных элементов в таблице.

 

Варианты второго уровня.

1. В заданной матрице определить максимальные значения в каждой строке и минимальные значения в каждом столбце. Разместить их в двух массивах Максима[n] и Минимум[n].

2. В заданной матрице определить сумму каждой строки и произведение каждого столбца. Разместить их в двух массивах Сумма[n] и Произведение[n].

3. В заданной матрице определить произведение отрицательных значений в каждом столбце. Организовать из них массив.

4. Найти сумму и количество положительных элементов, лежащих выше главной диагонали, в каждом столбце матрицы.

5. В заданной матрице каждый элемент столбца разделить на максимальное значение в этом столбце. Новый массив вывести на печать.

6. В заданной матрице определить сумму минимальных значений каждой строки. Организовать из них массив.

7. В заданной матрице определить произведение положительных значений в каждом столбце. Организовать из них массив.

8. В заданной матрице определить сумму максимальных значений каждого столбца. Организовать из них массив.

9. В заданной матрице каждый элемент столбца разделить на минимальное значение в этом столбце. Новый массив вывести на печать.

10. В каждой строке поменять местами первый элемент и максимальный по модулю.

11. В каждой строке переставить первый отрицательный и последний положительный, если таких нет, то сообщить об этом.

12. Дана матрица. Составить новую матрицу элементы первой строки, которой равны количеству отрицательных элементов, а элементы второй строки - сумме отрицательных элементов соответствующего столбца исходной матрицы.

13. Дана матрица. Составить таблицу, каждый элемент которой равен максимальному элементу соответствующей строки матрицы.

14. Для заданной квадратной матрицы сформируйте одномерную таблицу из её диагональных элементов.

15. Дана матрица. Составить таблицу, каждый элемент которой равен среднему арифметическому отрицательных элементов соответствующего столбца матрицы.

16. Дана матрица. Составить таблицу, каждый элемент которой равен количеству элементов, значения которых больше заданного числа А, соответствующей строки матрицы.

17. В квадратной матрице для каждой строки найти минимальный элемент и переставить его с элементом, стоящим в этой строке на главной диагонали.

18. В квадратной матрице найти сумму положительных элементов, лежащих на и выше главной диагонали и расположенных в четных столбцах.

19. Дана матрица. Элементы первой строки - количество осадков в соответствующий день, второй строки - сила ветра в этот день. Найти, был ли в эти дни ураган? (ураган - когда самый сильный ветер был в самый дождливый день).

20. Седловой точкой матрицы называется элемент, являющийся наименьшим в своей строке и одновременно наибольшим в своём столбце. Для заданной матрицы составить алгоритм, находящий индексы седловой точки.

 

 


Приложение 1

Работа с таблицами

TStringGrid – текстовая таблица

Компонент TStringGrid предназначен для создания таблиц, в ячейках которых располагаются произвольные текстовые строки. Таблица делится на две части – фиксированную и рабочую. Фиксированная часть служит для показа заголовков колонок и рядов, а так же для ручного управления их размерами. Обычно фиксированная часть занимает левую колонку и верхний ряд таблицы, однако с помощью свойств FixedCols и FixedRows можно задать другое количество фиксированных колонок и рядов.

Рабочая часть – это остальная часть таблицы. Она может содержать произвольное количество колонок и рядов, более того, эти величины могут изменяться программно. Если рабочая часть таблицы не помещается целиком на экране, то автоматически появляется полоса прокрутки.

Свойства компонента:

Свойство Описание
BorderStyle Определяет рамку компонента: bsNone – нет рамки, bsSingle – рамка толщиной 1 пиксел
Cells [ col, row ] Определяет содержимое ячейки с табличными координатами (col,row)
Col Содержит номер колонки с ячейкой, имеющей фокус ввода
ColCount Содержит количество колонок таблицы
ColWidths Содержит ширину колонки с индексом Index
EditorMode Разрешает/запрещает редактирование ячеек. Игнорируется, если свойство Options включает значение goAlwayseShowEditor или не включает значение goEditing
FixedColor Определяет цвет фиксированной зоны
FixedCols Определяет количество колонок фиксированной зоны
FixedRows Определяет количество рядов фиксированной зоны
GridHeight Содержит значение высоты таблицы
GridLineWidth Определяет ширину линий, расчерчивающих таблицу
GridWidth Содержит значение ширины таблицы
Row Содержит номер ряда ячейки, имеющий фокус ввода
RowCount Содержит количество рядов таблицы
RowHeights Содержит значение высоты ряда с индексом Index
Rows Содержит все текстовые строки ряда с индексом Index
ScrollBars Определяет полосы прокрутки: ssNone – нет полос; ssHorizontal – в таблицу вставляется горизонтальная полоса; ssVertical – вставляется вертикальная полоса; ssBoth – вставляются обе полосы.

Для обращения к ячейке [0,0] нужно использовать свойство Cells:

StringGrid1.Cells[0,0]:=IntToStr(5)

Массивы

Массив – упорядоченный набор однотипных значений – компонент массива. Тип компонент называется базовым типом массива.

В Delphi массив рассматривается как переменная структурированного типа. Массиву присваивается имя, посредством которого можно ссылаться на него, как на единое целое, так и на любую из его компонент.

Описание массивов

VAR <имя переменной>: ARRAY [<type1, type2,…>] OF <type>;

[<type1, type2,…>] типы индексов

< type > - базовый тип

Количество типов индексов определяет размерность массива. Тип индексов может быть любым, кроме Real. Базовым типом может быть любой тип данных.

Примеры описания массивов

Var a: array[1..10] of integer; - последовательность целых чисел

Var t: array[1..2,1..2] of real; - таблица 2х2.

Var a1: array [‘A’..’Z’] of word;

Обращение к элементам массива

a[1] – первый элемент из массива a.

t[1,2] – элемент из первой строки второго столбца.

Индексы можно задавать либо конкретными значениями, либо выражениями.

i:=1; a[i] - первый элемент из массива a; a[i+1] – второй элемент массива а.

В динамических массивах не указывается размерность в описании:

Например, var a: array of integer;

Размерность устанавливается в теле программы: SetLength(a, 10); - длинна массива а – 10 элементов.

 


Дата добавления: 2015-10-30; просмотров: 73 | Нарушение авторских прав


<== предыдущая страница | следующая страница ==>
Укажите Ваш уровень дохода в гривнах на одного члена семьи в месяц.| Создание/модификация с помощью синтаксиса квадратных скобок

mybiblioteka.su - 2015-2024 год. (0.017 сек.)