Всем привет, подскажите как вывести стринговое значение (string) в label.Text (C#, Visual Studio 2017, Windows Form Application);
int n = int.Parse(textBox1.Text);
int sot = n / 100;
int des = n % 100 / 10;
int ed = n % 10;
switch (sot)
{
case 1:
string n1 = "Сто";
break;
case 2:
n1 = "Двести";
break;
case 3:
n1 = "Триста";
break;
case 4:
n1 = "Четыриста";
break;
case 5:
n1 = "Пятьсот";
break;
case 6:
n1 = "Шестьсот";
break;
case 7:
n1 = "Семьсот";
break;
case 8:
n1 = "Восемьсот";
break;
case 9:
n1 = "Девятьсот";
break;
case 0:
n1 = "";
break;
}
switch (des)
{
case 2:
string n2 = "двадцать";
break;
case 3:
n2 = "тридцать";
break;
case 4:
n2 = "сорок";
break;
case 5:
n2 = "пятьдесят";
break;
case 6:
n2 = "шестьдесят";
break;
case 7:
n2 = "семьдесят";
break;
case 8:
n2 = "восемьдесят";
break;
case 9:
n2 = "девяносто";
break;
case 0:
n2 = "";
break;
case 1:
switch (ed)
{
case 0:
n2 = "десять";
break;
case 1:
n2 = "одиннадцать";
break;
case 2:
n2 = "двенадцать";
break;
case 3:
n2 = "тринадцать";
break;
case 4:
n2 = "четырнадцать";
break;
case 5:
n2 = "пятнадцать";
break;
case 6:
n2 = "шестнадцать";
break;
case 7:
n2 = "семнадцать";
break;
case 8:
n2 = "восемнадцать";
break;
case 9:
n2 = "девятнадцать";
break;
}
break;
}
switch(ed)
{
case 1:
string n3 = "один";
break;
case 2:
n3 = "два";
break;
case 3:
n3 = "три";
break;
case 4:
n3 = "четыре";
break;
case 5:
n3 = "пять";
break;
case 6:
n3 = "шесть";
break;
case 7:
n3 = "семь";
break;
case 8:
n3 = "восемь";
break;
case 9:
n3 = "девять";
break;
case 0:
n3 = "";
break;
}
if (des != 1)
{
label2.Text = n1 + n2 + n3;
}
else
{
label2.Text = n1 + n2;
}
Я вывдил данным образом :
if (des != 1)
{
label2.Text = n1 + n2 + n3;
}
else
{
label2.Text = n1 + n2;
}
Ошибка:
Проблема в зоне видимости переменных, а не в присвоении значения строки тексту label.
n1
,n2
и n3
нужно объявить до switch
.
var n1 = string.Empty;
var n2 = string.Empty;
var n3 = string.Empty;
switch(sot)...
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab