Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Laboratorny_praktikum_k_izdaniyu.doc
Скачиваний:
43
Добавлен:
17.03.2015
Размер:
522.75 Кб
Скачать

3.Задание

Разработать алгоритм и программу для решения задачи, использующей массивы.

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

  1. Дана матрица [7х7] , состоящая из целочисленных элементов. Увеличить все элементы строки с номером k на число B. Числа k и В целого типа, вводятся с клавиатуры.

  2. Вычислить среднее арифметическое k-го столбца матрицы (k - вводится с клавиатуры). Матрица размерности [5х5] состоит из вещественных элементов.

  3. Даны две последовательности целых чисел а1, а2, … аn и b1,b1 bn. Все члены последовательностей – различные числа. Найти, сколько членов первой последовательности совпадает с членами второй последовательности.

  4. Найти в матрице 4х4, состоящей из вещественных элементов, наименьший элемент и его расположение в матрице.

  5. Подсчитать количество четных и нечетных элементов матрицы 4х5 в каждом столбце и каждой строке.

  6. Найти сумму ненулевых элементов, расположенных по главной диагонали матрицы вещественных чисел [6x6] и заменить элементы по главной диагонали на 1.

  7. Посчитать среднее арифметическое матрицы (7х4) состоящей из вещественных элементов.

  8. В квадратной матрице найти по главной диагонали максимальный по модулю элемент и строку с этим элементом возвести в квадрат.

  9. В матрице [10х10] состоящей из целочисленных элементов, найти сумму положительных элементов, строки, номер которой введен с клавиатуры.

4.Методические указания по выполнению

задания

4.1 Перед выполнением лабораторной работы обучающийся должен получить индивидуальное задание.

4.2 Изучить теоретический лекционный материал и ознакомиться с описанием лабораторной работы.

4.3 Изучить массивы, их виды, операции над массивами.

4.4 Проанализировать задание для выполнения лабораторной работы.

4.5 Выполнить постановку задачи

4.6 Выполнить формализацию задачи.

4.7 Составить алгоритм решения задачи в графической форме.

4.8 Составить программу решения задачи на языке Turbo Pascal.

4.9 С помощью системы программирования Turbo Pascal составить текст программы и выполнить ее.

4.10 Проверить правильность составления программы с помощью контрольного примера.

    1. Оформить отчет по лабораторной работе.

5.Контрольные вопросы

  1. Каков порядок выполнения цикла с параметром ?

  2. Каков формат объявления типа массив ?

  3. Каков формат объявления переменной типа массив ?

  4. Как обратится к элементу массива ?

  5. Какие виды массивов Вы знаете ?

  6. Что такое генератор случайных чисел ?

  7. Как можно задать значения элементов массива или другой числовой переменной ?

  8. Какие операторы используются для работы с элементами массива ?

  9. Что такое вложенные операторы цикла и для чего их используют?

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

Комбинированный тип данных, его использование.

Массивы записей.

1.Цель работы:

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

2.Краткая теория:

Комбинированный тип данных ( тип запись)

Комбинированный тип данных или тип запись, в отличии от типа массив, позволяет объединить элементы имеющие различные типы. Элементы записи называются полями записи.

Формат объявления комбинированного типа

TYPE < тип запись > = RECORD

< Имя поля > : < тип >;

< Имя поля > : < тип >;

< Имя поля > : < тип >;

END;

Переменные комбинированного типа перед использованием должны быть объявлены одним из 2 способов:

1 способ: VAR < имя записи > : < тип запись > ;

где тип запись описан в разделе описания типов (см. выше)

2 способ: VAR < имя записи > : RECORD

< Имя поля > : < тип >;

< Имя поля > : < тип >;

< Имя поля > : < тип >;

END;

Пример 1: Допустим, необходимо хранить информацию личного дела студента:

  • Номер личного дела

  • Фамилия

  • Имя

  • Отчество

  • Дата рождения

  • Документ об образовании

  • Номер документа об образовании

  • Кем выдан

  • номер паспорта

  • кем выдан

  • номер зачетки

Подобные данные очень удобно представлять в виде записей.

Объявление типа запись

TYPE L_Delo = RECORD

N_L_Delo : integer;

Fam : string[20];

Imy : string[15];

Otch : string[15];

data : string[8];

dok : string[10];

Ndok : string[10];

VydDok: string[15];

Npas : string[10];

VydPas: string[15];

END;

Тогда объявление переменной типа запись:

VAR PerL_Delo : L_Delo;

Чтобы обратится к полю записи необходимо указать имя переменной типа запись и имя поля следующим образом:

<Имя записи> . <имя поля>

Пример 2: Присваивание значения полям записи:

PerL_Delo.N_L_Delo:=1056;

PerL_Delo.Fam:=’Иванов’;

PerL_Delo.Imy:=’Иван’;

PerL_Delo.Otch:=’Иванович’;

Пример 3: Для ввода значений в поля записи с клавиатуры

READ (PerL_Delo.N_L_Delo);

READ(PerL_Delo.Fam);

READ(PerL_Delo.Imy);

READ(PerL_Delo.Otch);

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

Массивы записей – это массивы элементами которых являются записи.

Массивы записей объявляются следующим образом:

TYPE < тип запись > = RECORD

< Имя поля > : < тип >;

< Имя поля > : < тип >;

< Имя поля > : < тип >;

END;

VAR <массив> : ARRAY [1..n] of <тип запись>;

Пример 4: Объявить массив записей

TYPE tip_zap = RECORD

FIO : STRING[25];

ZACH:INTEGER;

END;

VAR MAS : ARRAY [1..5] of tip_zap;

Тогда к полю записи обращаются так:

МАS[1].FIO:=’ИВАНОВ И.И.’; или READ (МАS[1].FIO);

Для упрощения обращения к полям некоторой записи используют оператор над записями

WITH <имя записи> do <оператор>;

Пример 5: Для предыдущего примера можно записать:

а) WITH MAS[1] DO READ (FIO);

б) WITH MAS[1] DO

BEGIN

READ (FIO);

READ (ZACH);

END;

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]