lab_inf / лабораторная работа по информатике №5
Федеральное агентство по образованию, государственное образовательное учреждение высшего профессионального образования Новгородский Государственный Университет имени Ярослава Мудрого.
Кафедра автомобильного транспорта.
Отчёт по лабораторной работе №5
«Обработка одномерных массивов»
студент гр. 2061
Цель работы — овладение практическими навыками работы с массивами, особенностями их ввода и вывода, приобретение дальнейших навыков по организации программ циклической структуры с использованием приемов программирования.
Задание к работе:
1. Обработать на ЭВМ массив в соответствии с вариантом задания.
2. Проверить правильность выполнения программы с помощью тестового варианта.
Условия и ограничения
Найти максимальный и минимальный элементы массива D и поменять их местами.
Тестовый набор данных:
N=5; D[1]=2 D[2]=1 D[3]=4 D[4]=8 D[5]=6;
Полученный массив D[1]=2 D[2]=8 D[3]=4 D[4]=1 D[5]=6
Спецификация данных:
Имя в программе

Текст программы:

Протокол выполнения программы:

Контрольные вопросы:
1. Указать особенности программ, использующих массивы.
Под массивы выделяется непрерывное место в оперативной памяти,массивы всегда объявляются и начинаются с нуля.В некоторых языках выход массива за свои пределы не проверяется.
2. Какие операторы языка можно использовать для описания массивов?
Оператор присваивания,описания типа.
3. В чем состоит особенность организации цикла при обработке массивов?
Цикл выполняется до тех пор пока значение порядкового номера элемента массива не станет равным числу элементов массива. По умолчанию шаг изменения номера элемента равен 1 или -1.
4. В чем состоит особенность использования приемов программирования при обработке массивов?
При работе с массивами, особенно большого размера, обычно выборочно изменяют отдельные компоненты, а не строят заново все составное значение. При этом переменная- массив рассматривается как совокупность составляющих её переменных «с индексами» и допускается присваивание значений каждому из компонентов.
5. Указать особенности ввода и вывода массивов.
Ввод значений элементов массива с клавиатуры используется обычно тогда, когда между элементами не наблюдается никакой зависимости.Выводятся элементы массива последовательно,согласно своему порядковому номеру.
Обработка одномерных массивов
Алгоритм расположения в массиве R сначала положительных элементов, затем отрицательнов элементов массива Z. Операторы языка, применяемые для описания массивов. Использование приёмов программирования при обработке массивов, способы ввода и вывода.
| Рубрика | Программирование, компьютеры и кибернетика |
| Вид | лабораторная работа |
| Язык | русский |
| Дата добавления | 23.12.2011 |
| Размер файла | 23,0 K |
- посмотреть текст работы
- скачать работу можно здесь
- полная информация о работе
- весь список подобных работ
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Федеральное агентство по образованию
Государственное образовательное учреждение высшего профессионального образования
Новгородский государственный университет имени Ярослава Мудрого
Отчет по лабораторной работе по теме:
Обработка одномерных массивов
Цель работы — овладение практическими навыками работы с массивами, особенностями их ввода и вывода, приобретение дальнейших навыков по организации программ циклической структуры с использованием приемов программирования.
Задания для самостоятельной подготовки
— способы описания размеров массивов на языке программирования;
— способы ввода и вывода массивов;
— реализацию на конкретном языке программирования приемов накопления суммы или произведения, запоминания результатов, нахождения наибольшего и наименьшего.
Разработать алгоритм решения в соответствии с заданием.
Составить программу решения задачи.
Подготовить тест для проверки программы.
Задание к работе
Обработать на ЭВМ массив в соответствии с вариантом задания.
массив программирование элемент алгоритм
Имя в программе
var z:array[1..n] of integer;
for i:=1 to n do begin
Протокол выполнения работы:
1. Указать особенности программ, использующих массивы.
Массив должен быть объявлен в разделе объявления переменных;
доступ к элементу массива осуществляется путем указания индекса (номера) элемента, в качестве которого можно использовать выражение целого типа, например, целую константу или переменную типа integer.
2. Какие операторы языка можно использовать для описания массивов?
Описание массива в целом должно определять его тип, который может задаваться и неявно, число его измерений и границы каждого измерения. Для обозначения отдельного элемента массива, к имени массива добавляется список индексов, позволяющий осуществлять доступ к конкретному элементу.
Неявное описание: : array [тип индексов] of ;
Явное описание: Type =array[тип индексов] of
3. В чём состоит особенность использования приёмов программирования при обработке массивов? При работе с массивами, особенно большого размера, обычно выборочно изменяют отдельные компоненты, а не строят заново все составное значение. При этом переменная- массив рассматривается как совокупность составляющих её переменных «с индексами» и допускается присваивание значений каждому из компонентов.
4. Указать особенности ввода и вывода массивов. Для ввода, вывода и обработки массивов удобно применять инструкции циклов (for, while, repeat).
Доступ к элементу массива осуществляется путем указания индекса (номера) элемента, в качестве которого можно использовать выражение целого типа, например, целую константу или переменную типа integer.
Размещено на Allbest.ru
Подобные документы
Обработка одномерных массивов. Выделение минимального и максимального элементов массива
Разработка и реализация типовых алгоритмов обработки одномерных массивов на языке Delphi. Максимальный и минимальный элемент массива. Значение и расположение элементов массива. Элементы массива, находящиеся перед максимальным или минимальным элементом.
Одномерные массивы
Понятие массива и правила описания массивов в программах на языке С. Рассмотрение основных алгоритмов обработки одномерных массивов. Примеры программ на языке С для всех рассмотренных алгоритмов. Примеры решения задач по обработке одномерных массивов.
Организация ввода-вывода. Обработка массивов. Структурированные данные
Ознакомление с основными понятиями и организацией ввода-вывода, обработкой массивов. Описание одномерных и двумерных массивов. Описание строк и операции с ними. Комбинированный тип данных — записи. Характеристика записей, использующих вариантную часть.
Обработка массивов данных в среде Turbo Pascal
Разработка программ на языке Turbo Pascal на основе использования массивов данных. Особенности хранения данных, способы объявления переменных, действия над элементами массивов, их ввод и вывод. Практическое применение одномерных и многомерных массивов.
Разработка и отладка программ с использованием языка программирования C++
Изучение элементов языка С++, программирование разветвлений и циклов с использованием операторов условного и перехода. Обработка одномерных массивов. Поиск максимального элемента массива с заданной размерностью. Листинги программы и результатов.
Работа со структурами в языке программирования Си++
Структура – это объединение одного либо более объектов (переменных, массивов, указателей, других структур). Понятие структурной переменной. Создание массивов структур. Использование вложенных структур в виде элементов массивов person, date, pibm.
Массивы. Двумерные массивы
Широкое использование компьютерных и информационных технологий. Концепции типов данных. Алгоритмы сортировки одномерных массивов. Описание двумерного массива Паскаля. Методы доступа к элементам массивов. Индексные, динамические и гетерогенные массивы.
Обработка одномерных массивов и матриц
Заполнение массива из целых чисел с присвоением элементам разных значений. Варианты программы с использованием различных операторов организации циклов. Определение квадрата максимального из четных элементов массива и общего числа нулевых элементов.
Алгоритмические языки: обработка одномерных массивов
Работа с массивами, их ввод и вывод, организация программ циклической структуры. Способы описания и использования массивов, алгоритмы их сортировки, сортировка выбором и вставками. Алгоритмы поиска элемента в неупорядоченном и упорядоченном массивах.
Сортировка массивов
Реализация различных методов сортировки. Алгоритмические языки программирования. Обработка большого числа единообразно организованных данных. Алгоритмы сортировки массивов. Анализ проблем реализации и использования различных видов сортировок массивов.

- главная
- рубрики
- по алфавиту
- вернуться в начало страницы
- вернуться к началу текста
- вернуться к подобным работам
- весь список подобных работ
- скачать работу можно здесь
- сколько стоит заказать работу?
Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.
ЛАБОРАТОРНАЯ РАБОТА № 5 ОДНОМЕРНЫЕ МАССИВЫ
Цель работы – овладеть практическими навыками работы с массивами, особенностями их ввода и вывода, приобрести дальнейшие навыки по организации программ циклической структуры.
Задания
1. Изучить: а) способы описания размеров массивов на языке программирования; б)способы ввода и вывода массивов; в) реализацию на конкретном языке программирования приемов на- копления суммы или произведения, запоминания результатов, нахождения наибольшего и наименьшего. 2. Разработать алгоритм решения в соответствии с заданием. 3. Составить программу решения задачи. 4. Подготовить тест для проверки программы. Контрольныевопросы 1. Указать особенности программ, использующих массивы. 2. Какие операторы языка можно использовать для описания массивов? 3. В чем состоит особенность организации цикла при обработке массивов? 4. В чем состоит особенность использования приемов программирования при обработке массивов? 5. Указать особенности ввода и вывода массивов. 6. Что представляет собой одномерный массив? 7. Индекс первого элемента массива всегда равен нулю. Верно ли это? 8. Предусмотрена ли в С++ проверка «нерушимости» границ массива? 9. Каждая размерность многомерного массива в С++ заключается в собственную пару квадратных скобок. Верно ли это? 10. Покажите, как объявить двумерный целочисленный массив с именем mas размерностью 10 х 8? 11. Покажите, как получить доступ к элементу i 0 ,j 0 массива x . 12. Может ли содержать массив переменные нескольких типов? Вариантызаданий 1. Минимальный элемент одномерного массива A заменить на третий отрицательный элемент. Третий отрицательный искать от минимального элемента.
| Языки программирования. Метод. указания по лаб. работам | -26- |
ЛАБОРАТОРНАЯ РАБОТА № 5 ОДНОМЕРНЫЕ МАССИВЫ Варианты заданий 2. Подсчитать количество и сумму положительных элементов одномерного массива. 3. Вычислить среднее арифметическое положительных элементов одномерного массива. Переставить первую и вторую цифру у этого значения и элементы массива, равные нулю, заменить этим числом. 4. Вычислить среднее геометрическое положительных элементов одномерного массива. Три первых цифры десятичной части этого числа записать в виде целого числа и элементы массива равные нулю заменить этим числом. 5. Переписать положительные элементы одномерного массива A в массив B, а отрицательные – в массив C. 6. Переписать элементы одномерного массива A, попадающие в интервал [2, 6], в массив B. 7. Выбрать из одномерного массива A элементы, произведение которых на их номер превышает число 10. 8. Даны два массива. Найти наименьшее число из первого массива среди чисел, которые не входят в первый массив. 9. Дан массив. Удалите из массива наименьший и наибольший элементы, сдвинув все оставшиеся элементы к началу массива. 10. Даны три массива. Выдать элементы, которые встречаются в первом и во втором массивах, но не встречаются в третьем. 11. Переставить максимальный и минимальный элементы в массиве. 12. Даны три массива. Выдать элементы, которые встречаются только в одном из них. 13. Дан массив. Нулевое значение массива заменить элементом, значение которого ближе к индексу этого элемента. 14. В одномерном массиве найти максимальное произведение двух рядом стоящих чисел. 15. Найти разность максимального и минимального элементов одномерного массива A и заменить этим значением нули в массиве. 16. Заполнить массивы B и C, переписав в массив B все четные числа из заданного целочисленного одномерного массива A, а в массив C – все нечетные числа. 17. Поместить в массив B номера положительных элементов одномерного массива A. 18. Найти произведение элементов одномерного массива, попадающих в интервал [0, 10] . 19. Найти сумму элементов одномерного массива, попадающих в интервал [0, 10]. 20. Подсчитать количество элементов целочисленного массива, кратных трем. 21. Для одномерного целочисленного массива определить, является ли его сумма четным числом. 22. В одномерном массиве найти минимальное произведение двух рядом стоящих чисел.
| Языки программирования. Метод. указания по лаб. работам | -27- |
ЛАБОРАТОРНАЯ РАБОТА № 5 ОДНОМЕРНЫЕ МАССИВЫ Варианты заданий 23. Для одномерного массива A вычислить наибольшее значение модуля разности между соседними элементами. 24. Дан массив целых чисел. Все числа этого массива, которые заканчиваются на 6, уменьшить в 2 раза. 25. Дан массив целых чисел. Элементы массива, сумма цифр которых равна 6, разделить на 3. 26. Дан массив из n действительных чисел. С клавиатуры вводится число k . Удалить из массива все элементы, целая часть которых больше k . 27. Дан массив из n элементов. Вывести на экран элементы, расположенные между максимальным и минимальным элементами массива. 28. Дан массив из n элементов. Отсортировать массив относительно квадратов его элементов. 29. Дан массив из n элементов. Вывести массив в порядке возрастания, причем сначала выводить нечетные его элемента, а затем – четные. 30. Массив из n элементов. Вывести массив в порядке убывания, причем сначала выводить элементы, стоящие на четных местах, а затем – на нечетных. 31. Массив из n элементов. Вывести таблицу встречаемости элементов в массиве. Например: 2 5 7 5 2 4 3 7 7 2 2 (3), 3 (1), 4 (1), 5 (2), 7 (3). 32. Дан массив из n элементов. Сформировать второй массив с элементами, которые расположены между максимальным и минимальным элементами массива. 33. Дан массив из n элементов. Сформировать второй массив с элементами, которые расположены между первым положительным и последним отрицательным. Примеррешениявариантазадания Дан одномерный массив x[n], где n – размер массива. Найти k– й отрицательный элемент массива. Анализ задачи. 1. Начальные данные: а) константа n , которая определяет размер массива; б)одномерный массив размерности n ; в) параметр k для порядкового номера отрицательного элемента массива; г) параметр kn для подсчета числа отрицательных элементов массива; д)параметр ki для индекса найденного элемента массива. 2. Результат вычисления: а) значения параметра kn; б)значения параметра ki. 3. Составляем программу ввода элементов массива с клавиатуры и вывода элементов на экран монитора. Для перебора элементов массива исполь- зуем цикл (см. замечание 1) .
| Языки программирования. Метод. указания по лаб. работам | -28- |
ЛАБОРАТОРНАЯ РАБОТА № 5 ОДНОМЕРНЫЕ МАССИВЫ Пример решения варианта задания
| void main() | ||
| < const n = 10; | ||
| int | i, a[n] ; | |
| clrscr(); | ||
| // Ввод одномерного массива с клавиатуры | ||
| cout | ||
| for | ( i = 0; i | // Начало цикла. Перебор индексов массива. |
| printf(«a[ %d ] tr25 td96″> // Подсказка для пользователя. | ||
| scanf( «%d», &a[i] ); // Ввод элемента массива с клавиатуры | ||
| > | ||
// Вывод массива на терминал clrscr(); cout << “Введен массив: \n”; for ( i = 0; i <= n-1; i++ ) printf("%d ", a[i]); cout << “\n”; getch(); >4. Составляем программу, которая подсчитывает число отрицательных<>
| элементов массива (см. замечание 1). | ||
| void main() | ||
| < const n = 10; | ||
| int i, a[n] ; | ||
| int kn = 0; | ||
| clrscr(); | ||
| // Ввод одномерного массива с клавиатуры | ||
| cout | ||
| for ( i = 0; i | // Началоцикла. Перебор индексовмассива. | |
| printf(«a[ %d ] tr2 td81″> // Подсказка для пользователя. | ||
| scanf( «%d», &a[i] ); // Ввод элемента массива с клавиатуры | ||
| > | ||
| // Вывод массива на терминал | ||
| clrscr(); | ||
| cout | ||
| for ( i = 0; i | ||
| printf(«%d «, a[i]); | ||
| cout | ||
| // Начало подсчета числа отрицательных элементов в массиве. | ||
| for ( i = 0; i | ||
| if (a[i] < 0 ) kn++; // Если элемент массива отрицательный, значение kn | ||
| // увеличиваем на 1. | ||
| if ( kn != 0 ) | ||
| cout | ||
| << kn | ||
| else | ||
| Языки программирования. Метод. указания по лаб. работам | -29- | |
ЛАБОРАТОРНАЯ РАБОТА № 5 ОДНОМЕРНЫЕ МАССИВЫ Пример решения варианта задания cout << “Отрицательных элементов в массиве нет! “; getch(); >5. Завершаем программу для решения поставленной задачи. Комментарий к завершению задачи. Предыдущая программа считает число отрицательных элементов. Для того чтобы выполнить поставленную задачу, нам достаточно выйти из цикла, как только мы найдем нужный порядковый номер отрицательного элемента. Обратим внимание на то, что решение задачи полностью соответствует схеме, предложенной в замечании 1. void main() < const n = 10; int i, a[n] ; int k, kn = 0, ki = -1; // kn – для числа отрицательных элементов. // ki – для индексатекущегоотрицательного элемента. // k – дляпорядкового номераотрицательного элемента массива. clrscr(); // Ввод одномерного массива с клавиатуры. cout << “Введи элементы массива с клавиатуры: \n”;<>
| for ( i = 0; i | // Началоцикла. Перебор индексовмассива. |
| printf(«a[ %d ] tr22 td106″> // Подсказка для пользователя. |
| Языки программирования. Метод. указания по лаб. работам | -30- |
ЛАБОРАТОРНАЯ РАБОТА № 5 ОДНОМЕРНЫЕ МАССИВЫ Пример решения варианта задания getch(); >
| Языки программирования. Метод. указания по лаб. работам | -31- |
Лабораторная работа № 4. Составление программ обработки одномерных массивов
Цель работы: овладеть практическими навыками работы с одномерными массивами, особенностями их ввода и вывода.
Краткие теоретические сведения
Линейным массивом в программе на C++ называется упорядоченный набор однотипных переменных, которые располагаются в памяти последовательно (рисунок 5).
Рис. 5. Одномерный (линейный) массив
Массив является простейшей структурой данных, облегчающей работу с большими объемами информации путем их упорядочения. В случае с массивами, упорядочение происходит за счет индексирования элементов, то есть обращения к каждому из них по порядковому номеру. Показанный на рисунке массив состоит из n элементов с индексами от 0 до n -1, в который записаны числа 5, 21, 0, 12 и т.д.
Любой массив в C++ характеризуется тремя параметрами: именем, типом элементов и размером. Как и обычная переменная, перед использованием массив должен быть объявлен. Общая форма записи объявления:
Здесь тип_элементов – это любой из известных стандартных типов (int, float, double, char и т.д.), имя_массива – уникальное имя (идентификатор), используемое для обращения к массиву, размер_массива – количество его элементов. В качестве последнего параметра в объявлении может быть использована только целочисленная константа или константное выражение. Примеры объявлений
int A[15]; // массив из 15 целочисленных элементов с именем A
float x[3]; // массив x из 3-х элементов типа float
Объявление массива является командой компилятору на выделение памяти для хранения его элементов. Общее количество выделенной памяти зависит не только от числа элементов, но и от размера каждого элемента, то есть от его типа. Например, текстовая строка из 1000 символов (тип char) займет P = 1000*sizeof(char) = 1000 байтов, а массив из такого же количества вещественных чисел двойной точности (тип double) займет уже в восемь раз больше – P = 1000*sizeof(double) = 8000 байтов.
Нумерация элементов в массиве начинается с нуля. Таким образом, первый элемент массива имеет индекс 0, а последний – индекс n-1, где n – размер массива. Обращение к элементу производится с использованием имени массива и индекса элемента в квадратных скобках. Например, запись “ x[0] = 5.5; ” означает “присвоить значение 5.5 нулевому элементу массива x ”.
Для работы с массивами характерным является использование итерационных циклов for. С их помощью организуется выполнение однотипных операций со всеми элементами массива, в частности, поэлементный ввод-вывод, поэлементные арифметические операции и др.
1. Изучить: способы описания размеров массивов на языке программирования; способы ввода и вывода массивов; реализацию на конкретном языке программирования приемов накопления суммы или произведения, запоминания результатов, нахождения наибольшего и наименьшего.
2. Разработать алгоритм решения в соответствии с заданием.
3. Составить программу решения задачи.
4. Подготовить тест для проверки программы.
Пример выполнения работы
Условие: Напишите программу, запрашивающую у пользователя 10 целых чисел, и выводящую на экран их сумму.
void main(void)
int A[10]; // объявляем массив из 10 целых
cin > > A[i]; // вводим A[i]
int sum = 0; // объявляем переменную
sum = sum + A[i]; // в цикле суммируем элементы
getch(); // задержка
Условие: Дан одномерный массив x[n], где n – размер массива. Найти k– й отрицательный элемент массива.
1. константа n, которая определяет размер массива;
2. одномерный массив размерности n;
3. параметр k для порядкового номера отрицательного элемента массива;
4. параметр kn для подсчета числа отрицательных элементов массива;
5. параметр ki для индекса найденного элемента массива.
Результат вычисления: значения параметра kn; значения параметра ki.
void main(void)
int k, kn = 0, ki = -1; // kn – для числа отрицательных элементов.
// ki – для индекса текущего отрицательного элемента.
// k – для порядкового номера отрицательного элемента массива.
// Ввод одномерного массива с клавиатуры.
printf(» a[ %d ]= «, i); // Подсказка для пользователя.
scanf(» %d», & a[i]); // Ввод элемента массива с клавиатуры.
// Вывод массива на терминал.
printf(» %d «, a[i]);
// Начало подсчета числа отрицательных элементов в массиве.
kn++; // Если элемент массива отрицательный, значение kn
// увеличиваем на 1.
ki = i; // Запоминаем индекс текущего отрицательного элемента.
if (kn == k)break; // Нашли отрицательный элемент с заданным
// порядковым номером.
Задания для самостоятельного выполнения
1. Задан одномерный числовой массив. Вычислить среднее арифметическое тех его элементов, значения которых лежат в интервале от 0 до 9.
2. Задан одномерный числовой массив. Заменить все его максимальные элементы числом 100.
3. Задан одномерный числовой массив, в котором есть хотя бы один отрицательный элемент. Определить количество элементов, расположенных до первого отрицательного элемента.
4. Задан одномерный числовой массив. Верно ли, что количество его положительных элементов не превышает количества его отрицательных элементов?
5. Задан одномерный числовой массив. Заменить последний из его минимальных элементов значением последнего элемента всего массива.
6. Задан одномерный числовой массив, в котором есть хотя бы один нулевой элемент. Какое количество элементов расположено после первого нулевого элемента до конца массива?
7. Задан одномерный числовой массив. Вычислить количество тех его элементов, значения которых совпадают с последним элементом этого массива.
8. Задан одномерный числовой массив. Вычислить сумму тех его элементов, значения которых отличны от значения максимального элемента этого массива.
9. Задан одномерный числовой массив, в котором есть хотя бы один отрицательный элемент. Поменять местами значения первого элемента этого массива и первого встретившегося отрицательного элемента.
10. Задан одномерный числовой массив. Вычислить сумму тех его элементов, значения которых есть четные числа.
11. Задан одномерный числовой массив. Подсчитать количество максимальных элементов этого массива.
12. Найти сумму всех элементов массива, имеющих четные индексы.
13. Дан массив А, содержащий положительные, отрицательные и нулевые элементы. Из индексов нулевых элементов сформировать новый массив С и найти произведение его элементов.
14. Определить, сколько элементов массива больше, чем число 3 и меньше, чем число -1.
15. Найти сумму элементов массива, превышающих число 8.
16. Найти произведение отрицательных элементов массива.
17. В массиве определить индексы нулевых элементов и заменить нулевые элементы на 5.
18. Дан массив А, содержащий положительные, отрицательные и нулевые элементы. Из отрицательных элементов массива, сформировать новый массив С и найти среднее геометрическое его элементов.
19. Найти разность между наибольшим и наименьшим элементами массива.
Контрольные вопросы
1. Указать особенности программ, использующих массивы.
2. Какие операторы языка можно использовать для описания массивов?
3. В чем состоит особенность организации цикла при обработке массивов?
4. В чем состоит особенность использования приемов программирования при обработке массивов?
5. Указать особенности ввода и вывода массивов.
6. Что представляет собой одномерный массив?
7. Индекс первого элемента массива всегда равен нулю. Верно ли это?
8. Предусмотрена ли в С++ проверка «нерушимости» границ массива?
9. Каждая размерность многомерного массива в С++ заключается в собственную пару квадратных скобок. Верно ли это?
10. Покажите, как объявить двумерный целочисленный массив с именем mas размерностью 10 х 8?
11. Может ли содержать массив переменные нескольких типов?