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

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

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 17.09.2013, 12:51   #11
evg_m
Старожил
 
Регистрация: 20.04.2008
Сообщений: 5,542
По умолчанию

Цитата:
Мне нужно метить атомы в 3 мерном массиве.
Код:
type
Tatom =record pl1, pl2, pl3: byte; end;
a: array [...] of Tatom;

a[i,j, d1].pl1:=0;
a[i,j, d1].pl2:=0;
a[i,j, d1].pl3:=1;
отладчик будет знать о record и покажет поля.
Код:
function atom(p1, p2, p3: integer): TAtom;
begin
  result.pl1:=p1;
  result.pl2:=p2;
  result.pl3:=p3;
end;

a[i,j, d1]:=atom(0,0,1);
задать состояния в программе также просто и наглядно (для человека) как и в случае :='001';
Код:
type
TPL =(pl1, pl2, pl3);
a: array of [..., TPL]
a[i,j, d1, pl1]:=0;
a[i,j, d1, pl2]:=0;
a[i,j, d1, pl3]:=1;
есть и другие пути решения проблемы.

Цитата:
Метка находиться под атомом и она должна иметь информацию о количестве атомов того же сорта в плоскостях.
мне нужно ВЫВОДИТЬ информацию о количестве ....

Код:
LebelXXX.caption:=format('%d%d%d', [a[i,j, d1].pl1, a[i,j, d1].pl2, a[i,j, d1].pl3] ); в нужном месте.
Код:
function Atomtostr(atom: Tatom): string;
begin
  result:=format('pl1=%d; pl2=%d; pl3=%d;', [atom.pl1, atom.pl2, atom.pl3] );
end;

LebelXXX.caption:=atomstr( a[i,j, d1]);// в нужном месте.
программа — запись алгоритма на языке понятном транслятору

Последний раз редактировалось evg_m; 17.09.2013 в 13:15.
evg_m вне форума Ответить с цитированием
Старый 17.09.2013, 13:39   #12
IliaIT
Форумчанин
 
Аватар для IliaIT
 
Регистрация: 17.03.2009
Сообщений: 977
По умолчанию

не знаю как в дельфи, но в приборах эта задача часто встречается и называется двоично-десятичный код. вы берите только чего то из целых чисел 4х байтовых (удобнее и меньше шансов нарваться на ошибку). и соответственно привязываете к массиву в 4 байта абсолютных значений, а в этих 4х байтах нужная вам десятеричная цифра. (ну в вики гляньте что за формат проще будет, но свой тип указанный выше однозначно удобнее для хранения и обработки, но не для передачи сторонним программам и приборам.)
Интуитивно понятный интерфейс - это такой интерфейс, для работы с которым нужна недюжинная интуиция.
IliaIT вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
error C2664: itoa: невозможно преобразовать параметр 1 из 'int *' в 'int' + запись в файл niixon Общие вопросы C/C++ 4 14.09.2013 23:35
Как обратиться к элементу, если разные типы данных (int* и int) Fanyuus Общие вопросы C/C++ 4 03.06.2013 23:47
Двухзначное число int записать как пару однозначных int (c++) narien Помощь студентам 2 08.01.2012 15:10
функция float average(int arrray[],int from,int to) yuliyayuliya Помощь студентам 0 25.04.2011 21:55