Професионална програма
Loading...
+ Нов въпрос
kristopher avatar kristopher 4 Точки

Как да превърна едно число от десетична в двуична бройна система?

Става въпрос не с калкулатор да я превърна стойността, а чрез код. може да съм пропуснал нещо от лекцийте но незнам как да го направя. Неможе да няма много лесен начин.

Тагове:
0
Programming Basics
gangov avatar gangov 22 Точки

Може да се разровиш в нета или MSDN. Това, което аз успях да намеря е следното:

int value = 8;<br>string binary = Convert.ToString(value, 2);<br><br>Дано съм бил полезен &lt;img src="https://tinymce.cachefly.net/4.0/plugins/emoticons/img/smiley-cool.gif" alt="cool"&gt;&lt;br&gt;&lt;/span&gt;
1
gangov avatar gangov 22 Точки

Не знам за кво отговора ми се сбъгясва така или само аз го виждам, ноако не го разчиташ ще ти го напиша на кирилица по - долу за всеки случай /дано не ме убият за това/

 

стринг = 8;

стринг бинари = Конверт.ТоСтринг(валуе, 2);

 

1
XmUrF avatar XmUrF 363 Точки

Да, правилно те е насочил колегата. От лекциите може да прегледаш слайда за операторите, лекция 3 е това. Там ни беше показано как да го правим това с вградената в  .NET функционалност.

1
Plami avatar Plami 373 Точки

http://pastebin.com/vD5iJHb7

Ето едно решение от мен с функция от .NET, която директно превръща числото. Но в условието пише, че трябва да решим задачата с цикъл. Аз ще я помъча днес и дано постигна резултат :)

1
XmUrF avatar XmUrF 363 Точки

За домашното, важното е да се разбере как се обръща от десетична в двоична система на ръка. Най-просто казано, десетичното число се дели на две. Ако има остатък, записва се 1-ца, ако няма, се записва 0 и така се продължава с делението до края. После трябва да го обърнете, тоест последното получено число при последното делене е началото на числото в двоична система.

0
Emil_Aleksandrov avatar Emil_Aleksandrov 33 Точки

Здравейте колеги,
опитайте се да решите задачата "ones and zeros" , чрез Convert.ToString(value,2) ...
Това конвертиране е и доста бавна операция, освен това не винаги работи кадърно.
Всъщност вариантите не са малко, но като че ли примерно, ако се търсят 18 бита се прави един for(int i ..i< 18...) цикъл 
 където (value >> i & 1), абе пробвайте следният код и мисля, че ще ме разберете.

int number = 1234;
for (int i = 0; i < 18; i++)
{
Console.Write(number >> i & 1);
}

0
XmUrF avatar XmUrF 363 Точки

OnesAndZeros я реших точно с Convert.ToString. Проблемът ми там не беше с намирането на числата. За мен условието на тази задача е изключително некоректно зададено. Иска се да се намерят последните 16 бита, а тук ни учат, че се брои от дясно на ляво. Е познай после как да разбера къде се дъни програмата ми, след като алгоритъмът е верен, само че си брои наистина последните 16 бита от дясно на ляво, а не както се оказва, че е трябвало, всъщност първите 16 бита (демек последните от ляво на дясно). Това без да имаш входните и очакваните изходни данни няма как да го хванеш.

 

Надявам се на нашия изпит да няма такива недоразумения.

1
Emil_Aleksandrov avatar Emil_Aleksandrov 33 Точки

Това е моето решение на задачата с конвертиране към стринг. Принципно тази конкатенация е бавен процес и може би това преобразуване е малко по-бързо от Convert.ToString().PadLeft... , но ако се използва StringBuilder, скоростта се увеличава значително. Иначе не е лошо човек да знае повече неща, защото по този начин се пише по качествен код. Относно изпита,  по скоро очаквайте всякакви уловки, там идеята е първо да се види какво е написано, а след това какво не е написано :). Това е моето мнение де и не ангажирам никой снего.

0
XmUrF avatar XmUrF 363 Точки

Хубаво решение. Кратко и ясно. Мойто е поне двойно по-дълго, ама да, както казах, подведох се по условието и тръгнах да измислям несъществуващи варианти.

0
Dekameron avatar Dekameron 481 Точки

Привет!

Заповядай:

 

 

int num = 255;
string binNum = Convert.ToString(num, 2);
Console.WriteLine(binNum);

 

Output:

11111111

 

6
kristopher avatar kristopher 4 Точки

Стана, благодаря.

1
lucifer1413 avatar lucifer1413 2 Точки

192.168.ll is an IP address used by many routers and modems as the default gateway. 192.168.1.1 address can be used by the users to gain the router admin access and configure their routers and networks.

For More Information Visit Our Site: -  Fix WiFi |  192-168-0-1-1  |  192-168-2-1 

0
30/06/2020 07:17:40
mr.ivanov avatar mr.ivanov 17 Точки

Не си писал на какъв език. Така се прави с JS.

const num = 10; 

const binary = num.toString(2)
 
0