| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Общие вопросы по .NET и C# > Генетические алгоритмы. |
| Автор: compaq 4.3.2007, 17:29 | ||
| Всем привет. В общем есть такая проблемка сейчас пишу прогу по генетическим алгоритмам. Нужно преобразовать двоичное число в код грея и из кода грея обратно в двоичный код. У меня есть вот такие функции.
Всё бы хорошо, но я хочу добавить эти значения в ArrayList но так как значения в инте то они преобразуются в 10 систему. Но я хочу хранить в массиве значения в 2 системе. Как это можно реализовать. |
| Автор: Idsa 4.3.2007, 17:38 |
| Какие именно значения ты хочешь хранить? И приведи пример, что именно не так работает. |
| Автор: -Mikle- 4.3.2007, 18:06 | ||||
ничего никуда при сохранении в ArrayList не преобразуется. Если int, то он и остается в ArrayList как int. В чем вопрос то?
А если тебе надо иметь удобное витовое представление int, то пользуй System.Collections.BitArray класс. Этот класс дает удобное представление числа (или массива байтов) в виде битов и работы с ними (битами).
Что еще нужно? |
| Автор: compaq 4.3.2007, 19:04 | ||||
Извиняюсь не совсем корректно выразился. Я вот что имел в виду. Когда функция передает и возврашяет число она делает это в десятичной системе а мне нужно что бы она делал это в двоичной.
Или вернее мне в идеале вот что нужно. Есть двумерный массив к примеру пусть называется популяция. И мне нужно что бы он выгладил вот так. Популяция[Номер хромосомы][номер гена]. То есть я мог бы сделать что то типа этого.
Вот собственно что я хочу сделать но у меня всю застопорилось на том что я не как не могу норьмально сохранить в массиве двоичьное число. Добавлено @ 19:06 Кстати я знаю, что во втором куске куча ошибок не совместимых с жизнью, это так набросок просто. |
| Автор: Idsa 4.3.2007, 19:34 | ||
| Понимаешь, числа хранятся ни в десятичной, ни в восьмеричной... ни в даже шестнадцатеричной Т. о., каким образом биты, например, выводятся на экран, зависит только от того, как эти биты интерпретировала, например, функция вывода. Вот сравни, например:
Т. е. тебе нужно вычислять определенные значения, сохранять их в ArrayList, не парясь. А вот вывод этих чисел тебе нужно сделать с умом. Для этого можешь, например, заюзать BitArray, как посоветовал -Mikle-. |
| Автор: 0000 9.3.2007, 15:57 |
| погодь, я вечером домой приду - у меня есть проги по генетическим алгоритмам, еще на 3 курсе в универе делал - там скину кусок кода, а сейчас и не помню толком |