Студопедия

Главная страница Случайная лекция

Порталы:

БиологияВойнаГеографияИнформатикаИскусствоИсторияКультураЛингвистикаМатематикаМедицинаОхрана трудаПолитикаПравоПсихологияРелигияТехникаФизикаФилософияЭкономика






Массив целых чисел («Вектор»)

Читайте также:
  1. V. АКУСТИЧЕСКИЕ СВОЙСТВА ГОРНЫХ ПОРОД И МАССИВОВ. ОСНОВНЫЕ ФАКТОРЫ, ВЛИЯЮЩИЕ НА АКУСТИЧЕСКИЕ СВОЙСТВА ГОРНЫХ ПОРОД
  2. Арифметические операции на множестве действительных чисел
  3. Борьба с трещинообразованием в массивных бетонных сооружениях.
  4. В мире чисел
  5. Ввод с помощью датчика псевдослучайных чисел
  6. Воздействия на горные породы и их массивы
  7. Выбор типа, тактности, чисел оборотов и цилиндров и расположения цилиндров двигателя
  8. Двумерный массив целых чисел («Матрица»)
  9. ДЕ №3 / Оценка устойчивости склонов, откосов и массивных подпорных стенок
  10. Делимость целых чисел и деление с остатком в кольце целых чисел

Набор функций для работы с массивом целых чисел:

1. Ввод значений элементов массива.

#define N 25

void Enter_Array (int Array[], int &size)

{

while(1)

{

printf ("Введи размер массива (2 - %d): ", N);

scanf ("%d", &size);

if ((size >1) && (size <= N)) break;

else printf("Неверный ввод!\n");

}

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

for (int i = 0; i < size; i ++) scanf ("%d", &Array [i]);

}

2. Вывод значений элементов массива.

void Output_Array (int Array[], int size)

{

printf ("\n Массив – результат: \n ");

for (int i = 0; i < size; i ++) printf ("%d ", Array [i]);

}

3. Определить среднее значение элементов массива.

float Medium (int Array[], int size)

{

for (int i = 0, Sum = 0; i < size; i++) Sum += Array[i];

return ((float) Sum / size);

}

4. Определить индексы минимального и максимального элементов массива.

void Mini_Max (int Array[], int size, int &min, int &max)

{

min = max = 0;

for (int i = 1; i < size; i++)

{

if (Array [i] < Array [min]) min = i;

if (Array [i] > Array [max]) max = i;

}

}

5. Удалить из массива нулевые элементы.

void Delete_Zeros (int Array[], int &size)

{

int i = 0, j;

while (i < size)

if (Array[i] == 0)

{ for (j = i; j < size - 1; j ++) Array [j] = Array [j + 1];

size --;

}

else i++;

}

6. Продублировать каждое вхождение заданного числа.

void Duplicate (int Array[], int &size, int Number)

{

int i = 0, j;

while (i < size)

if (Array[i] == Number)

{ if ((size + 1) > N) { puts ("Массив заполнен!"); return; }

size++;

for (j = size - 1; j > i; j --) Array[j] = Array[j - 1];

i += 2;

}

else i++;

}

7. Определить количество различных элементов в массиве

int Counter_Different (int Array[], int size)

{

int i=0, j, count = size;

for (i = 0; i < size; i ++)

for (j = i - 1; j >= 0; j --)

if (Array[i] == Array[j])

{ count --; break; }

return count;

}

8. Упорядочить элементы массива по возрастанию методом «пузырька».

void Sort_Bubble (int A[], int size)

{

int i, j, temp;

for (i = size - 1; i > 0; i --)

for( j = 0; j < i; j ++)

if (A[j] > A[j+1])

{ temp = A[j]; A[j] = A[j+1]; A[j+1] = temp; }

}

9. Определить индекс элемента в упорядоченном массиве, значение которого совпадает с заданным числом (бинарный поиск).

int Binary_Search (int Array[], int size, int Key)

{

int i, left = 0, k, right = size - 1;

do { i = (left + right) / 2;

if (Key == Array[i]) return i;

if (Key > Array[i]) left = i + 1;

else right = i - 1;

} while (left <= right);

return - 1;

}


<== предыдущая страница | следующая страница ==>
Структурные типы данных | Символьный массив («Строка»)

Дата добавления: 2014-11-14; просмотров: 232; Нарушение авторских прав


lektsiopedia.org - Лекциопедия - 2013 год. | Страница сгенерирована за: 0.003 сек.