Loading...
naskostanchev avatar naskostanchev 3 Точки

Моля някой да ми обясни задача ("Inches to Centimeters"). Имам две решения.


вариант 1
            Console.WriteLine("Inches = ");
            int inches = Convert.ToInt32(Console.ReadLine());            
            Console.WriteLine("Cantimeters = {0}", inches * 2.54);

вариант 2
          Console.Write("Inches = ");              
          var inches = double.Parse(Console.ReadLine());
          var centimeters = inches * 2.54;
          Console.Write("Centimeters = ");
          Console.WriteLine(centimeters);
 

Въпреки,че първия вариант е по-кратък като текст, е повече мегабайта. Времето за решение е по-добро от втория вариант.

В Judge системата дава 100 точки на 2 вариант, на първия 50.

Благодаря.

0
Module: C# Advanced
David1233 avatar David1233 36 Точки

В първия вариант използваш класа Convert, а във втория използваш метода Parse на struct double.

https://stackoverflow.com/questions/199470/whats-the-main-difference-between-int-parse-and-convert-toint32

А ти дава 50 точки, защото ти се подава floating point число като вход.

0
09/10/2017 20:51:38
naskostanchev avatar naskostanchev 3 Точки

Добре floating point (плаваща точка), но и в 1 вариант ще я пресметне. Отговора ще е един и същ. Заради големината на кода ли дава 50 точки или метода не е подходящ и защо?

0
naskostanchev avatar naskostanchev 3 Точки

И още нещо. Нали convert е точно за тази цел. Да конвертира.

0
David1233 avatar David1233 36 Точки

Пробвай на първия вариант за му подадеш 1.05 като вход и виж какво става.

1
09/10/2017 21:11:14
Soprin avatar Soprin 105 Точки

Ако държиш да бъде с ConvertTo кода трябва да ти е така

            Console.WriteLine("Inches = ");
            double inches = Convert.ToDouble(Console.ReadLine());            
            Console.WriteLine("Cantimeters = {0}", inches * 2.54);

0
naskostanchev avatar naskostanchev 3 Точки

Точно това правех. Чудех се с какво да заменя Convert.ToInt32.

Сега ще пробвам в Judge какво ще покаже.

0
naskostanchev avatar naskostanchev 3 Точки

Не става така.

0
Soprin avatar Soprin 105 Точки

Какво промени в твоя код?

0
Можем ли да използваме бисквитки?
Ние използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Можете да се съгласите с всички или част от тях.
Назад
Функционални
Използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Използваме „сесийни“ бисквитки, за да Ви идентифицираме временно. Те се пазят само по време на активната употреба на услугите ни. След излизане от приложението, затваряне на браузъра или мобилното устройство, данните се трият. Използваме бисквитки, за да предоставим опцията „Запомни Ме“, която Ви позволява да използвате нашите услуги без да предоставяте потребителско име и парола. Допълнително е възможно да използваме бисквитки за да съхраняваме различни малки настройки, като избор на езика, позиции на менюта и персонализирано съдържание. Използваме бисквитки и за измерване на маркетинговите ни усилия.
Рекламни
Използваме бисквитки, за да измерваме маркетинг ефективността ни, броене на посещения, както и за проследяването дали дадено електронно писмо е било отворено.