А във VS работи ли?
Първо прочети всичките три реда и после се впускай в сметки.
И не се увличай в печатане, там където това не е изрично поискано от условието на задачата.
Ти първо четеш:
var USDtoBGN = double.Parse(Console.ReadLine());
после печаташ:
Console.WriteLine("USD\nBGN");
после пак четеш
var EUtoBGN = double.Parse(Console.ReadLine());
после пак печаташ:
Console.WriteLine("BGN\nEUR");
Въобще махни това Console.WriteLine("BGN\nEUR");
Разбрах къде си се объркал.
По условие трябва първо да прочетеш от конзолата едно число - което ти правиш с
var USDtoBGN = double.Parse(Console.ReadLine());
После трябва да прочетеш от конзолата вида валута ОТ който трябва да се прави преобразуването.
После трябва да прочетеш от конзолата вида валута КЪМ който трябва да се направи преобразуването.
И след това, в зависимост от началната и крайната валута, прилагаш съответните коефиценти и печаташ числото, следвано от интервал, следвано от вида на крайната валута (която ти се съдържа в прочетеното от третият ред на конзолата).
Това, което липсва в написаната от теб програма е четенето на вида валути и последващото разпознаване, за да се определи кой коефицент да приложиш. Вместо това караш по пълната програма, но не това очаква Judge.
Грешката там идва от това, че той ти подава типа на валутата (което е string) а ти се опитваш да четеш второ реално число.
Затова при парсването гърми.
Успех! :-)