Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

C# Преобразование типов стрин ,доубле

YaKov Ученик (140), закрыт 14 лет назад
{
Console.Write("a=");
double a = double.Parse(Console.ReadLine());
String f = ("нечетное");
String t = ("четное");
double h=(a % 2);
double g = ((h != 0) ? t : f);
Console.WriteLine(g);
}
не получается сделать чтобы выводил словами,ошибка в преобразовании типов...как сделать чтобы выводил?
Дополнен 14 лет назад
все решилось намного проще
static void Main()
{
Console.Write("a=");
double a = double.Parse(Console.ReadLine());

if (a % 2 != 0)
Console.WriteLine("нечетное");
else Console.WriteLine("четное");

}
Лучший ответ
Юзер Ученик (173) 14 лет назад
Я Вас поправлю: значения "четное" , "нечетное" может относиться только к типу целых чисел. Поэтому типы
double нужно заменить на Uint32.
{
Console.Write("a=");
string sTemp = Console.ReadLine();
try
{
Uint32 ui32Temp = Convert.ToUInt32(sTemp);
if((ui32Temp % 2) == 0) Console.Write("a = четное");
else Console.Write("a = нечетное");
}
catch(Exepcion err)
{
Console.WriteLine("Вы ввели не целое число");
}

}
Остальные ответы
egregreh Мыслитель (8817) 14 лет назад
try {
Console.Write("a=");
double a = double.Parse(Console.ReadLine());
String f = ("нечетное");
String t = ("четное");
double h=(a % 2);
double g = ((h != 0) ? t : f);
Console.WriteLine(g);
}
catch(Exception ex)
{
Console.WriteLine("Ошибка"):
}
Danylo dan Профи (859) 14 лет назад
для проверки возможности прведения типа String в Double
клас Double имеет статичкскую функцию TryParse

public static bool TryParse(
string s,
out double result
)
//---------------------Вот код
double a =0;
bool parseOk =double.TryParse(Console.ReadLine(), out a);
if(parseOk)
{
String f = ("нечетное");
String t = ("четное");
double h=(a % 2);
double g = ((h != 0) ? t : f);
Console.WriteLine(g);
}
else
{
Console.WriteLine("Ошибка");
}
modern Иванов Мыслитель (9759) 14 лет назад
Твой код вообще не имеет смысла. Для того, чтоб происходили преобразования, строка должна содержать число. В противном случае генерируется эксепшн FormatExeption.
Делай так
if(a%2!=0)
Console.WriteLine("a-{0}",f);
else
Console.WriteLine("a-{0}",t);
Похожие вопросы