P
pastorixx
Здравствуйте, задача такая: "Перевести введенное число в семеричную с/с и выяснить входит ли второе введенное число в семеричное представление первого".
Программа написана в Visual Studio C#
Код работает только до 48. Дальше перевод в 7ю систему неправильный. Подскажите как это исправить.
Программа написана в Visual Studio C#
Код работает только до 48. Дальше перевод в 7ю систему неправильный. Подскажите как это исправить.
Код:
namespace С_1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{//поменять тип с инта на соответствующий
int N = (int)numericUpDown1.Value;
int X = (int)numericUpDown2.Value;
int j = 2;
double[] m = new double[j];
double Z;
string n,x;
Z = N;
m[0] = N / 7;
if (Z >= 7)
{
for (int i = 1; i < j; i++)
{
m[i] = Z % 7;
Z = m[i];
if (Z < 7) break;
j++;
}
Z = j = 0;
for (int i = m.Length; i > 0; i--)
{
Z += m[j] * System.Math.Exp((i - 1) * System.Math.Log(10));
if (m[j] == 0) break;
j++;
}
}
label6.Text ="" + Z;
int k = 0;
n = Convert.ToString(Z);
x = Convert.ToString(X);
k = n.IndexOf(x);
if (k!=-1)
label4.Text = "да";
else label4.Text = "нет";
}
}
}