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

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

+ Нов въпрос
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
Основи на програмирането 11/01/2018 15:43:45
RoYaL avatar RoYaL SoftUni Team Trainer 6789 Точки

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 512 Точки

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

0
desislava777 avatar desislava777 159 Точки

Колегите са прави. Числата трябва да са от тип 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