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

Бинарный поиск - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Поменять в строке слова http://www.cyberforum.ru/cpp-beginners/thread223603.html
Нужно поменять в каждой строке массива строк первое слово с последним В результате вышел такой код. #include <iostream> #include <conio.h> #include <string.h> #include <math.h> using namespace std;
C++ Вычисление собственных значений и собственных векторов матрицы Доброго времени суток всем. Собственно написал программу, реализует степенной метод. Проблема в округлении. 1 итерация- вычисление начального вектора. 2 итерация тоже идет нормально, но потом получаются значения l=7.03 l0=7.25. по идее е=0.22, но почему то дробная часть отбрасывается и е получается равным 0-> программа заканчивает вычисления. Вот код #include<stdio.h> #include<math.h> ... http://www.cyberforum.ru/cpp-beginners/thread223587.html
Структуры C++
Была структура 1)Название Танка 2)Год выпуска 3)Калибр 4)Скорость Вывести на экран с годом выпуска 1940-1950, с калибром больше 50 #include <iostream.h> #include <conio.h> #include <string.h>
C++ Массив из символов
Здравствуйте. Программа, по задумке, должна выводить массив из символов, а вместо этого выводит лишь цифру 9. Помогите разобраться чём кроется ошибка. //CharDisplay - âûâîäèò íà ýêðàí ñèìâîëüíûé ìàññèâ // â îêíå MS Dos #include <iostream> #include <conio.h> using namespace std; // îáúÿâëåíèå ïðîòîòèïîâ void displayCharArray(char stringArray, int sizeOfloatArray);
C++ Перевод проекта С -> C++ http://www.cyberforum.ru/cpp-beginners/thread223578.html
Привет форумчане. Может кто знает как правильно перевести проект С->C++ Был пример на С. Я его переделал обернул в dll, все работает, все нормально. Нужно мне было передавать строку в С# программу. Сделал как wchar_t*. В С# принял в byte ErrMess = new byte; // и преобразовал string mess = Encoding.Unicode.GetString(ErrMess).Trim('\0'); .Захотел применить вывод сообщения как в С++
C++ Глюки с <time.h> Я написал программу, считающую сумму всех простых чисел в диапазоне от 1000000 до 2000000, деленную по модулю на число 23 и получил результат : 17 , потом мне захотелось посмотреть, сколько времени работала программа и я включил таймер. После работы поглядел на результат и он был равным 20. В чем проблема ? Вот листинг программы до : #include <stdio.h> #include <math.h> int isPrime(int... подробнее

Показать сообщение отдельно
Минич
 Аватар для Минич
66 / 66 / 3
Регистрация: 26.11.2010
Сообщений: 123
03.01.2011, 18:06     Бинарный поиск
L и R - это правая и левая индексная граница в массиве для поиска, в этом промежутке
Цитата Сообщение от $ereg@ Посмотреть сообщение
while (L<R) // что за условие
цикл будет продолжатся до тех пор пока границы массива не будут удовлетворять этому условию, т.е. левая граница должна быть всегда меньше правой
Цитата Сообщение от $ereg@ Посмотреть сообщение
m = (L+R)/2; * // для чего?
находят середину отрезка, массив кстати должен быть отсортирован по возрастанию
Цитата Сообщение от $ereg@ Посмотреть сообщение
if (k > M[m]) L = m; //что выполняет?
* * * * if (k < M[m]) R = m;
если значение в середине отрезка больше или меньше, в зависимости от этого сдвигается правая или левая граница, т.к. массив отсортированный, например, 2 3 4 6 8 9
Цитата Сообщение от $ereg@ Посмотреть сообщение
if (k == M[m]) break; * // в каком случае?
если поиск завершен, т.е. найден нужный элемент
Цитата Сообщение от $ereg@ Посмотреть сообщение
return 0;
неверно должно возвращаться как минимум найденный элемент или индекс его в массиве
 
Текущее время: 22:57. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru