Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Клуб программистов > Свободное общение
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 20.10.2010, 14:32   #31
mrChester
Я
Форумчанин
 
Аватар для mrChester
 
Регистрация: 24.04.2010
Сообщений: 693
По умолчанию

Если как функцию организовать код, твой способ будет работать? Я имею ввиду сформированный массив получится повернуть?
Все персонажи вымышлены, все совпадения случайны.
Если жизнь игра, тогда я её разработчик ©.
mrChester вне форума Ответить с цитированием
Старый 20.10.2010, 14:36   #32
Utkin
Старожил
 
Аватар для Utkin
 
Регистрация: 04.02.2009
Сообщений: 17,351
По умолчанию

Получится повернуть любой массив, более того, не внимательно прочитав задание я сначала неудомевал, зачем вообще нужен второй массив? Все изменения я предполагал проводить на одном массиве. Оказывается в задании написано, что нужен второй массив (то есть предполагается, что массивы в будущем будут отличны друг от друга). Только поэтому я их копирую. Реально, если требуется именно "повернутый" массив (без изменения содержимого обеих массивов), копировать смысла нет, достаточно одного, первоначального.
Маньяк-самоучка
Utkin появился в результате деления на нуль.
Осторожно! Альтернативная логика
Utkin вне форума Ответить с цитированием
Старый 20.10.2010, 14:42   #33
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
Оказывается в задании написано, что нужен второй массив
Дружище, я не знаю зачем там описали именно перенос в другой массив. Честно.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 20.10.2010, 14:42   #34
mrChester
Я
Форумчанин
 
Аватар для mrChester
 
Регистрация: 24.04.2010
Сообщений: 693
По умолчанию

Покажи код, че-то на словах не понимаю Интересно блин
Все персонажи вымышлены, все совпадения случайны.
Если жизнь игра, тогда я её разработчик ©.
mrChester вне форума Ответить с цитированием
Старый 20.10.2010, 14:50   #35
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
Покажи код
Это Уткину?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 20.10.2010, 14:54   #36
Utkin
Старожил
 
Аватар для Utkin
 
Регистрация: 04.02.2009
Сообщений: 17,351
По умолчанию

Код:
// Поворот массива в одну сторону :)
// Shift - указывает, на сколько надо массив повернуть
function Rotate(Mas: Array of Integer; Shift, Index: Integer): integer;
var
      Ind: integer;
begin

      // Пересчитаем в реальный индекс массива
      Ind:=Shift+Index;
      ind:=ind mod 10; 

      result:=Mas[ind];
end;
Что-то вроде этого. Только смещает кажись на единицу больше (или меньше). То есть я так думаю, что на единицу в сторону...



----ДОБАВИЛ-----------

Получение повернутого массива:
Код:
procedure TForm1.FormCreate(Sender: TObject);
var
    a: Array [1..10] of Integer;
    b: String;
    i: Integer;
begin

    a[1]:=1;
    a[2]:=2;
    a[3]:=3;
    a[4]:=4;
    a[5]:=5;
    a[6]:=6;
    a[7]:=7;
    a[8]:=8;
    a[9]:=9;
    a[10]:=10;

    b:='';

    // Выведем в строку при смещении на 4
    for i:=1 to 10 do
    begin

        b:=b+IntToStr(Rotate(a, 3, i));
    end;

    Form1.Caption:=b;
end;
----ДОБАВИЛ---------------
Как видно из кода - массив не копируется . Крутить в другую сторону можно той же функцией, главное правильно Shift задать.
Маньяк-самоучка
Utkin появился в результате деления на нуль.
Осторожно! Альтернативная логика

Последний раз редактировалось Utkin; 20.10.2010 в 15:00.
Utkin вне форума Ответить с цитированием
Старый 20.10.2010, 15:03   #37
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
Как видно из кода - массив не копируется
Ошибаешся
Копируется. В строку.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 20.10.2010, 15:05   #38
Utkin
Старожил
 
Аватар для Utkin
 
Регистрация: 04.02.2009
Сообщений: 17,351
По умолчанию

Цитата:
Сообщение от Stilet Посмотреть сообщение
Ошибаешся
Копируется. В строку.
Это для наглядности, чтобы проверить работу функции. Надо же удостовериться что она работает правильно . Задав другое смещение можно с этого же массива представлять другой "повернутый". Сам массив А остается без изменений в любое время.
Маньяк-самоучка
Utkin появился в результате деления на нуль.
Осторожно! Альтернативная логика

Последний раз редактировалось Utkin; 20.10.2010 в 15:07.
Utkin вне форума Ответить с цитированием
Старый 20.10.2010, 15:10   #39
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Кстати. Для наглядности можно поискать тут уже обсуждавшийся пример как поменять значения двух переменных местами не используя третью.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 20.10.2010, 15:18   #40
Utkin
Старожил
 
Аватар для Utkin
 
Регистрация: 04.02.2009
Сообщений: 17,351
По умолчанию

Код:
a :=a+b;
b :=a-b;
a :=a-b;
Кажись, так...
Маньяк-самоучка
Utkin появился в результате деления на нуль.
Осторожно! Альтернативная логика
Utkin вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Задание на С++ Sergius X Помощь студентам 1 24.10.2009 23:23
Задание / Си Drozvd Помощь студентам 6 11.08.2009 06:33
Задание $ user570 Фриланс 3 15.06.2008 22:11