Loading...
em3ata avatar em3ata 2 Точки

Error при формат Inches to Cenimeters

Привет на всички. При решението на задачата се опитах да я малко по различен начин от тва което в Lab файла.

Оригиналното решение е това

using System;

namespace Inchestocm
{
    class Program
    {
        static void Main(string[] args)
        {
            double inches = double.Parse(Console.ReadLine());
            double result = inches * 2.54;

            Console.WriteLine("{0:F2}", result);
        }
    }
}
 

Това е моето решение

using System;

namespace Inchestocm
{
    class Program
    {
        static void Main(string[] args)
        {
            double centimeter = double.Parse(Console.ReadLine());
            double inches = 2.54;
            double rezultat = inches * centimeter;
            Console.WriteLine("{ 0:F2}", inches *  centimeter);
        }
    }
}
 

А това е ерор - а https://i.postimg.cc/8z8mfxH6/Error-Cm-toinch.png

Просто ми е любопитно защо хвръля грешка. Може защото се опитвам да форматирам inches и cm, докато извършват действие ?

 

 

 

 

0
Programming Basics with C#
StanislavaMiteva avatar StanislavaMiteva 23 Точки
Best Answer

Здравей,

Проблема е в този ред:

Console.WriteLine("{ 0:F2}", inches *  centimeter);

Имаш един интервал пред нулата. Виж как трябва да изглежда този ред:

Console.WriteLine("{0:F2}", inches * centimeter);

Така няма да ти дава грешка.

Поздрави,

 

 

1
Ang7411 avatar Ang7411 3 Точки

Не е вярно , проблемът ми е още когато инициализира променливата 

double inches = 2.54; 

Как ще работи това според теб, на променлива тип double даваш стойност С Т Р И Н Г ?

ПРОБЛЕМЪТ Е СПЕЙСА ДА ИЗвинявам се ингнорирай това за Стринга ......

0
18/01/2019 16:03:22
TeMePyT avatar TeMePyT 142 Точки

Човека ти каза, проблема е от интервала преди нулата. Когато иницализираш променлива във кода със някаква стойност, IDE-то пищи, ако е грешна стойността. Щом не ти подчертава double преди inches значи 2.54 не е стринг. Стринг е само когато подаваш през конзолата, тя не знае кое е число и кое не, за това се парсва. IDE-то разпознава стойностите, когато ги подаваш в кода. Програмата е Inches to centimeter, така че от конзолата четеш инчове, не сантиметри. Кръщавай си променливите правилно. И накрая-тази промелнива rezultat не я ползваш никъде, за какво си я създал? 

1
18/01/2019 15:59:25
Ang7411 avatar Ang7411 3 Точки

ДА проблемът е спейса ....

1
TeMePyT avatar TeMePyT 142 Точки

На променлива от тип стринг, стойността се слага в " ". Ако беше double inches = "2.54" бих е съгласил, но така ще ти изпищи иде-то. Същото е и за string inches = 2.54. Правилното би било string inches = "2.54"; При тази ситуация можеш вече да парснеш към дубъл  double inchesDouble = double.Parse(inches); 

0
em3ata avatar em3ata 2 Точки

Благодаря за хелп-а  Обаче сега имам друг въпрос, който изникна от коментарите по долу. Изобщно не се бях за мислих че променливата inches не е парсната и е зададена директно стойност. 2.54. Въпроса ми е защо работи, след като не е парснато, не трябва ли да го приемата като стринг ?

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