C# для начинающих - страница 3



Первой выполняемой инструкцией программы является инструкция

Console.Write("Общий вес (кг.) >");

Не трудно догадаться, что она выводит на консоль, т.е. в окно, в котором работает программа, текст Общий вес (кг.) > и тем самым показывает пользователю, какую информацию он должен ввести.

Далее следует инструкция

st = Console.ReadLine();

В результате ее выполнения в переменную st записывается значение метода ReadLine – строка символов, которую пользователь набрал на клавиатуре. Надо понимать, что метод ReadLine возвращает именно строку символов, причем, даже в том случае, если строка будет содержать только цифры, все равно это строка, а не число.

Следующая инструкция

w = System.Convert.ToDouble(st);

присваивает значение переменной w, в качестве которого используется значение метода ToDouble, который преобразует значение строковой переменной st (в ней находится строка, введенная пользователем) в соответствующее вещественное число типа double. Обратите внимание, метод ToDouble вернет значение только в том случае, если строка, указанная в качестве его параметра, содержит правильное изображение вещественного числа. Правильной строкой для метода ToDouble является непустая строка, состоящая только из цифр (перед первой цифрой может находиться минус) и содержащая правильный десятичный разделитель – запятую (при стандартной для России настройке Windows).

Следующие три инструкции

Console.Write("Количество (шт.) >");

st = Console.ReadLine();

k = System.Convert.ToInt32(st);

обеспечивают ввод значения переменной k. Так как переменная k целого типа, то для преобразования строки, введенной пользователем, в целое значение используется метод ToInt32. Метод ToInt32 вернет значение только в том случае, если строка, указанная в качестве его параметра, содержит правильное изображение целого числа. Правильной строкой для метода ToInt32 является непустая строка, состоящая только из цифр (перед первой цифрой может находиться минус).

Инструкция присваивания

m = w / k;

вычисляет средний вес. Выполняется она так: значение переменной w делится на значение переменной k и полученный результат записывается в переменную m.

Следующая инструкция

String res = "Общий вес: " + w.ToString() + " кг. \n" +

"Количество: " + k.ToString() + " шт.\n" +

"–\n" +

"Средний вес: " + m.ToString() + " кг.\n\n";

формирует строку res, записывает в нее исходные данные и результат расчета. Строка res формируется путем конкатенации (объединения) строковых констант и преобразованных в строки значений численных переменных. Преобразование числа (значения числовой переменной) в строку выполняет метод ToString.

Следует обратить внимание на последовательности \n внутри строковых констант. Символ \ внутри строковой константы отмечает начало специальной последовательности символов. Последовательность \n трактуется как символ “новая строка”. Сами символы \n на экране не отображаются, но в результате их отправки в консоль курсор перемещается в начало следующей строки экрана.

Команда

Console.WriteLine(res);

выводит в окно консоли значение переменной res – исходные данные и результат расчета.

Далее следуют инструкции

Console.Write("Press any key to continue…");

int ch = Console.Read();

Они добавлены в конец для того, чтобы пользователь смог увидеть результат работы программы. Метод Read обеспечивает чтение символа с консоли, он ожидает нажатия клавиши и, после того как клавиша будет нажата, возвращает ее код. Таким образом обеспечивается приостановка выполнения программы до момента нажатия клавиши. Если рассматриваемых инструкций в конце программы не будет, то окно консоли закроется сразу после выполнения инструкции вывода результата и пользователь не сможет увидеть результат.