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

Полоска - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Функция округления чисел http://www.cyberforum.ru/cpp-beginners/thread848232.html
Здравствуйте, подскажите пожалуйста. Написала функцию округления цифр void RoundingFunction(double RoundingVariable, int& ResultVariable) { double IntegerPart=0; ResultVariable=0; if...
C++ Не вмещается число Начал изучать с++ по учебнику, и вот есть такая практическая задачка, нужно первый пример переделать с использованием array вместо масива, вместо long long использовать long double, и расчитать не 16... http://www.cyberforum.ru/cpp-beginners/thread848190.html
C++ Удаление слова из текста
Даны текстовый файл и слово. Напечатать те строки файла, которые содержат данное слово без этого слова. Написал прогу которая удаляет из строки лишь первое вхождение слова. Как сделать, чтобы она...
группы символов, разделенные пробелами C++
Помогите написать программу ничего не получается уже сижу 2 дня и не в какую. За ранее спасибо)) группы символов, разделенные пробелами и не содержащие пробелов внутри себя, будем называть...
C++ Создать класс Hexadec1, который будет содержать число в 16-ричной системе http://www.cyberforum.ru/cpp-beginners/thread848179.html
1)разработать класс, содержащий два члена (назовем их first, second), и следующие методы: – ввод с клавиатуры Read; – вывод на экран Display; – метод, указанный в задании. Поле first – целое...
C++ Задача По результатам опроса прошлого года известен список 10 политических деятелей в порядке убывания их популярности. Проведен новый опрос. Каждый из N журналистов (N - заданное число) назвал три... подробнее

Показать сообщение отдельно
Gepar
1177 / 533 / 20
Регистрация: 01.07.2009
Сообщений: 3,517
25.04.2013, 19:02  [ТС]
veverix, да я уже написал читая то описание решения что я постил выше, правда немного с индексами там намудрили, но сам не понимая что надо сделать делая то что там писали получил вроде то что надо. По крайней мере результаты выдаёт такие же как и паскалевская версия так что вроде всё ок.
Моё решение приняло следующий вид:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
    Item* items = new Item[size];
    
    //создаём начальную полоску
    for(int i=0;i<size; i++)
        items[i].number = i+1;
 
    //запоминаем нач. размер
    int nowSize = size;
    //пока сгибается полоска
    while(nowSize / 2)
    {
        //сгибаем её, предварительно "развернув" задом-наперёд сгибаемые элементы
        for(int i=0;i<nowSize/2;i++)
            add(&items[i] , flip(items+nowSize-i-1));
 
        //уменьшаем размер в два раза
        nowSize /= 2;
            
    }
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru