Мегаобучалка Главная | О нас | Обратная связь


Лабораторная работа №5. “Обработка одномерных массивов”



2015-12-13 4162 Обсуждений (0)
Лабораторная работа №5. “Обработка одномерных массивов” 0.00 из 5.00 0 оценок




“Обработка одномерных массивов”

 

Цель работы: Освоение методов обработки одномерных массивов, разработки алгоритмов, построения и отладки программ, ввода и вывода на печать одномерных массивов.

Теоретическая часть

5.1.1. Описание одномерных массивов в языке программирования C++.

 

Массивы объявляются непосредственно в разделе описания переменных. Описание статического одномерного массива имеет следующую структуру:

тип имя_массива[размер];

где:

тип – указание на любой стандартный или нестандартный тип, которому будут принадлежать элементы массива;

имя_массива – идентификатор массива;

размер – целочисленная константа, определяющая максимальное количество элементов массива;

int A[100];

 

#define N 50;

...

float B[N];

Обращение к элементам массива в программе происходит по индексу, например:

A[i]

X[2]

Y[i*2-1]

Следует обратить внимание, что в языке C++ нумерация элементов массива начинается с 0.

5.1.2 Пример составления алгоритма и программы на языке C++ для обработки одномерного массива.

 

Задание:

Дан массив действительных чисел А из 20 элементов. Определить m = (amax + amin)/100.

Решение.

Для обработки массива A сначала необходимо ввести его элементы. Выполним ввод элементов массива с клавиатуры. Для обозначения размерности массива A введем переменную N. После ввода всех элементов массива для наглядности выведем их на экран.

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

 

Блок-схема алгоритма решения данной задачи выглядит следующим образом:

 

 

 

 

Текст программы на языке С++ выглядит следующим образом:

 

#include <stdio.h>

#include <conio.h>

#define N 30

int main()

{ int i;

float A[N];

float m, Amax, Amin;

//clrscr();

printf("Введите элементы массива \n");

for(i=0;i<N;i++) scanf("%f",&A[i]);

//clrscr();

for(i=0;i<N;i++) printf("%8.2f",A[i]);

Amax=A[0];

Amin=A[0];

for(i=1;i<N;i++)

 

{

if (A[i] > Amax) Amax=A[i];

if (A[i] < Amin) Amin=A[i];

}

m=(Amax + Amin)/100;

printf("\nAmax=%.2f\nAmin=%.2f\nm=%.2f",Amax,Amin,m);

getch();

return 0;

}

 

 

Практическая часть

 

5.2.1 Требования к выполнению работы:

 

Составить блок-схему алгоритма и программу для решения индивидуального задания.

Предусмотреть вывод на печать исходных массивов, подробных конечных результатов. При необходимости возможен вывод также промежуточных результатов.

Значения элементов массивов задавать путем ввода с клавиатуры.

Порядок выполнения работы.

1. Выполнить анализ задания, сформулировать постановку задачи.

2. Составить блок-схему алгоритма.

3. Составить программу на языке С++. Предусмотреть ввод исходных данных и вывод результатов на экран.

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

5. Выполнить анализ полученных результатов.

 

Варианты индивидуальных заданий.

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

 

Таблица 5. Варианты индивидуальных заданий

№ п/п Вид задания
Найти минимальный элемент среди положительных элементов массива вещественных чисел А(20).
Найти сумму положительных элементов массива вещественных чисел B(45) и сумму отрицательных элементов.
Вычислить сумму абсолютных значений элементов массива целых чисел С(15).
Найти максимум первых 10 элементов массива целых чисел А(20) и минимум последних 10 элементов.
Определить отношение между максимальным и минимальным элементами массива вещественных чисел M(25).
Найти разницу между максимальным и последним отрицательным элементом массива целых чисел А(45).
Найти разницу между абсолютными значениями максимального и минимального элементов массива целых чисел D(25).
Определить процент положительных и отрицательных элементов массива вещественных чисел B(30).
Найти суммы четных элементов (элементов с четным номером) массива вещественных чисел A(22) и нечетных элементов.
Найти количество элементов массива целых чи-сел C(50), больших, чем половина максимума.
Найти произведение элементов массива целых чисел A(20), больших, чем среднее арифметическое элементов массива.
Найти количество элементов массива вещественных чисел B(40), значения которых находятся в интервале [–max/2; max/2].
Найти средние арифметические первых 15 элементов массива целых чисел D(30) и последних 15 элементов.
Найти среднее арифметическое положительных элементов массива вещественных чисел V(25).
Определить количество элементов массива вещественных чисел C(40), больших, чем модуль минимального значения массива.
Определить разницу между максимальным и средним арифметическим значением массива вещественных чисел F(20).
Найти произведения элементов с четным индексом массива целых чисел Т(30) и с нечетным индексом.
Найти количество элементов массива целых чисел A(25), меньших, чем среднее арифметическое первых 10 элементов массива.
Найти количество элементов массива целых чисел C(40) с четными и нечетными значениями.
Найти произведение элементов массива целых чисел D(40), расположенных между максимальным и минимальным элементами.
Найти количество элементов массива вещественных чисел А(30), меньших, чем среднее арифметическое отрицательных элементов массива.
Найти сумму элементов массива целых чисел X(15), расположенных до последнего положительного элемента
Найти сумму элементов массива вещественных чисел M(45), расположенных после первого нулевого элемента.
Найти произведение элементов массива вещественных чисел K(25), расположенных после максимального по модулю элемента.
Найти сумму модулей элементов массива целых чисел Y(50), расположенных до минимального элемента.
В массиве целых чисел D(30) найти среднее арифметическое положительных элементов, расположенных в первой половине массива, и среднее арифметическое отрицательных элементов, расположенных во второй половине массива.
Найти количество элементов массива действи-тельных чисел F(35), больших, чем среднее арифметическое первых 15 элементов массива.

5.3 Контрольные вопросы и практические задания:

 

1. Как выглядит форма объявления одномерных массивов?

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

3. Каковы требования к индексам элементов массива?

4. Какой из типов операторов цикла удобнее использовать при работе с массивами?

5. Приведите варианты ввода численных значений элементов массива.

6. Приведите варианты вывода элементов массива на печать.

7. Приведите алгоритмы определения суммы и произведения элементов массива.

8. Приведите алгоритмы нахождение максимального и минимального элементов в массиве.

9. Приведите алгоритмы нахождение среднего значения элементов массива.


 



2015-12-13 4162 Обсуждений (0)
Лабораторная работа №5. “Обработка одномерных массивов” 0.00 из 5.00 0 оценок









Обсуждение в статье: Лабораторная работа №5. “Обработка одномерных массивов”

Обсуждений еще не было, будьте первым... ↓↓↓

Отправить сообщение

Популярное:
Как выбрать специалиста по управлению гостиницей: Понятно, что управление гостиницей невозможно без специальных знаний. Соответственно, важна квалификация...
Как распознать напряжение: Говоря о мышечном напряжении, мы в первую очередь имеем в виду мускулы, прикрепленные к костям ...



©2015-2024 megaobuchalka.ru Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. (4162)

Почему 1285321 студент выбрали МегаОбучалку...

Система поиска информации

Мобильная версия сайта

Удобная навигация

Нет шокирующей рекламы



(0.008 сек.)