Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 20, средняя оценка - 4.85
Flame's
0 / 0 / 0
Регистрация: 21.01.2012
Сообщений: 20
#1

Проверить, существует ли число в массиве - C++

23.01.2012, 18:17. Просмотров 3290. Ответов 22
Метки нет (Все метки)

Программа проверяет существует ли число в массиве вводимое пользователем, если да, то выводит индекс этого числа в массиве, иначе выводит сообщение, что числа нету. Программа работает, но я уверен, что ее можно сделать легче ( по объему ) поэтому кому интересно) Жду варианты_)

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
#include <iostream>
#include <iomanip>
 
int main()
{
    int x;
    int t;
        const int arraySize = 10;
        int massiv[arraySize] = {34,23,1,54,32,0,45,76,29,12};
        bool ExitFlag = false;
 
 std:: cout << "Введите число, которое хотите найти: ";
 std:: cin >> t;
 
        while(!ExitFlag)
        {
                int count = 0;
 
                for(int i = 0; i < arraySize; i++) {
 
                    if(massiv[i] != t) {
                        if (i >= arraySize-1 ) { 
                            ExitFlag = true; std:: cout << "Извините вашего числа нету в массиве!";
                        }
                        count++;
                    }
                    else {
                      std:: cout << "Индекс вашего числа в массиве равен: ";
                      std:: cout << i;
                      ExitFlag = true;         
                    }
                }
        }
 
 
 std:: cin >> x;
        return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.01.2012, 18:17
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Проверить, существует ли число в массиве (C++):

Проверить, существует ли строгое чередование 0 и 1 в массиве - C++
Сформировать массив из N элементов (N&lt;50) , которыми могут быть только целые числа 0 и 1. Проверить, существует ли строгое чередование 0 и...

Проверить, существует ли четырехзначное натуральное число - C++
Задание 11. Проверить, существует ли четырехзначное натуральное число, сумма пятых степеней цифр которого равна самому числу. Помогите...

Массив: Проверить, присутствует ли в массиве введённое пользователем число - C++
Проверить, присутствует ли в массиве введённое пользователем число x. Поиск элемента в массиве оформить как функцию. Программа...

Проверить, что в массиве ни одно четное число не расположено после нечетного - C++
2.Дан массив целых чисел. Если в нем ни одно четное число не расположено после нечетного, то получить из исходного массива массив только...

Проверить, одинаковое ли число открывающихся и закрывающихся квадратных скобок в данном массиве символов - C++
Дан массив символов. Проверить, одинаковое ли число открывающихся и закрывающихся квадратных скобок в данной строке.

Проверить, имеется ли в массиве число, введенное пользователем. Если да – вывести его индекс - C++
кто-нибудь может подсказать как сделать? Язык С++. только мне по самому простому, только начинаю учить язык, через цикл for, и это...

22
rinat_w
89 / 85 / 4
Регистрация: 13.11.2011
Сообщений: 192
Завершенные тесты: 1
24.01.2012, 19:08 #16
BumerangSP, согласись и код тоже оптимальный
0
BumerangSP
4287 / 1409 / 121
Регистрация: 16.12.2010
Сообщений: 2,941
Записей в блоге: 3
24.01.2012, 19:23 #17
Цитата Сообщение от rinat_w Посмотреть сообщение
BumerangSP, согласись и код тоже оптимальный

Не по теме:

Соглашусь)

0
easybudda
Модератор
Эксперт CЭксперт С++
9694 / 5644 / 962
Регистрация: 25.07.2009
Сообщений: 10,848
24.01.2012, 21:03 #18
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <iostream>
#include <algorithm>
 
int main(){
    const int SIZE(5);
    int arr[SIZE] = { 1, 2, 3, 4, 5 }, val1 = 4, val2 = 6, * ptr;
 
    if ( ( ptr = (int*)std::find(arr, arr + SIZE, val1) ) == arr + SIZE )
        std::cout << "Value " << val1 << " not found." << std::endl;
    else
        std::cout << "Found value " << val1 << " at index " << ( ptr - arr ) << std::endl;
 
    if ( ( ptr = (int*)std::find(arr, arr + SIZE, val2) ) == arr + SIZE )
        std::cout << "Value " << val2 << " not found." << std::endl;
    else
        std::cout << "Found value " << val2 << " at index " << ( ptr - arr ) << std::endl;
 
    return 0;
}
http://codepad.org/ajpIs4Jf
1
Flame's
0 / 0 / 0
Регистрация: 21.01.2012
Сообщений: 20
24.01.2012, 21:31  [ТС] #19
Всем спасибо за участие) Очень рад, что так много людей проявили фантазию, в не большой работе) Были бы конфеты, дал бы каждому Если нужно, могу еще пару задач интересных выложить)
0
easybudda
24.01.2012, 21:34
  #20

Не по теме:

Цитата Сообщение от Flame's Посмотреть сообщение
Если нужно, могу еще пару задач интересных выложить)
Том Соер таким макаром забор покрасил...

0
Flame's
0 / 0 / 0
Регистрация: 21.01.2012
Сообщений: 20
25.01.2012, 13:29  [ТС] #21
Цитата Сообщение от easybudda Посмотреть сообщение

Не по теме:


Том Соер таким макаром забор покрасил...

0
NoN141
0 / 0 / 0
Регистрация: 02.11.2012
Сообщений: 24
20.09.2013, 19:31 #22
а рандомом чтоб массивы выдавал?
0
Qwertiy
821 / 629 / 75
Регистрация: 20.08.2013
Сообщений: 2,524
20.09.2013, 20:17 #23
Цитата Сообщение от rinat_w Посмотреть сообщение
BumerangSP, согласись и код тоже оптимальный
Он другой. Он находит все вхождения, а не первое. И ничего не выводит, если не найдено.
Кстати, можно ещё короче.

Добавлено через 7 минут
C++
1
2
3
4
5
6
7
#include <stdio.h>
int main(void) {
  unsigned a[]={1,2,3,4,5,6,7,8,9,10}, n=sizeof a/sizeof(unsigned), q, x;
  scanf("%u%*1[\r\n]", &x);
  for(q=0; q<n; ++q) if(a[q]==x) return 0*(printf("Index: %u\n",q)+getchar());
  return 0*(puts("Not found")+getchar());
}
1
20.09.2013, 20:17
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.09.2013, 20:17
Привет! Вот еще темы с ответами:

Функции. Проверить, простое число или нет. Увеличить его значение на натуральное число M. Проверить, осталось ли оно простым - C++
Помогите пожалуйста 1. Дано натуральное число N, проверить, простое оно или нет. Увеличить его значение на натуральное число M....

Проверить существует ли диск - C++
У меня есть массив не жестких дисков которые есть в системе( a,e,f,g,h...) однако большинство из них просто есть,никакой флешки там не...

Rapidjson проверить существует ли объект - C++
Приветствую. Использую rapidjson и тут возникла следующая ситуация. Имеется JSON у которого при различных ситуация передаётся или не...

Проверить, есть ли в массиве А [n] числа В и С и определить, какое из чисел встречается в массиве чаще - C++
1. Проверить, есть ли в массиве А числа В и С и определить, какое из чисел встречается в массиве чаще.


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

Или воспользуйтесь поиском по форуму:
23
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru