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

Черный ящик..) - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Как установить компонент рабодающий на Билдере 5 в Билдер 2009? http://www.cyberforum.ru/cpp-beginners/thread47183.html
Добрый день, возникла такая проблемка, есть проект написанный на Билдере 5, в проекте используются компоненты - EMailLabel, RbControls, ReportPrinter Pro 3.0, VtkTools, XPMenu. Нужно как-то попытаться запустить этот проект из под Билдера 2009, но вот компоненты от Билдера 5 не хотят ставится под Билдер 2009, как нужно пробовать менять компоненты, чтобы они стали под 2009 Билдер?
C++ Зчево начать Я умею програмировать та Delphi гдето на среднем уровне а на С++ ищё не работал подскажите с чиво лудьше начать и по возможности литературу. http://www.cyberforum.ru/cpp-beginners/thread47161.html
Указатель на функцию - член класса. C++
делаю так: class c1 { void foo(); } class c2 { void (*fp)();
Работа с базой C++
Всем привет мужики, сам я являюсь PHP программистом, но тут у меня возникла потребность написать прогу на Сях, именно его выбрал потому что синтаксис почти один и тот же что и на ПХП. Значит программа должна выводить данные из базы по запросу пользователя. Что бы было понятнее это база поиска автомобильных запчастей. Что можете посоветовать каким образом лучше всего обрабатывать базу ? Скорее...
C++ Debug Dev C++ http://www.cyberforum.ru/cpp-beginners/thread47066.html
Помогите пожалуйста разобраться с Дебаггером, не понимаю как им пользоваться, при нажатии F4, Ctrl+w, F7, F8, ничего не происходит..
C++ Функция getc (FILE*) при первом вызве считывает НЕ ПЕРВЫЙ символ файла.Почему? Друзья! Здравствуйте! Вот код. #include <iostream> using namespace std; int main () { FILE* zapis_v_fail; FILE* chetnie_iz_faila; //Записываем сыимолы в файл подробнее

Показать сообщение отдельно
VorobeY1326
Ученик 11 класса)
4 / 4 / 0
Регистрация: 11.04.2009
Сообщений: 67

Черный ящик..) - C++

14.08.2009, 19:57. Просмотров 809. Ответов 3
Метки (Все метки)

Доброго времени суток, форумчане!
Читая Страуструпа наткнулся на упражнение - понять, что делает функция:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
void send(int* to,int* from,int count)
//Черный ящик. Полезные комментарии умышленно удалены.
{
 int n = (count+7)/8;
 switch(count%8) {
 case 0: do{ *to++=*from++;
 case 7:       *to++=*from++;
 case 6:       *to++=*from++;
 case 5:       *to++=*from++;
 case 4:       *to++=*from++;
 case 3:       *to++=*from++;
 case 2:       *to++=*from++;
 case 1:       *to++=*from++;
         } while (--n>0);
    }
}
Для проверки черного ящика создал похожую функцию(которая считает количество " *to++=*from++ " ):

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
int bbox(int count)
{
 int result = 0;
 int n = (count+7)/8;
 switch(count%8) {
 case 0: do{ result++;
 case 7:     result++;
 case 6:     result++;
 case 5:     result++;
 case 4:     result++;
 case 3:     result++;
 case 2:     result++;
 case 1:     result++;
        } while (--n>0);
    }
    return result;
}
 
int main()
{
        for (int i=-26; i<=26; i++)
        {
                cout << i << " - " << bbox(i) << endl;
        }
        cin.get();
        return 0;
}
И получил на выходе:
Код
-26 - 0
-25 - 0
-24 - 8
-23 - 0
-22 - 0
-21 - 0
-20 - 0
-19 - 0
-17 - 0
-16 - 8
-15 - 0
-14 - 0
-13 - 0
-12 - 0
-11 - 0
-10 - 0
-9 - 0
-8 - 8
-7 - 0
-6 - 0
-5 - 0
-4 - 0
-3 - 0
-2 - 0
-1 - 0
-0 - 8
1 - 1
2 - 2
3 - 3
4 - 4
5 - 5
6 - 6
7 - 7
8 - 8
9 - 9
10 - 10
11 - 11
12 - 12
13 - 13
14 - 14
15 - 15
16 - 16
17 - 17
18 - 18
19 - 19
20 - 20
21 - 21
22 - 22
23 - 23
24 - 24
25 - 25
26 - 26
ТО есть получается, что этот код просто копирует count элементов из from в to (массивы int)??
(Если не рассматривать случаи с отрицательным count)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru