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

Двоичный поиск - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Создать класса «однонаправленный кольцевой список». http://www.cyberforum.ru/cpp-beginners/thread363808.html
Подскажите пожалуйста, в чем ошибка, так как компилятор ошибку не выдает, одна при запуске вылетает, при отладке вылетает на этой строке *pend = temp; class Node { public: int d; // Данные Node *next; // Указатель на последующий узел Node () { // Конструктор next = 0;
C++ Массивы. Табличное представление данных Задание. Написать программу - консольное приложение, работающую в текстовом режиме, обеспечивающую запрос у пользователя ввод значений элементов массива и "табличное" отображение введенных данных в окне приложения. Обеспечить хранение вводимых данных в виде элементов массива. Тип элементов массив взять из табл. 2. Дополнительные требования к программе: 1) каждая переменная при вводе должна... http://www.cyberforum.ru/cpp-beginners/thread363798.html
C++ отбрасывание
программа должна отбрасывать от числа,записанного в пятеричной системе,первые цифры до тех пор пока число не станет совершенным.
C++ Вычислить определитель квадратной матрицы
Помогите пожалуйста написать код на С++(CodeGear). Нужно вычислить определитель квадратной матрицы(N*N). Вводить матрицу с помощью Randomize.
C++ Найти все пары дружественных чисел в диапазоне от 200 до 300 http://www.cyberforum.ru/cpp-beginners/thread363775.html
Помогите пожалуйста с решением задачи в С++. Вот условие: используя оператор цикла for, решить задачу: Два натуральных числа называются дружественными, если каждое из них равняется сумме всех делителей другого, кроме самого этого числа. Найти все пары дружественных чисел, которые содержатся в диапазоне от 200 до 300.
C++ Запись файла Здравствуйте, уважаемые господа. Можно ли каким-то образом уменьшить размер сохраняемого в результате работы программы файла? Пишу довольно много различных данных стандартных типов, а также структуры и объекты при помощи функции fwrite. Для структур использую #pragma pack(push,1) и #pragma pack(pop). Пишу под вин, поэтому можно использовать специфические функции. подробнее

Показать сообщение отдельно
xexew
0 / 0 / 0
Регистрация: 22.02.2011
Сообщений: 76
09.10.2011, 22:48     Двоичный поиск
Нашел на форуме двоичный поиск, не подскажите как нужно изменить код, что бы программа выводила еще и индекс, в котором находится введенное число?

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
// bin_search.cpp : Defines the entry point for the console application.
//
 
#include "stdafx.h"
#include <iostream>
 
using namespace std;
 
int BinSearch(const int* arr, int count, int key);
 
int main()
{
    const int n = 5;
    int arr[n] = {1, 2, 3, 4, 5};
    int key;
    
    cout << "key: ";
    cin >> key;
 
    if(BinSearch(arr, n, key) != -1)
      cout << "Yes" << endl;
    else
      cout << "No" << endl;
    
    return 0;
}
 
int BinSearch(const int* arr, int count, int key) 
{
  int l = 0;            // нижняя граница
  int u = count - 1;    // верхняя граница
         
  while (l <= u) {
    int m = (l + u) / 2;
    if (arr[m] == key) return m;
    if (arr[m] < key) l = m + 1;
    if (arr[m] > key) u = m - 1;
  }
  return -1;
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 11:50. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru