Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Поиск в массиве заданного элемента



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

Для организации поиска в массиве могут быть использованы различные алгоритмы. Наиболее простой — это алгоритм простого перебора. Поиск осуществляется последовательным сравнением элементов массива с образцом до тех пор, пока не будет найден элемент, равный образцу, или не будут проверены все элементы. Алгоритм простого перебора применяется, если элементы массива не упорядочены.

В листинге 5.3 приведен пример поиска заданного элемента массива простым перебором. Перебор элементов массива осуществляется инструкцией while, в теле которой инструкция if сравнивает текущий элемент массива с образцом и прерывает цикл с помощью оператора break, если текущий элемент и образец равны.

// poiskOpredElementa.cpp: Defines the entry point for the console application.

//Листинг 5.3. Простой перебор

#include "stdafx.h"

#include <iostream>

#include <conio.h>

using namespace std;

int main(int argc, char* argv[])

{

const int SIZE =10;//razmer massiva

int a[SIZE];

// vvod massiva

for (int i = 0; i < SIZE; i++)

{

a [i]= 1 + rand () % 10;//massiv tselyh chisel

cout << a[i] << '\t';

} // end for

int obr; // obrazets dlya poiska

// vvod obraztsa dlya poiska

cin >> obr;

// poisk zadannogo elementa massiva pereborom

int i=0;

while(i <= SIZE-1)

{

if (a[i]==obr)

{

cout << "Sovpadenie s elementom nomer"

<< i <<"\t" << a[i]<<endl;

break;

} // end if

else

if (i==SIZE-1)

cout <<"i= " << i << "sovpadeniya net!";

i++;

} // end while

getch();

return 0;

}





Дата публикования: 2014-12-11; Прочитано: 371 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.005 с)...