Форум программистов, компьютерный форум CyberForum.ru

Поиск элемента в одномерном целочисленном массиве - C++

Восстановить пароль Регистрация
 
Rosenrot69
1 / 1 / 0
Регистрация: 27.10.2013
Сообщений: 24
31.12.2015, 11:37     Поиск элемента в одномерном целочисленном массиве #1
Определить есть ли в заданном одномерном целочисленном массиве элементы равные заданному x, и если такой элемент есть, то определить номер первого элемента равного x.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
31.12.2015, 11:37     Поиск элемента в одномерном целочисленном массиве
Посмотрите здесь:

C++ Поиск элемента в одномерном массиве.
Поиск элемента в одномерном массиве C++
C++ В одномерном целочисленном массиве найти простые числа и вывести их номера.
В одномерном целочисленном массиве вычислить сумму элементов, расположенных после минимального элемента C++
В отсортированном одномерном массиве X (100) выполнить поиск заданного элемента последовательным методом C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Hikari
Хитрая блондиночка $)
 Аватар для Hikari
1336 / 899 / 272
Регистрация: 21.12.2015
Сообщений: 3,593
31.12.2015, 11:48     Поиск элемента в одномерном целочисленном массиве #2
C
1
2
3
4
int a[5]={1,2,3,4,5},x,i;
scanf("%d",&x); 
for(i=0;i<5;i++) if(a[i]==x){printf("Есть: %d",i); getchar(); return 0;}
printf("Нет"); getchar(); return 0;
Так вот примерно
Rosenrot69
1 / 1 / 0
Регистрация: 27.10.2013
Сообщений: 24
31.12.2015, 12:07  [ТС]     Поиск элемента в одномерном целочисленном массиве #3
Возможно ли расписать более подробно?
С вводом массива через клавиатуру?
gru74ik
31.12.2015, 12:08
  #4

Не по теме:

/w gru74ik шепчет: Hikari, один оператор (statement) - одна строчка.

Hikari
Хитрая блондиночка $)
 Аватар для Hikari
1336 / 899 / 272
Регистрация: 21.12.2015
Сообщений: 3,593
31.12.2015, 12:31     Поиск элемента в одномерном целочисленном массиве #5

Не по теме:

Цитата Сообщение от gru74ik Посмотреть сообщение
один оператор (statement) - одна строчка.
Ну я пожалуй не адепт таких правил... Это Basicstyle да?


С вводом массива через клавиатуру?
C
1
2
3
int a[5]={0},x,i;
scanf("%d",&x); for(i=0;i<5;i++) scanf("%d",&a[i]);
... Дальше остальное.
gru74ik
31.12.2015, 12:41
  #6

Не по теме:

Цитата Сообщение от Hikari Посмотреть сообщение
Ну я пожалуй не адепт таких правил... Это Basicstyle да?
Хороший тон в С++, так-то, если чё.

Hikari
31.12.2015, 13:08
  #7

Не по теме:

Цитата Сообщение от gru74ik Посмотреть сообщение
Хороший тон в С++, так-то, если чё.
Ну не буду спорить. У меня свои принципы. Если кому-то не нравится, что ж поделать

GbaLog-
Не Эксперт C++
1432 / 618 / 174
Регистрация: 24.08.2014
Сообщений: 2,504
Записей в блоге: 1
Завершенные тесты: 2
31.12.2015, 13:35     Поиск элемента в одномерном целочисленном массиве #8
Rosenrot69, А вот на С++.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#include <iostream>
#include <conio.h>
 
using namespace std;
 
int main() {
    const int n = 10;
    int arr[n];
    for( int i = 0; i < n; i++ ) {
        cin >> arr[i];
    }
    int x, f = 0;
    cin >> x;
    for( int i = 0; i < n; i++ ) {
        if( arr[i] == x ) {
            f = i;
            break;
        }
    }
    if( f != 0 ) cout << "Yes: " << f << "\n";
    else cout << "No.\n";
    getch();
    return 0;
}
gru74ik
Модератор
 Аватар для gru74ik
3081 / 1326 / 164
Регистрация: 20.02.2013
Сообщений: 3,776
Записей в блоге: 17
31.12.2015, 14:42     Поиск элемента в одномерном целочисленном массиве #9
Цитата Сообщение от makfak Посмотреть сообщение
А вот на С++.
Неееет. Вот на C++:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
// Определить есть ли в заданном одномерном целочисленном массиве элементы равные заданному x,
// и если такой элемент есть, то определить индекс первого элемента равного x.
#include <iostream>
#include <vector>
#include <random>
#include <ctime>
 
typedef int Item;
 
void fill_rand(std::vector<Item> & vec, Item fromNum, Item toNum);
void show(const std::vector<Item> & vec);
 
int main()
{
    std::cout << "Please enter an integer: ";
    Item given_number;
    std::cin >> given_number;
 
    const int VEC_SIZE = 16;
    std::vector<Item> ivec(VEC_SIZE);
 
    fill_rand(ivec, 10, 99);
    show(ivec);
 
    size_t vecSize = ivec.size();
    size_t index_of_found_element = vecSize;
    for(size_t i = 0; i < vecSize; ++i)
    {
        if(ivec[i] == given_number)
        {
            index_of_found_element = i;
            break;
        }
    }
    if (index_of_found_element != VEC_SIZE)
        std::cout << "\nYes, index of found element is: " << index_of_found_element << ".\n";
    else
        std::cout << "\nThe element equals to given number not found.\n";
 
    return 0;
}
 
void fill_rand(std::vector<Item> & vec, Item fromNum, Item toNum)
{
    std::mt19937 gen(time(0));
    std::uniform_int_distribution<int> uid(fromNum, toNum);
    size_t vecSize = vec.size();
    for(size_t i = 0; i < vecSize; ++i)
        vec[i] = uid(gen);
}
 
void show(const std::vector<Item> & vec)
{
    std::cout << "\nThis is your vector: ";
    for (const auto & x : vec)
        std::cout << x << " ";
    std::cout << "\n";
}
GbaLog-
Не Эксперт C++
1432 / 618 / 174
Регистрация: 24.08.2014
Сообщений: 2,504
Записей в блоге: 1
Завершенные тесты: 2
31.12.2015, 16:37     Поиск элемента в одномерном целочисленном массиве #10
gru74ik, Да, но я про операторы ввода-вывода имел ввиду.
rangerx
1908 / 1517 / 139
Регистрация: 31.05.2009
Сообщений: 2,876
31.12.2015, 20:39     Поиск элемента в одномерном целочисленном массиве #11
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
#include <iostream>
#include <array>
#include <algorithm>
#include <iterator>
#include <functional>
#include <ctime>
 
int main()
{
    auto gen = std::bind (
        std::uniform_int_distribution<>{-10, 10},
        std::default_random_engine{static_cast<unsigned int>(std::time(nullptr))}
    );
    
    std::array<int, 10> a;
    std::generate(std::begin(a), std::end(a), gen);
    for (auto k : a) std::cout << ' ' << k;    
 
    int x;
    std::cout << "\nFind: ";
    std::cin >> x;
    if (!std::cin) return -1;
    
    std::cout << "Result: ";
    auto iter = std::find(std::begin(a), std::end(a), x);
    if (iter != std::end(a))
        std::cout << std::distance(std::begin(a), iter)+1 << ".\n";
    else
        std::cout << "NOT FOUND.\n";
}
castorsky
31.12.2015, 21:03
  #12

Не по теме:

Hikari, жизнь была безвозвратно отравлена Виртом и плохими книгами по языку pascal.

MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
31.12.2015, 22:31     Поиск элемента в одномерном целочисленном массиве
Еще ссылки по теме:

C++ В отсортированном одномерном массиве X(100) выполнить поиск за-данного элемента методом однородного бинарного поиска
В отсортированном одномерном массиве выполнить поиск заданного элемента последовательным методом C++
C++ Функция, выполняющая поиск заданного элемента в одномерном массиве типа double

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
gru74ik
Модератор
 Аватар для gru74ik
3081 / 1326 / 164
Регистрация: 20.02.2013
Сообщений: 3,776
Записей в блоге: 17
31.12.2015, 22:31     Поиск элемента в одномерном целочисленном массиве #13
rangerx, нуууу, ващееее! Прям ващеее )))
Yandex
Объявления
31.12.2015, 22:31     Поиск элемента в одномерном целочисленном массиве
Ответ Создать тему
Опции темы

Текущее время: 12:58. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru