Program.cs 7.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422
  1. /*
  2. int x = 5;
  3. int y = x / 0;
  4. Console.WriteLine($"Результат: {y}");
  5. Console.WriteLine("Конец программы");
  6. Console.Read();
  7. */
  8. /*
  9. try
  10. {
  11. int x = 5;
  12. int y = x / 0;
  13. Console.WriteLine($"Результат: {y}");
  14. }
  15. catch
  16. {
  17. Console.WriteLine("Возникло исключение!");
  18. }
  19. */
  20. /*
  21. try
  22. {
  23. int x = 5;
  24. int y = x / 0;
  25. Console.WriteLine($"Результат: {y}");
  26. }
  27. finally
  28. {
  29. Console.WriteLine("Блок finally");
  30. }
  31. */
  32. /*
  33. Console.WriteLine("Введите число");
  34. int x;
  35. string input = Console.ReadLine();
  36. if (Int32.TryParse(input, out x))
  37. {
  38. x *= x;
  39. Console.WriteLine("Квадрат числа: " + x);
  40. }
  41. else
  42. {
  43. Console.WriteLine("Некорректный ввод");
  44. }
  45. Console.Read();
  46. */
  47. /*
  48. try
  49. {
  50. int x = 5;
  51. int y = x / 0;
  52. Console.WriteLine($"Результат: {y}");
  53. }
  54. catch(DivideByZeroException)
  55. {
  56. Console.WriteLine("Возникло исключение DivideByZeroException");
  57. }
  58. */
  59. /*
  60. try
  61. {
  62. int x = 5;
  63. int y = x / 0;
  64. Console.WriteLine($"Результат: {y}");
  65. }
  66. catch(DivideByZeroException ex)
  67. {
  68. Console.WriteLine($"Возникло исключение {ex.Message}");
  69. }
  70. */
  71. /*
  72. int x = 1;
  73. int y = 0;
  74. try
  75. {
  76. int result = x / y;
  77. }
  78. catch(DivideByZeroException) when (y==0 && x == 0)
  79. {
  80. Console.WriteLine("y не должен быть равен 0");
  81. }
  82. catch(DivideByZeroException ex)
  83. {
  84. Console.WriteLine(ex.Message);
  85. }
  86. */
  87. /*
  88. try
  89. {
  90. int x = 5;
  91. int y = x / 0;
  92. Console.WriteLine($"Результат: {y}");
  93. }
  94. catch (Exception ex)
  95. {
  96. Console.WriteLine($"Исключение: {ex.Message}");
  97. Console.WriteLine($"Метод: {ex.TargetSite}");
  98. Console.WriteLine($"Трассировка стека: {ex.StackTrace}");
  99. }
  100. Console.Read();
  101. */
  102. /*
  103. try
  104. {
  105. int[] numbers = new int[4];
  106. numbers[7] = 9; // IndexOutOfRangeException
  107. int x = 5;
  108. int y = x / 0; // DivideByZeroException
  109. Console.WriteLine($"Результат: {y}");
  110. }
  111. catch (DivideByZeroException)
  112. {
  113. Console.WriteLine("Возникло исключение DivideByZeroException");
  114. }
  115. catch (IndexOutOfRangeException ex)
  116. {
  117. Console.WriteLine(ex.Message);
  118. }
  119. Console.Read();
  120. */
  121. /*
  122. try
  123. {
  124. object obj = "you";
  125. int num = (int)obj; // InvalidCastException
  126. Console.WriteLine($"Результат: {num}");
  127. }
  128. catch (DivideByZeroException)
  129. {
  130. Console.WriteLine("Возникло исключение DivideByZeroException");
  131. }
  132. catch (IndexOutOfRangeException)
  133. {
  134. Console.WriteLine("Возникло исключение IndexOutOfRangeException");
  135. }
  136. Console.Read();
  137. */
  138. /*
  139. try
  140. {
  141. object obj = "you";
  142. int num = (int)obj; // InvalidCastException
  143. Console.WriteLine($"Результат: {num}");
  144. }
  145. catch (DivideByZeroException)
  146. {
  147. Console.WriteLine("Возникло исключение DivideByZeroException");
  148. }
  149. catch (IndexOutOfRangeException)
  150. {
  151. Console.WriteLine("Возникло исключение IndexOutOfRangeException");
  152. }
  153. catch (Exception ex)
  154. {
  155. Console.WriteLine($"Исключение: {ex.Message}");
  156. }
  157. Console.Read();
  158. */
  159. /*
  160. try
  161. {
  162. Person p = new Person { Name = "Tom", Age = 17 };
  163. }
  164. catch (Exception ex)
  165. {
  166. Console.WriteLine($"Ошибка: {ex.Message}");
  167. }
  168. Console.Read();
  169. class Person
  170. {
  171. private int age;
  172. public string Name { get; set; }
  173. public int Age
  174. {
  175. get { return age; }
  176. set
  177. {
  178. if (value < 18)
  179. {
  180. throw new Exception("Лицам до 18 регистрация запрещена");
  181. }
  182. else
  183. {
  184. age = value;
  185. }
  186. }
  187. }
  188. }
  189. */
  190. /*
  191. try
  192. {
  193. Person p = new Person { Name = "Tom", Age = 17 };
  194. }
  195. catch (PersonException ex)
  196. {
  197. Console.WriteLine("Ошибка: " + ex.Message);
  198. }
  199. Console.Read();
  200. class Person
  201. {
  202. private int age;
  203. public string Name { get; set; }
  204. public int Age
  205. {
  206. get { return age; }
  207. set
  208. {
  209. if (value < 18)
  210. throw new PersonException("Лицам до 18 регистрация запрещена");
  211. else
  212. age = value;
  213. }
  214. }
  215. }
  216. class PersonException : Exception
  217. {
  218. public PersonException(string message)
  219. : base(message)
  220. { }
  221. }
  222. */
  223. /*
  224. try
  225. {
  226. Person p = new Person { Name = "Tom", Age = 13 };
  227. }
  228. catch (PersonException ex)
  229. {
  230. Console.WriteLine($"Ошибка: {ex.Message}");
  231. Console.WriteLine($"Некорректное значение: {ex.Value}");
  232. }
  233. Console.Read();
  234. class Person
  235. {
  236. public string Name { get; set; }
  237. private int age;
  238. public int Age
  239. {
  240. get { return age; }
  241. set
  242. {
  243. if (value < 18)
  244. throw new PersonException(
  245. "Лицам до 18 регистрация запрещена",
  246. value);
  247. else
  248. age = value;
  249. }
  250. }
  251. }
  252. class PersonException : ArgumentException
  253. {
  254. public int Value { get;}
  255. public PersonException(string message, int val)
  256. : base(message)
  257. {
  258. Value = val;
  259. }
  260. }
  261. */
  262. /*
  263. try
  264. {
  265. TestClass.Method1();
  266. }
  267. catch (DivideByZeroException ex)
  268. {
  269. Console.WriteLine($"Catch в Main : {ex.Message}");
  270. }
  271. finally
  272. {
  273. Console.WriteLine("Блок finally в Main");
  274. }
  275. Console.WriteLine("Конец метода Main");
  276. Console.Read();
  277. class TestClass
  278. {
  279. public static void Method1()
  280. {
  281. try
  282. {
  283. Method2();
  284. }
  285. catch (IndexOutOfRangeException ex)
  286. {
  287. Console.WriteLine($"Catch в Method1 : {ex.Message}");
  288. }
  289. finally
  290. {
  291. Console.WriteLine("Блок finally в Method1");
  292. }
  293. Console.WriteLine("Конец метода Method1");
  294. }
  295. static void Method2()
  296. {
  297. try
  298. {
  299. int x = 8;
  300. int y = x / 0;
  301. }
  302. finally
  303. {
  304. Console.WriteLine("Блок finally в Method2");
  305. }
  306. Console.WriteLine("Конец метода Method2");
  307. }
  308. }
  309. */
  310. /*
  311. try
  312. {
  313. Console.Write("Введите строку: ");
  314. string message = Console.ReadLine();
  315. if (message.Length > 6)
  316. {
  317. throw new Exception(
  318. "Длина строки больше 6 символов");
  319. }
  320. }
  321. catch (Exception e)
  322. {
  323. Console.WriteLine($"Ошибка: {e.Message}");
  324. }
  325. Console.Read();
  326. */
  327. /*
  328. try
  329. {
  330. try
  331. {
  332. Console.Write("Введите строку: ");
  333. string message = Console.ReadLine();
  334. if (message.Length > 6)
  335. {
  336. throw new Exception(
  337. "Длина строки больше 6 символов");
  338. }
  339. }
  340. catch
  341. {
  342. Console.WriteLine("Возникло исключение");
  343. throw;
  344. }
  345. }
  346. catch (Exception ex)
  347. {
  348. Console.WriteLine(ex.Message);
  349. }
  350. */
  351. /*
  352. int? a = 42;
  353. if (a is int valueOfA)
  354. {
  355. Console.WriteLine($"a is {valueOfA}");
  356. }
  357. else
  358. {
  359. Console.WriteLine("a does not have a value");
  360. }
  361. */
  362. /*
  363. int? b = 10;
  364. if (b.HasValue)
  365. {
  366. Console.WriteLine($"b is {b.Value}");
  367. }
  368. else
  369. {
  370. Console.WriteLine("b does not have a value");
  371. }
  372. */
  373. int? c = 7;
  374. if (c != null)
  375. {
  376. Console.WriteLine($"c is {c.Value}");
  377. }
  378. else
  379. {
  380. Console.WriteLine("c does not have a value");
  381. }
  382. /*
  383. int? a = 28;
  384. int b = a ?? -1;
  385. Console.WriteLine($"b is {b}"); // output: b is 28
  386. int? c = null;
  387. int d = c ?? -1;
  388. Console.WriteLine($"d is {d}"); // output: d is -1
  389. */