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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 14.11.2011, 10:25   #1
ubun
Форумчанин
 
Аватар для ubun
 
Регистрация: 06.12.2010
Сообщений: 198
По умолчанию бесконечная таблица заполнить натуральными числами по принципу змейки (Паскаль)

бесконечная таблица заполнена подряд идущим целыми положительными числами, начиная с левого угла по принципу змейки, как показано на рисунке


_________
Убедительнейшая просьба - давать название темы так,
чтобы название адекватно отражало суть решаемой задачи/проблемы.
эту тему я исправил.
Но в будущем неукоснительно соблюдайте это правило!

Модератор.
Изображения
Тип файла: jpg массив.jpg (24.7 Кб, 117 просмотров)

Последний раз редактировалось Serge_Bliznykov; 14.11.2011 в 16:53.
ubun вне форума Ответить с цитированием
Старый 14.11.2011, 10:27   #2
Utkin
Старожил
 
Аватар для Utkin
 
Регистрация: 04.02.2009
Сообщений: 17,351
По умолчанию

Вы что там курите? Дайте мне такой же травы, что ли. Ядрены пассатижи, в чем вопрос-то? Ну заполнена бесконечная таблица целыми положительными числами и заполнена. Аллах с ней. Чего надо-то?
Маньяк-самоучка
Utkin появился в результате деления на нуль.
Осторожно! Альтернативная логика
Utkin вне форума Ответить с цитированием
Старый 14.11.2011, 10:30   #3
ubun
Форумчанин
 
Аватар для ubun
 
Регистрация: 06.12.2010
Сообщений: 198
По умолчанию

нужн код как это заполняется
ubun вне форума Ответить с цитированием
Старый 14.11.2011, 10:31   #4
ubun
Форумчанин
 
Аватар для ubun
 
Регистрация: 06.12.2010
Сообщений: 198
По умолчанию

код на паскале а числа идут до 1000
ubun вне форума Ответить с цитированием
Старый 14.11.2011, 10:34   #5
Utkin
Старожил
 
Аватар для Utkin
 
Регистрация: 04.02.2009
Сообщений: 17,351
По умолчанию

То есть таблица с поста #4 перестала быть бесконечной? Или дальше она тупо не заполняется?
Для решения задачи достаточного одного цикла с шагом 9. Остальное - правильно распихать цифры по элементам таблицы.
Маньяк-самоучка
Utkin появился в результате деления на нуль.
Осторожно! Альтернативная логика
Utkin вне форума Ответить с цитированием
Старый 14.11.2011, 10:35   #6
ubun
Форумчанин
 
Аватар для ubun
 
Регистрация: 06.12.2010
Сообщений: 198
По умолчанию

а не покажете фрагментчик
ubun вне форума Ответить с цитированием
Старый 14.11.2011, 10:42   #7
Utkin
Старожил
 
Аватар для Utkin
 
Регистрация: 04.02.2009
Сообщений: 17,351
По умолчанию

Код:
Цикл по i от 1 до 1000 с шагом 9
     матрица[i div 3, 0]=i
     матрица[(i div 3)+1, 0]=i+1
     матрица[(i div 3)+1, 1]=i+2
     матрица[(i div 3), 1]=i+3
Ну и так далее, до 9. Возможно где-то ошибся в коэффициентах. Но это не важно, главное сам принцип подхода к решению задачи.
Маньяк-самоучка
Utkin появился в результате деления на нуль.
Осторожно! Альтернативная логика
Utkin вне форума Ответить с цитированием
Старый 14.11.2011, 10:45   #8
ubun
Форумчанин
 
Аватар для ubun
 
Регистрация: 06.12.2010
Сообщений: 198
По умолчанию

спасибо как вас отблагодарить (нажимаю на весы и то говорить что должен отдать голос за кого то другого)

спасибо милый человек тебе большой поклон
ubun вне форума Ответить с цитированием
Старый 14.11.2011, 10:48   #9
Utkin
Старожил
 
Аватар для Utkin
 
Регистрация: 04.02.2009
Сообщений: 17,351
По умолчанию

Мне будет большой плюс, если ты начнешь правильно и не спеша формулировать свои мысли. Правильно поставленный вопрос это уже половина ответа.
Попробуй подойти к решению с другой стороны. Сначала распиши координаты каждой точки от 1 до 9. А потом придумай как дописывать множитель (индекс увеличивающийся в цикле).
Маньяк-самоучка
Utkin появился в результате деления на нуль.
Осторожно! Альтернативная логика

Последний раз редактировалось Utkin; 14.11.2011 в 10:51.
Utkin вне форума Ответить с цитированием
Старый 14.11.2011, 12:53   #10
TinMan
Форумчанин
 
Аватар для TinMan
 
Регистрация: 05.09.2011
Сообщений: 869
По умолчанию

Уткин, я что-то совсем не врубаюсь, что ты такое имел в виду.. При чем тут 9? Ты что ли хочешь замостить матрицу этим фрагментом? Мне кажется, ts совсем не то имел в виду..

Короче, вот код, который плодит змей любого размера. Только желательно позаботиться, чтоб эта таблица уместилась на экране. Я бы рекомендовал начать с n=200 и m=15.
Код:
const
  n= 1000;
  m= 32;  // must be m*m>=n

var
  a: array[1..m,1..m] of integer;
  i,j,l,x,y: integer;

begin
  for i:=1 to n do begin
    l:= Trunc(Sqrt(i-1));
    x:= i-l*l;
    if x>l then x:= l+1;
    y:= l*(l+2)+2-i;
    if y>l then y:= l+1;
    if Odd(l) then a[x,y]:= i else a[y,x]:= i
  end;

  for i:=1 to m do begin
    for j:=1 to m do write(a[i,j]:Trunc(Ln(n+0.5)/Ln(10)+2));
    writeln
  end;
  readln
end.
Задача сделать то же самое, но без массива, тоже интересная )). Уткин?..
Предпочитаю на "ты".
TinMan вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как заполнить stringgrid по принципу лото? -=Mafia=- Общие вопросы Delphi 7 30.09.2011 13:31
Заполнить массив случайными числами. Fender92 Паскаль, Turbo Pascal, PascalABC.NET 4 19.03.2011 17:05
Типизированный файл с натуральными числами. Числа, встречающиеся 1 раз переписать в другой файл [Паскаль] mifomen Помощь студентам 7 16.12.2010 22:00
записать дату натуральными числами (С++) Alina5545 Помощь студентам 2 13.04.2010 22:05
записать дату натуральными числами Alina5545 Общие вопросы C/C++ 12 13.04.2010 22:03