Значит вот такая задача
Составить 2-о мерную матрицу, в которой будут записаны цифры от 1 до N в 2-й форме исчисления, так что бы каждый символ был отдельным элементом матрицы. Матрица должна иметь размерность [n,k] где ( k-заведомо заданное число)
уже написал код но он работает не правильно, помогите исправить
пример n=7; k=4;
массив приобретает такие значения
1000
1000
1100
1000
1010
1100
1110
а нужно
1000
0100
1100
0010
1010
0110
1110
вот код
string[] BinVector = new string[n];
int i2 = 0;
int i2b = 0;
for (i2 = 0; i2 < n; i2++)
{
i2b = i2+1;
BinVector[i2] = Convert.ToString(i2b, 2);
}
int[ , ] BinVekFormat = new int[n,k];
int iN = 0;
for (i2 = 0; i2 < n; i2++)
{
int jK = 0;
foreach (char ctrCkn in BinVector[i2])
{
BinVekFormat[iN, jK] = int.Parse(ctrCkn.ToString());
jK++;
}
iN++;
}
13 марта 2010 в 22:05
ты гений!! спасибо !!!
13 марта 2010 в 11:00
int n = 15;
int k = 8;
string tempStr;// одна строка в 2x
char [] tempChars = new char[k];//Временная строка
string[] num2x = new string[n];//заполняется готовыми строками
for (int i = 0; i < n; i++)
{
tempStr = Convert.ToString(i, 2);//число в двоичной системе
int l = tempStr.Length – 1;
//заполнение временной строки нулями и единицами
for (int j = k-1; j >= 0; j–)
{
if(l >= 0)
tempChars[j] = tempStr[l];
else
tempChars[j] ='0';
l–;
}
num2x[i] = new string(tempChars);
Console.WriteLine(num2x[i]);
}
Console.ReadKey();
//============Выводит:==========================
00000000- 0
00000001- 1
…
00001110 -14
13 марта 2010 в 10:03
n – количество цифр, а к – что ? количество символов в одном элементе ?