Скачиваний:
7
Добавлен:
01.04.2014
Размер:
28.49 Кб
Скачать

УО «Белорусский Государственный университет информатики и радиоэлектроники»

Отчёт

По контрольной работе №4 по теме:

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

Вариант 1

Выполнил:

Студент гр. ____

______________

Проверил:

______________

Минск 2010

Задание.

В одномерном целочисленном массиве (размер массива (не более 20) и значения его элементов вводить с клавиатуры) вычислить произведение элементов массива, расположенных между максимальным и минимальным элементами.

Листинг 4.1

#include <iostream.h>

#include <conio.h>

int main(){

typedef int mas[20]; // определение типа массив

mas a; // определение массива А

unsigned short int iMaxA, iMinA, n, p, i, k, min, max;

cout << "Input n(<=20):\t";

cin >> n;

cout << "\nArray a:" << endl;

for (i=0; i<n; i++){

cout << "\nInput value of a[" << i+1 << "]:\t";

cin >> a[i];

}

min = max = 0;

p = 1;

for (i=0; i<n; i++){

for (k=1; k<n-1; k++){

iMaxA = (a[i] > a[k]) ? i : k;

iMinA = (a[i] < a[k]) ? i : k;

}

if (a[iMaxA] > a[max]) max = iMaxA; // были ли уже числа больше

if (a[iMinA] < a[min]) min = iMinA; // были ли уже числа меньше

}

cout << "\nMax value of array \"a\" is:\t" << a[max] << endl;

cout << "Min value of array \"a\" is:\t" << a[min] << endl;

while(max != min){

if (max > min){ // максимальный элемент расположен после минимального

p *= a[max];

max--;

}

else { // максимальный элемент перед минимальным

p *= a[max];

max++;

}

}

p *= a[min];

cout << "\nProizvedenie = " << p << endl;

cout << "\n\nPress any key to exit" << endl;

getch();

return 0;

}

Результат выполнения программы.

Используемая литература.

Б. Страуструп. Язык программирования С++

Соседние файлы в папке отчёты