Форум программистов, компьютерный форум, киберфорум
Наши страницы
C# для начинающих
Войти
Регистрация
Восстановить пароль
 
AleFF
0 / 0 / 1
Регистрация: 29.01.2017
Сообщений: 5
#1

Прошу совета по способу получения чисел с консоли

29.01.2017, 23:58. Просмотров 173. Ответов 2

Бодрого дня
есть задача, которую решил, как я надеюсь, элегантно.

Три вопроса
1) как не прослыть быдлокодером ))) Почерк закладывается с младших классов, был бы рад услышать ваше мнение о моем "почерке". А то понятие быдлокодер постоянно упоминается, но определения я не сумел найти.
2) не сумел найти иного способа получить число с консоли, кроме как использовать Convert.ToInt32(Console.ReadLine());
Есть варианты?
3) в приведенном ниже коде есть вопрос - я не нашел варианта преобразования не в int32. предполагаю, что int32 обрезается до int - я прав? как же тогда считать int в int?

Кликните здесь для просмотра всего текста

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
using System;
 
// ===============================================================================================================
// 29-01-2017
// Известно, что у чисел, которые являются степенью двойки, только один бит имеет значение 1. 
// Напишите программу, которая будет выполнять проверку – является ли указанное число степенью двойки или нет.
// ===============================================================================================================
 
namespace ConsoleApplication1
{
    class Program
    {
       
        static void Main(string[] args)
        {
            int myDigit = 0, mySample = 2; // вводимое число (стартово 0 по справочнику стеля) 
                                           // и число-эталон для сравнения со степенями двойки (стартово с 2 в первой степени)
            Boolean myCount = true; // признак продолжения цикла, стартово true что бы в цикл пустило
 
            Console.WriteLine("програмам проверяет, является ли введенное число степенью двойки");
            Console.Write("введите число для проверки = "); // приглашение ввести число для сравнения
            myDigit = Convert.ToInt32(Console.ReadLine()); // считываем с консоли строку и преобазовываем ее в число
 
// я не нашел варианта преобразования не в int32
// предполагаю, что int32 обрезается до int ???
 
            Console.WriteLine("вами введено число = {0}", myDigit);
            Console.WriteLine("выполняется проверка");
 
            while (myCount == true) // цикл проверки
            {
                if (myDigit < mySample)  // если введенное число меньше эталона - проверка закончена
                {
                    myCount = false;
                    Console.WriteLine("введеное число не является степенью 2. Сравнение остановлено на {0}", mySample);
                }
                else { if (myDigit == mySample)  // если введенное число равно эталону - проверка закончена
                       {
                           myCount = false;
                           Console.WriteLine("введеное число определенно степень 2. Сравнение остановлено на {0}", mySample);
                       }
                       else // если введенное число не равно и больше эталона - увеличиваем эталон до следующей степени двойки
                       {
                           mySample = mySample << 1; // сдвиг до следующей степени двойки (числа в бинарном виде с единственной 1 среди нолей)
                       }
                }                
            } // окончание цикла проверки
            Console.ReadLine();
 
        }
    }
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.01.2017, 23:58
Ответы с готовыми решениями:

Прошу совета
Необходимо реализовать некоторый формат файла представляющего собой контейнер, так скажем...

Прошу совета с Async TCP Client
Добрый день! Недавно у меня возникла задача: отправлять и читать данные с сервера, нашел в сети...

Архитектура приложения клиент, прошу совета
Ситуация - есть некий программный сервер с БД и текущими состояниями массива объектов. Приложение...

Вопрос по способу реализации
Вопрос по способу реализации на VS C# 2008. Значит задумка такая у меня. из файла формата .csv,...

Прошу совета: разделение цифрового ряда точками для получения даты
Добрый вечер, форумчане! Пожалуйста, посоветуйте, как решить следующую ситуацию: имеем цифровой...

2
nimazzzy
Заблокирован
30.01.2017, 00:10 #2
Почти у всех стандартных типов есть методы Parse и TryParse.
Цитата Сообщение от AleFF Посмотреть сообщение
что int32 обрезается до int - я прав?
Нет. Наведи указатель мыши на слово int в visual studio и посмотри, что она тебе в тултипе покажет.
1
AleFF
0 / 0 / 1
Регистрация: 29.01.2017
Сообщений: 5
30.01.2017, 00:17  [ТС] #3
на счет типа int в полный рост тупанул - спасибО!

за Parse и TryParse отдельное спасибо
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
30.01.2017, 00:17

Прошу совета
Приветствую обитателей этого форума. Привели меня сюда размышления о совместимости имеющихся у...

Прошу совета!
Здравствуйте товарищи! Суть в следующем: я начинающий android разработчик, последние пол года...

Прошу совета
Посоветуйте, пожалуйста, куда можно передать данные о местоположении телефона(какой-нибудь сайт,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru