Название: Алгоритмические языки: обработка одномерных массивов
Вид работы: лабораторная работа
Рубрика: Информатика и программирование
Размер файла: 18.88 Kb
Скачать файл: referat.me-134476.docx
Краткое описание работы: Работа с массивами, их ввод и вывод, организация программ циклической структуры. Способы описания и использования массивов, алгоритмы их сортировки, сортировка выбором и вставками. Алгоритмы поиска элемента в неупорядоченном и упорядоченном массивах.
Алгоритмические языки: обработка одномерных массивов
ЛАБОРАТОРНАЯ РАБОТА
по дисциплине “Основы программирования”
на тему
Алгоритмические языки: обработка одномерных массивов
Цель работы: получение навыков работы с массивами, их вода и вывода, закрепление навыков организации программ циклической структуры.
Постановка задачи:
1. Изучить способы описания и использования массивов, алгоритмы сортировки массивов, сортировку выбором, вставками и обменную сортировку. Так же алгоритмы поиска элемента в неупорядоченном и упорядоченном массивах.
2. Разработать алгоритм и составить программу для решения задачи соответствующего варианта.
3. Подобрать наборы тестовых данных.
Задание к работе:
1. Если в массиве нет повторяющихся элементов, то упорядочить его по возрастанию.
2. Набрать программу, отладить ее, протестировать. Распечатать текст программы и результаты ее работы на тестовых данных.
Ход выполнения работы
1. Наборы тестовых данных
Первый набор тестовых данных: {0,9,8,7,6,5,32,6,4,3}
Второй набор тестовых данных: {2,4,16,23,34,45,76,91,98,100}
2. Текстпрограммы
PROGRAM LAB5;
PROCEDURE SORT_MAS(SIZ:WORD;a:array of byte);
VAR
S:BYTE;K,i:WORD;
BEGIN
REPEAT
S:=0;
BEGIN
FOR K:=3 downTO 1 DO
BEGIN
FOR I:=0 TO (SIZ-K) DO
BEGIN
IF (A[I]>A[I+1]) THEN
BEGIN
A[I]:=A[I]+A[I+1];
A[I+1]:=A[I]-A[I+1];
A[I]:=A[I]-A[I+1];
S:=1
END
END
END
END;
UNTIL S=0;
WRITELN('Массивпослеупорядочивания: ');
WRITELN;
for k:=1 to SIZ do write(a[k],', ');
end;
VAR
powtor:array[1..256] of byte;
a:array[1..10000] of byte;
SIZ,w:WORD;
q:byte;
BEGIN
WRITELN('Введитедлинумассива ');readln(siz);
WRITELN('Введитемассив:');
for w:=1to siz do
begin
write('a[',w,']=');readln(a[w])
end;
for w:=1 to 256 do powtor[w]:=0;
for w:=1 to siz do powtor[(a[w])+1]:=powtor[(a[w])+1]+1;
w:=1;
Q:=0;
repeat
begin
if powtor[w]>1 then q:=1;;
w:=w+1
end;
until (q=1) or (w>=255);
if q=0 then sort_mas(siz,a)
ELSE
writeln('Данный массив содержит повторяющиеся элементы!')
END.
3. Результаты работы
Пример №1.
Введите длину массива
10
Введитемассив:
a[1]=0
a[2]=9
a[3]=8
a[4]=7
a[5]=6
a[6]=5
a[7]=32
a[8]=6
a[9]=4
a[10]=3
Данный массив содержит повторяющиеся элементы!
Пример №2.
Введите длину массива
10
Введите массив:
a[1]=100
a[2]=2
a[3]=4
a[4]=98
a[5]=76
a[6]=45
a[7]=23
a[8]=91
a[9]=34
a[10]=16
Массив после упорядочивания: 2,4,16,23,34,45,76,91,98,100
4. Описание ошибок, выявленных при отладке программы
При отладке программы ошибок не обнаружено.
Выводы
В ходе лабораторной работы были достигнуты следующие цели:
1. Был изучен теоретический материал по обработке массивов данных в языке программирования Pascal.
2. Изучены различные способы описания и использования массивов, алгоритмы сортировки массивов, сортировка выбором, вставками и обменная сортировка. Так же алгоритмы поиска элемента в неупорядоченном и упорядоченном массивах.
3. Разработан алгоритм и составлена программу для решения задачи соответствующего варианта.
4. Подобраны наборы тестовых данных, которые были использованы при прогоне программы на наличие ошибок.
Похожие работы
-
Обработка массивов данных в среде Turbo Pascal
Разработка программ на языке Turbo Pascal на основе использования массивов данных. Особенности хранения данных, способы объявления переменных, действия над элементами массивов, их ввод и вывод. Практическое применение одномерных и многомерных массивов.
-
Интервальные типы данных. Оператор TYPE. Массивы
Интервальный тип - это некоторый подтип порядкового типа данных (вспомним, что порядковые типы - это ShortInt, Byte, Integer, Word, LongInt, Char и Boolean).
-
Отчет по практике по Turbo Pascal
Практическое задание №1 Записать выражение на языке Паскаль. Использование стандартных функций. Оператор присваивания. Цель задания Освоение простейших конструкций языка Паскаль.
-
Массивы в языках Pascal и Basic
Министерство образования РФ Средняя школа № 4 РЕФЕРАТ по информатике Тема: «Массивы в языках Pascal и Basic» Выполнила: ученица 10 «А» класса Рудых Елена
-
Лабораторная работа №6
Цель работы: Освоение правил составления программ циклической структуры с параметром. Задание № 17 . Вычислить значение функции , по указанному графику для значений аргумента
-
Обработка одномерных массивов и матриц
Заполнение массива из целых чисел с присвоением элементам разных значений. Варианты программы с использованием различных операторов организации циклов. Определение квадрата максимального из четных элементов массива и общего числа нулевых элементов.
-
Организация ввода-вывода. Обработка массивов. Структурированные данные
Ознакомление с основными понятиями и организацией ввода-вывода, обработкой массивов. Описание одномерных и двумерных массивов. Описание строк и операции с ними. Комбинированный тип данных - записи. Характеристика записей, использующих вариантную часть.
-
Массивы в языках Pascal и Basic
Массив в Бейсике. Массив в Паскале. Действия над массивами.
-
Анализ алгоритмов нечисленной обработки данных
Общая характеристика организации массива в виде двоичного дерева. Особенности линейного и двоичного поиска заданного элемента массива. Методика упорядочения массива методом сортировки деревом. Инструкции и текст программы для нечисленной обработки данных.
-
Алгоритмические языки: использование процедур при работе с двумерными массивами
Особенности работы с процедурами и двумерными массивами, последовательность вызова процедур. Способы описания и использования многомерных массивов, назначение процедур, их описание и обращение к ним. Набор программы, ее отладка и тестирование данных.