Loading...
CoolB avatar CoolB 0 Точки

Защо при мен се получава така че 25/4=6.25 и 25/4.0=6.25 ?

Здравейте на всички. Моля да ми дадете отговор на въпроса: "Защо при мен се получава така че 25/4=6.25 и 25/4.0=6.25 ?"
Според лектора Наков в курса "Programing Basic" - C#  от октомври месец 2017 г. при решаване на задача от делене

например 25/4 = 6 остава остатък 1 и на екрана трябва да се изобрази резултат 6.
А ако 25/4.0 = 6.25 без остатък, на екрана трябва да се изобрази резултат 6.25

ето и готов код от мен:
https://pastebin.com/q7uKRkqG

кода е писан на Visual Studio Comunity 2017 инсталиран на Windows 7 x 64bit laptop

Благодаря на отзовалите се!

Тагове:
0
Programming Basics 11/01/2018 15:43:45
RoYaL avatar RoYaL Trainer 6849 Точки

chislo и chislo2 не са цели числа при теб, а реални (да кажем - дробни) - double.Parse() връща реално число.

0
11/01/2018 15:46:54
CoolB avatar CoolB 0 Точки

Разбрах, благодаря!
Проблема при мен идва от декларирането на типа променлива която в случая е double.Parse()
Как трябва да я декларирам за да получа остатък. примерно 25/4 = 6 ???
Желая да е с Parse функция.

за тренировка си направих това:
var a = 25;
Console.WriteLine(a/4);
Резултата на екрана ми е: 6 както желая да го видя.

при
            var b = 25;
            Console.WriteLine(b/ 4.0);
Резултата на екрана ми е: 6.25 както желая да го видя.
Благодаря!
 

0
11/01/2018 16:26:48
svetoslav_0 avatar svetoslav_0 1009 Точки

Най-вероятно защото типа на данните е double. Ако бяха от тип int, нямаше да извежда дробно число. Не знам на какъв етап от обучението си, но е възможно да е малко рано за това, иначе въпросът ти е добър. Можеш да прочетеш повече тук.

0
desislava777 avatar desislava777 165 Точки

Колегите са прави. Числата трябва да са от тип int.

-1
denis.argatski avatar denis.argatski 25 Точки

Здравей ако
(int chislo  = 25/4 =6)  - реално число.Число без  запетая.

(double chislo2 = 25/4.0)=6.25  - реално число.Число с плаваща запетя.

Ако изпозваш "int" стойноста ще бъде такава каквато търсиш да бъде релано число без остатак.

0
CoolB avatar CoolB 0 Точки

Така си мисля и аз но въпросът е че незнам потребителя какво число ще въведе.
Започвам да си мисля дали да не се пробвам да направя код с if else if.

И в този ред на мисли за 2 числа въведени от потребителя започвам да си представям колко вариации на числа трябва да опиша най-вероятно да ги разпознае системата и според това какво число е разпознала да дели съответните числа.

Нивото ми с компютрите е следното: Добро (за едни добро за други лошо :) ). Като малък съм проявявал интерес в писането на код за mIRC скриптове  и съм писал някакви неща. Материята не ми е чужда. Но в програмирането според мен съм много начинаещ. Като ми кажат хвани мишката не отивам да си купувам капан за мишки.

На 6.1.2018 г. се записах и се обучавам в "Programing Basic: C#

0
11/01/2018 16:21:49
CoolB avatar CoolB 0 Точки

Console.WriteLine("Моля въведете число (делимо) и натиснете клавиша 'Enter' :");
            var chislo3 = int.Parse(Console.ReadLine());
            Console.WriteLine("Моля въведете второ число (делител) последвано от точка и дробна част (например: 4.0) и натиснете клавиша 'Enter' :");
            var chislo4 = int.Parse(Console.ReadLine());
            Console.WriteLine("\n\n");

с Int. крашва, защото 4,0 е дробно число.
 

0
mjikova avatar mjikova 7 Точки

https://msdn.microsoft.com/en-us/library/c2eabd70(v=vs.110).aspx

Ползвай този метод който взема цялото число за да работиш с данни тип double

0
VeselinovStoyan avatar VeselinovStoyan 1 Точки

Промени кода и замести Var с Int , ако ти дава грешка означава , че някъде смяташ Int с Double и не ти го преобраща автоматично (и да го прави ще е пак Double ) . 

Наложи Int , var е променлива която реагира според въведените стойности ! 

Ако пък искаш да е Var ... кастни резултата , пиши в Google "How to cast in C# " ще ти излезне това което търсиш .

Keep Calm and Learn Coding :) 

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