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

Переделать под реккурсию - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Удалить вершины ДДП ,у которых только левый потомок http://www.cyberforum.ru/cpp-beginners/thread961595.html
Два дня сижу ,полностью рабочий алгоритмов не могу составить. Надеюсь на помощь. P.S поиск юзал ,много похожих тем пересмотрел.Но ничего адекватного и близкого к моей проблеме не нашел. Основную...
C++ Массив: Как реализировать изменения в массиве по заданным координатам на экране есть двумерный масив 78 100, и как реализировать что будет изменятся в масиве только возле координат y x или i j. Я знаю только system ("cls"), а как чтобы по пару символов изменялось не шарю http://www.cyberforum.ru/cpp-beginners/thread961583.html
C++ не могу найти ошибку в коде.1 курс (с++)
Объявить и заполнить двумерный вещественный массив числами по формуле: aj = сумма от n=0 по i (i+1)(j+5)\i+j+1. Отсортировать каждую строку массива по убыванию методом быстрой сортировки. #include...
Лабораторная 1 из павловской C++
Здравствуйте господа программисты. У меня очень простая лаба но вот ничего не пойму. Задание: Напишите программу для расчёта по двум формулам. Предварительно подготовьте тестовые примеры по второй...
C++ Вычислить, сколько прошло часов и полных минут http://www.cyberforum.ru/cpp-beginners/thread961566.html
Идёт K секунда суток. Вычислить, сколько прошло часов и полных минут к этому моменту, при этом согласовать со значением слова (час, часа, часов, минуты, минут).
C++ Разработка движков,графики и т.д. для игр Добрый день,хочу научиться писать игровые движки,графику для игр и всё в этом роде.Что нужно знать для этого?(посоветуйте литературу,буду благодарен). Примерно знаю,что графика осуществляется на... подробнее

Показать сообщение отдельно
Fobos1994
4 / 4 / 0
Регистрация: 15.04.2011
Сообщений: 274

Переделать под реккурсию - C++

24.09.2013, 21:37. Просмотров 250. Ответов 1
Метки (Все метки)

Есть задача,поиск числа бинарным методом, в нее нужно добавить решение с помощью рекурсиипомогите пожалуйста!
C++ (Qt)
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
59
60
61
62
63
64
65
66
#include <iostream>
#include <conio.h>
using namespace std;
 
int BinSearch(int *M, int n, int k);    //(int *M, int n, int k)-Г·ГІГ® Г§Г*Г¤.Гў ГЄГ*Г·ГҐГ±ГІГўГҐ ГЇГ*Г°Г*ìåòðîâ?!
 
int main()
{
    const int n=9;                 // Г·ГІГ® îáîçГ*Г*Г·Г*ГҐГІ?
    int A[n];
    int x,j,a,i;
 
    for (size_t i=0; i<n; i++)
    {
        cout << "Vvedite A[" << i << "] = ";
        cin >> A[i];
    }
        for (size_t i=0; i<n; i++)
    {
printf("%i ",A[i]);
    }
    puts("");
 
    for(j=1; j<n; j++)
    for (i=0; i<n-j; i++)
    {
        if (A[i]>A[i+1])
        {
            a=A[i];
            A[i]=A[i+1];
            A[i+1]=a;
        }
    }
 puts("");
 puts("Otsortirovaniy masiv: ");
puts("");
for (i=0; i<n; i++){
printf("%i ",A[i]);
 
}
           puts("");
    cout << "Nayti Eto 4islo -> ";
    cin >> x;
 
       puts("4islo pod indexom: ");
    cout << BinSearch(A, n, x);
    getch();
    return 0;
}
 
int BinSearch(int *M, int n, int k)
{
    int L = 0;
    int R = n;
    int m;
    int z = 0;
 
    while (L<R)    {
        z++;
        m = (L+R)/2;
if (k > M[m]) L = m;
        if (k < M[m]) R = m;
        if (k == M[m]) return m;
    }
    return -1;
        }
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru