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

Бинарный поиск не находит нулевой элемент массива - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Добавление в конец односвязного списка http://www.cyberforum.ru/cpp-beginners/thread1813720.html
Не получается написать эту функцию.Добавление в начало более тривиально.Сам список представлен так. Насколько я знаю,нужно 2 случая рассмотреть 1)когда список пуст (head==tail) 2) и в остальных Но как реализовать не знаю Прототип функции- push_back(int) struct Single_node { Single_node *next;
C++ Некорректная работа команды continue в цикле при проверке корректности введенных данных Доброго времени суток, уважаемые форумчане. Есть программа для определения количества купюр (монет) того или иного номинала, которое необходимо иметь в наличии для того, чтобы выдать наличными деньгами некоторое количество (различных) сумм некоторому количеству получателей без сдачи. В строках 36-40 я попытался реализовать защиту от неверного ввода данных в переменную fSummaKvydache (потому как... http://www.cyberforum.ru/cpp-beginners/thread1813719.html
Требуется написать перестановки без повторений C++
#include <iostream> using namespace std; const int N =11; int n,a,p; void f(int k){ if(k == n+1){ for (int i = 1;i <= n; i++){ cout << p << ' '; } cout << endl;
C++ Конвертировать действительное число в денежный формат (рубли и монеты)
Создайте программу которая переводит введенное дробовое число в денежный формат (рубли и монеты). :wizard:
C++ С++ Найти суму n1 цифер дробовой части действительного числа и вывести на экран http://www.cyberforum.ru/cpp-beginners/thread1813699.html
:declare:
C++ Создать двусвязный список согласно условию Не могли бы вы мне помочь с двусвязными списками. Я тут немного написала, но это всего малая часть. Просто не пойму как это нужно написать. Создать двусвязный список у которого имеется единственное поле-ключ.Поиск информации осуществляется по номеру в списке(не по полю). Добавить новый элемент после минимального ключа.И произвести удаление по номеру в списке. #include<iostream>... подробнее

Показать сообщение отдельно
Pavel Rem
 Аватар для Pavel Rem
11 / 11 / 0
Регистрация: 15.07.2016
Сообщений: 48
26.09.2016, 03:08     Бинарный поиск не находит нулевой элемент массива
Мой бинарный поиск не находит нулевой элемент массива. Не получается исправить ошибку. Подскажите кто-нибудь пожалуйста.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <iostream>
using namespace std;
#define S 12
//==================================================
int screch(int mas[], int size, int num, bool &G) { 
    int a, b, c; G = true;
    for ( a = 0, b = size / 2, c = size; mas[b] != num;) {
        if (num > mas[b]) { a = b; b += (c - b) / 2; }
        else { c = b; b -= (b - a) / 2; }
        if (a==b || b==c ) { G = false; break;} // если число не найдено возвращает false;
    }
    return b;
}
//===================================================
int main(void) {
    int mas[S] = { 2,6,8,12,14,16,18,21,26,32,36,45 }, 
    num, ind; bool G;
A:  cin >> num;
    ind = screch(mas, S, num, G);
    if (G) cout << "index = " << ind << endl;
    else cout << "not found" << endl;
goto A;
}
Добавлено через 2 часа 56 минут
Дайте подсказку!)
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 15:46. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru