Created
July 31, 2015 08:27
-
-
Save marhoily/17c644d3a9719f4149cf to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
using System; | |
namespace ConsoleApplication1 | |
{ | |
class Program | |
{ | |
static void Main() | |
{ | |
// Пример вызова функции без аргументов | |
var x = GetNumberFromConsole(); | |
var y = GetNumberFromConsole(); | |
// Пример вызова функции с аргументами | |
var printAsBase16 = PrintAsBase16(x + y); | |
Console.WriteLine("{0}+{1}={2}=0x{3} ", x, y, x + y, printAsBase16); | |
Console.WriteLine("нажать клавишу для завершения"); | |
Console.ReadKey(); | |
} | |
// Функция. Не обращайте пока внимания на слова | |
// "private" и "static". Принимает int в качестве аргумента | |
// возвращает строку | |
private static string PrintAsBase16(int value) | |
{ | |
// Попробуйте реализовать эту функцию не прибегая | |
// к готовым решениям | |
return Convert.ToString(value, 16); | |
} | |
// Другая фкнкция. Не принимает аргументов. Возвращает число | |
private static int GetNumberFromConsole() | |
{ | |
// Здесь мой вариант реализации вашей проверки корректности ввода | |
// Объявляем переменные без инициализации | |
// обычно в этом нет необходимости, но ради примера | |
int result; | |
bool isNumber; | |
// Пример цикла do-while | |
// Сейчас функция состоит из 14 строк кода | |
// поэксперементируйте как переписать ее короче | |
// (перевод фигурных скобок на ту же строку не считается) | |
// если не получится, спросите, я дам подсказку | |
do | |
{ | |
Console.Write("Введите число и нажмите Enter:"); | |
// out аргумент нужен функции | |
isNumber = int.TryParse(Console.ReadLine(), out result); | |
if (isNumber) | |
// пропускает остаток тела цикла | |
continue; | |
Console.ForegroundColor = ConsoleColor.Red; | |
Console.WriteLine("некорректный ввод!"); | |
Console.ResetColor(); | |
} | |
while (!isNumber); | |
return result; | |
} | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment