КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Статические массивы
Лабораторная работа №4
Цель лабораторной работы: изучение структурной организации массивов и способов доступа к их элементам; совершенствование навыков процедурного программирования на языке C/С++ при решении задач обработки статических массивов.
Задание на программирование: используя технологию процедурного программирования, разработать программу обработки одномерных и двумерных (матриц) статических массивов в соответствии с индивидуальным заданием.
Порядок выполнения работы:
1) Получить у преподавателя индивидуальное задание и выполнить постановку задачи: сформулировать условие, определить входные и выходные данные, их ограничения. 2) Разработать математическую модель: описать с помощью формул и рисунков структуру массивов и процесс их преобразования. 3) Построить схему алгоритма решения задачи. 4) Составить программу на языке C/С++. 5) Входные данные на этапах тестирования и демонстрации работы преподавателю должны задаваться либо с использованием специально подобранных арифметических формул, либо вводиться с клавиатуры по запросу. Датчики псевдослучайных чисел использовать запрещается. Выходные данные должны выводиться на экран с пояснениями. 6) Проверить и продемонстрировать преподавателю работу программы на полном наборе тестов, в том числе с ошибочными входными данными. Входные и выходные массивы должны выводиться в одном и том же формате. 7) Использовать стандартные потоковые объекты ввода/вывода cin и cout. 8) Оформить отчет о лабораторной работе в составе: постановка задачи, математическая модель, схема алгоритма решения, текст программы, контрольные примеры.
Варианты индивидуальных заданий 1) Дан массив b 1, b 2,…, b 2 n. Написать программу построения массивов x 1, x 2,…, xn и y 1, y 2,…, yn, элементы которых равны соответственно значениям: b 1, b 3,…, b 2 n -1 и b 2, b 4,…, b 2 n. 2) В заданной матрице поменять местами первую строку и строку, содержащую наибольший элемент матрицы.
1) Дан целочисленный массив a 1, a 2,…, am. Из абсолютных величин его элементов выбрать наибольшую. Далее построить массив, i -й элемент которого равен нулю, если | ai | не совпадает с выбранным значением, и равен 1 в противном случае.
2) В заданной матрице поменять местами последний столбец и столбец, содержащий наименьший элемент матрицы.
1) Написать программу построения массива с элементами: a 1, a 1+ a 2, a 1+ a 2+ a 3, a 1+ a 2+ a 3+…+ an по заданному массиву a 1, a 2,…, an.
2) В заданной матрице поменять местами строку, содержащую максимальный элемент матрицы, и строку, содержащую минимальный элемент матрицы.
1) В вещественном массиве x 1, x 2,…, xn заменить нулем все отрицательные элементы, предшествующие его максимальному элементу.
2) В заданной матрице поменять местами главную и побочную диагонали.
1) Даны массивы a 1, a 2,…, an и b 1, b 2,…, bn. Получить новый массив, элементы которого: a 1, b 1, a 2, b 2, …, an, bn.
2) В заданной матрице поменять местами первый столбец со столбцом, содержащим наибольший элемент матрицы.
1) Дан вещественный массив x 1, x2,…, xm. Все его элементы, следующие за наибольшим элементом, заменить значением b.
2) В заданной матрице поменять местами среднюю строку и средний столбец.
1) Даны вещественные массивы x 1, x 2,…, xn и y 1, y 2,…, yn. Преобразовать их по правилу: большее из значений xi и yi принять в качестве нового значения xi, а меньшее – в качестве нового значения yi.
2) В заданной матрице поменять местами последнюю строку со строкой, содержащей наибольший элемент матрицы.
1) Дан целочисленный массив a 1, a 2,…, an. Если в массиве нет ни одной компоненты с заданным значением К, то первую по порядку компоненту этого массива, не меньшую всех остальных компонент, заменить значением К.
2) В заданной матрице поменять местами первую строку и первый столбец.
1) Написать программу, осуществляющую циклический сдвиг компонент массива x 1, x 2,…, xn (n >2) на одну позицию влево, то есть получающую массив x 2, x 3,…, xn, x 1.
2) В заданной матрице поменять местами последний столбец со столбцом, содержащим наибольший элемент матрицы.
1) Дан вещественный массив a 1, a 2,…, an. Если в этом массиве есть хотя бы один элемент, значение которого меньше Р, то значения всех отрицательных элементов массива заменить их квадратами, в противном случае массив а умножить на число b.
2) В заданной матрице поменять местами последнюю строку со строкой, содержащей наименьший элемент матрицы.
1) Дан вещественный массив x 1, x 2,…, xn. Определить сумму и количество компонент этого массива, принадлежащих отрезку [ a, b ].
2) В заданной матрице поменять местами первый столбец со столбцом, содержащим наибольший элемент главной диагонали.
1) Преобразовать массив а 1, а 2,…, аn так, чтобы его элементы расположились в обратном порядке: аn, аn -1,…, а 1.
2) В заданной матрице поменять местами две строки: строку с указанным номером и строку, содержащую наименьший элемент матрицы.
1) Написать программу выбора среди элементов массива а 1, а 2,…, аn наибольшего среди остающихся после выбрасывания наибольшего и всех ему равных. Предполагается, что не все элементы равны между собой.
2) В заданной матрице поменять местами последний столбец и побочную диагональ.
1) Из массива а 1, а 2,…, а 3 n получить массив b 1, b 2,…, bn, очередная компонента которого равна среднему арифметическому тройки очередных компонент массива а.
2) В заданной матрице поменять местами столбец, содержащий максимальный элемент матрицы, и столбец, содержащий минимальный элемент матрицы.
1) Дан целочисленный массив b 1, b 2,…, bn. Если элементы этого массива не образуют убывающей последовательности, то заменить его отрицательные элементы единицами.
2) В заданной матрице поменять местами первую строку и строку, содержащую максимальный элемент матрицы.
1) Дан целочисленный массив а 1, а 2,…, аn, среди элементов которого могут быть равные. Из каждой группы равных между собой элементов нужно оставить только один, выбросив все остальные. Освободившийся хвост массива заполнить нулями.
2) В заданной матрице поменять местами первый столбец и побочную диагональ.
1) Дан вещественный массив а 1, а 2,…, аn. Если в этом массиве есть хотя бы один элемент, принадлежащий отрезку [ x, y ], то все элементы, не принадлежащие этому отрезку, заменить значением К.
2) В заданной матрице поменять местами последнюю строку со строкой, содержащей минимальный элемент матрицы.
1) Дан массив а 1, а 2,…, аn. Переставить его элементы так, чтобы в начале массива расположились все его неотрицательные элементы, а в конце – отрицательные.
2) В заданной матрице поменять местами последний столбец и столбец, содержащий минимальный элемент матрицы.
1) Написать программу выполнения следующего задания: из всех непрерывных участков массива а 1, а 2,…, аn, состоящих из нулей, выбрать наибольший по длине. Вывести индексы его начала и конца.
2) В заданной матрице поменять местами последнюю строку со строкой, содержащей максимальный элемент матрицы.
1) Написать программу, осуществляющую циклический сдвиг компонент массива x 1, x 2,…, xn (n >2) на одну позицию влево, то есть получающую массив x 2, x 3,…, xn, x 1.
2) В заданной матрице поменять местами последний столбец со столбцом, содержащим максимальный элемент матрицы.
1) Дан вещественный массив x 1, x 2,…, xm. Все его элементы, предшествующие наибольшему элементу, заменить значением c.
2) В заданной матрице поменять местами первую строку и главную диагональ.
1) Дан вещественный массив x 1, x 2,…, xm. Все его положительные элементы, следующие за наименьшим элементом, заменить значением d.
2) В заданной матрице поменять местами главную диагональ и последний столбец.
1) Дан массив b 1, b 2,…, b 2 m. Написать программу построения массива с элементами, соответственно равными: b 2 m, b 1, b 2 m -1, b 2, …, bm +1, bm.
2) В заданной матрице поменять местами столбец, содержащий максимальный отрицательный элемент матрицы, и столбец, содержащий минимальный положительный элемент матрицы.
1) Дан массив а 1, а 2,…, а 2 n. Написать программу построения массива с элементами, соответственно равными: а 1, аn +1, а 2, а n +2,…, аn, a 2 n.
2) В заданной матрице поменять местами последний столбец и столбец, содержащий минимальный положительный элемент матрицы.
1) Найти сумму и произведение всех элементов массива b 1, b 2,…, bm.
2) В заданной матрице из целых чисел поменять местами первую строку и строку, содержащую максимальный отрицательный элемент матрицы.
1) Найти сумму положительных и число отрицательных элементов массива а 1, а 2,…, аn.
2) В заданной матрице найти сумму элементов, принадлежащих главной диагонали, и произведение элементов, принадлежащих побочной диагонали.
1) Написать программу вычисления числа положительных и суммы отрицательных элементов массива x 1, x 2,…, xm.
2) В заданной матрице целых чисел найти сумму элементов, лежащих по её периметру (принадлежащих первой и последней строке и первому и последнему столбцу матрицы).
1) Заданы упорядоченный по возрастанию массив y 1 < y 2 <…< ym и величина x. Известно, что y 1 < x < ym. Написать программу определения целого числа К, удовлетворяющего условию: yk -1 < x < yk.
2) В заданной матрице целых чисел найти сумму элементов, лежащих выше главной диагонали.
Дата добавления: 2014-10-22; Просмотров: 562; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |