{"id":467512,"date":"2025-07-18T22:13:57","date_gmt":"2025-07-18T22:13:57","guid":{"rendered":"http:\/\/savepearlharbor.com\/?p=467512"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-29T21:00:00","slug":"","status":"publish","type":"post","link":"https:\/\/savepearlharbor.com\/?p=467512","title":{"rendered":"<span>\u0422\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u0438\u0440\u0443\u0435\u043c \u043a\u043e\u0434\u043e\u043c \u041c\u043e\u0440\u0437\u0435 \u0447\u0435\u0440\u0435\u0437 Java Stream API (\u0447\u0430\u0441\u0442\u044c 1 \u0438\u0437 2)<\/span>"},"content":{"rendered":"<div><!--[--><!--]--><\/div>\n<div id=\"post-content-body\">\n<div>\n<div class=\"article-formatted-body article-formatted-body article-formatted-body_version-2\">\n<div xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\">\n<figure class=\"full-width\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/456\/7f7\/911\/4567f7911971a8454af40f42eb3ced7c.jpg\" width=\"779\" height=\"440\" sizes=\"auto, (max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/r\/w780\/getpro\/habr\/upload_files\/456\/7f7\/911\/4567f7911971a8454af40f42eb3ced7c.jpg 780w,&#10;       https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/456\/7f7\/911\/4567f7911971a8454af40f42eb3ced7c.jpg 781w\" loading=\"lazy\" decode=\"async\"\/><\/figure>\n<p>\u0410\u0437\u0431\u0443\u043a\u0430 \u041c\u043e\u0440\u0437\u0435 \u2014  \u043e\u0434\u0438\u043d \u0438\u0437 \u0441\u0430\u043c\u044b\u0445 \u0441\u0442\u0430\u0440\u044b\u0445, \u043d\u043e \u043d\u0435 \u0443\u0445\u043e\u0434\u044f\u0449\u0438\u0445 \u043d\u0430 \u0437\u0430\u0441\u043b\u0443\u0436\u0435\u043d\u043d\u044b\u0439 \u043e\u0442\u0434\u044b\u0445 \u0442\u0435\u043b\u0435\u043a\u043e\u043c\u043c\u0443\u043d\u0438\u043a\u0430\u0446\u0438\u043e\u043d\u043d\u044b\u0445 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043e\u0432. \u041f\u0440\u0438 \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043a\u0435 \u0434\u0430\u043d\u043d\u043e\u0439 \u043f\u0443\u0431\u043b\u0438\u043a\u0430\u0446\u0438\u0438 \u044f \u043d\u0430\u0448\u0435\u043b <a href=\"https:\/\/search.itu.int\/history\/HistoryDigitalCollectionDocLibrary\/4.1.43.fr.200.pdf\" rel=\"noopener noreferrer nofollow\">\u041f\u0430\u0440\u0438\u0436\u0441\u043a\u0443\u044e \u043a\u043e\u043d\u0432\u0435\u043d\u0446\u0438\u044e \u043f\u043e \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u0438\u0438 \u043e\u0442 17 \u043c\u0430\u044f 1865 \u0433\u043e\u0434\u0430<\/a>, \u043a\u043e\u0442\u043e\u0440\u0443\u044e, \u043d\u0435\u0441\u043c\u043e\u0442\u0440\u044f \u043d\u0430 160-\u043b\u0435\u0442\u043d\u0438\u0439 \u044e\u0431\u0438\u043b\u0435\u0439, \u043d\u0435\u043b\u044c\u0437\u044f \u0441\u0447\u0438\u0442\u0430\u0442\u044c \u043f\u043e\u043b\u043d\u043e\u0441\u0442\u044c\u044e \u0443\u0441\u0442\u0430\u0440\u0435\u0432\u0448\u0435\u0439.<\/p>\n<details class=\"spoiler\">\n<summary>\u041a\u041e\u041d\u0412\u0415\u041d\u0426\u0418\u042f<\/summary>\n<div class=\"spoiler__content\">\n<figure class=\"full-width\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/1b9\/488\/324\/1b94883240736d1d7ea9d3a548ad925f.png\" alt=\"\u0420\u0438\u0441 1. \u041a\u043e\u043d\u0432\u0435\u043d\u0446\u0438\u044f, \u0440\u0435\u0434\u0430\u043a\u0446\u0438\u044f \u043e\u0442 17 \u043c\u0430\u044f 1865 \u0433.\" title=\"\u0420\u0438\u0441 1. \u041a\u043e\u043d\u0432\u0435\u043d\u0446\u0438\u044f, \u0440\u0435\u0434\u0430\u043a\u0446\u0438\u044f \u043e\u0442 17 \u043c\u0430\u044f 1865 \u0433.\" width=\"609\" height=\"970\" sizes=\"auto, (max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/r\/w780\/getpro\/habr\/upload_files\/1b9\/488\/324\/1b94883240736d1d7ea9d3a548ad925f.png 780w,&#10;       https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/1b9\/488\/324\/1b94883240736d1d7ea9d3a548ad925f.png 781w\" loading=\"lazy\" decode=\"async\"\/><\/p>\n<div><figcaption>\u0420\u0438\u0441 1. \u041a\u043e\u043d\u0432\u0435\u043d\u0446\u0438\u044f, \u0440\u0435\u0434\u0430\u043a\u0446\u0438\u044f \u043e\u0442 17 \u043c\u0430\u044f 1865 \u0433.<\/figcaption><\/div>\n<\/figure>\n<p>\u041a\u043e\u043d\u0432\u0435\u043d\u0446\u0438\u044f <\/p>\n<p>\u0415\u0433\u043e \u0412\u0435\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0418\u043c\u043f\u0435\u0440\u0430\u0442\u043e\u0440 \u0410\u0432\u0441\u0442\u0440\u0438\u0438, \u041a\u043e\u0440\u043e\u043b\u044c \u0412\u0435\u043d\u0433\u0440\u0438\u0438 \u0438 \u0411\u043e\u0433\u0435\u043c\u0438\u0438, \u0415\u0433\u043e \u041a\u043e\u0440\u043e\u043b\u0435\u0432\u0441\u043a\u043e\u0435 \u0412\u044b\u0441\u043e\u0447\u0435\u0441\u0442\u0432\u043e \u0412\u0435\u043b\u0438\u043a\u0438\u0439 \u0413\u0435\u0440\u0446\u043e\u0433 \u0411\u0430\u0434\u0435\u043d\u0441\u043a\u0438\u0439, \u0415\u0433\u043e \u0412\u0435\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u041a\u043e\u0440\u043e\u043b\u044c \u0411\u0430\u0432\u0430\u0440\u0438\u0438, \u0415\u0433\u043e \u0412\u0435\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u041a\u043e\u0440\u043e\u043b\u044c \u0411\u0435\u043b\u044c\u0433\u0438\u0438, \u0415\u0433\u043e \u0412\u0435\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u041a\u043e\u0440\u043e\u043b\u044c \u0414\u0430\u043d\u0438\u0438, \u0415\u0451 \u0412\u0435\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u041a\u043e\u0440\u043e\u043b\u0435\u0432\u0430 \u0418\u0441\u043f\u0430\u043d\u0438\u0438, \u0415\u0433\u043e \u0412\u0435\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0418\u043c\u043f\u0435\u0440\u0430\u0442\u043e\u0440 \u0424\u0440\u0430\u043d\u0446\u0438\u0438, \u0415\u0433\u043e \u0412\u0435\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u041a\u043e\u0440\u043e\u043b\u044c \u042d\u043b\u043b\u0438\u043d\u043e\u0432 (\u0413\u0440\u0435\u0446\u0438\u0438), \u0421\u0432\u043e\u0431\u043e\u0434\u043d\u044b\u0439 \u0433\u043e\u0440\u043e\u0434 \u0413\u0430\u043c\u0431\u0443\u0440\u0433, \u0415\u0433\u043e \u0412\u0435\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u041a\u043e\u0440\u043e\u043b\u044c \u0413\u0430\u043d\u043d\u043e\u0432\u0435\u0440\u0430, \u0415\u0433\u043e \u0412\u0435\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u041a\u043e\u0440\u043e\u043b\u044c \u0418\u0442\u0430\u043b\u0438\u0438, \u0415\u0433\u043e \u0412\u0435\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u041a\u043e\u0440\u043e\u043b\u044c \u041d\u0438\u0434\u0435\u0440\u043b\u0430\u043d\u0434\u043e\u0432, \u0415\u0433\u043e \u0412\u0435\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u041a\u043e\u0440\u043e\u043b\u044c \u041f\u043e\u0440\u0442\u0443\u0433\u0430\u043b\u0438\u0438 \u0438 \u0410\u043b\u0433\u0430\u0440\u0432\u0435, \u0415\u0433\u043e \u0412\u0435\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u041a\u043e\u0440\u043e\u043b\u044c \u041f\u0440\u0443\u0441\u0441\u0438\u0438, \u0415\u0433\u043e \u0412\u0435\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0418\u043c\u043f\u0435\u0440\u0430\u0442\u043e\u0440 \u0432\u0441\u0435\u0445 \u0420\u0443\u0441\u0441\u043a\u0438\u0445, \u0415\u0433\u043e \u0412\u0435\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u041a\u043e\u0440\u043e\u043b\u044c \u0421\u0430\u043a\u0441\u043e\u043d\u0438\u0438, \u0415\u0433\u043e \u0412\u0435\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u041a\u043e\u0440\u043e\u043b\u044c \u0428\u0432\u0435\u0446\u0438\u0438 \u0438 \u041d\u043e\u0440\u0432\u0435\u0433\u0438\u0438, \u0428\u0432\u0435\u0439\u0446\u0430\u0440\u0441\u043a\u0430\u044f \u041a\u043e\u043d\u0444\u0435\u0434\u0435\u0440\u0430\u0446\u0438\u044f, \u0415\u0433\u043e \u0412\u0435\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0418\u043c\u043f\u0435\u0440\u0430\u0442\u043e\u0440 \u041e\u0441\u043c\u0430\u043d\u043e\u0432, \u0415\u0433\u043e \u0412\u0435\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u041a\u043e\u0440\u043e\u043b\u044c \u0412\u044e\u0440\u0442\u0435\u043c\u0431\u0435\u0440\u0433\u0430,<\/p>\n<p>\u0412\u0434\u043e\u0445\u043d\u043e\u0432\u043b\u0451\u043d\u043d\u044b\u0435 \u0441\u0442\u0440\u0435\u043c\u043b\u0435\u043d\u0438\u0435\u043c \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0438\u0442\u044c \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u043d\u044b\u043c \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u044f\u043c, \u043e\u0431\u043c\u0435\u043d\u0438\u0432\u0430\u0435\u043c\u044b\u043c \u043c\u0435\u0436\u0434\u0443 \u0438\u0445 \u0433\u043e\u0441\u0443\u0434\u0430\u0440\u0441\u0442\u0432\u0430\u043c\u0438, \u043f\u0440\u0435\u0438\u043c\u0443\u0449\u0435\u0441\u0442\u0432\u0430 \u043f\u0440\u043e\u0441\u0442\u043e\u0433\u043e \u0438 \u0441\u043d\u0438\u0436\u0435\u043d\u043d\u043e\u0433\u043e \u0442\u0430\u0440\u0438\u0444\u0430, <strong>\u0441\u0442\u0440\u0435\u043c\u044f\u0441\u044c \u0443\u043b\u0443\u0447\u0448\u0438\u0442\u044c \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0435 \u0443\u0441\u043b\u043e\u0432\u0438\u044f \u043c\u0435\u0436\u0434\u0443\u043d\u0430\u0440\u043e\u0434\u043d\u043e\u0439 \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u043d\u043e\u0439 \u0441\u0432\u044f\u0437\u0438<\/strong>, \u0438 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u043f\u043e\u0441\u0442\u043e\u044f\u043d\u043d\u043e\u0435 \u0441\u043e\u0433\u043b\u0430\u0448\u0435\u043d\u0438\u0435 \u043c\u0435\u0436\u0434\u0443 \u0438\u0445 \u0433\u043e\u0441\u0443\u0434\u0430\u0440\u0441\u0442\u0432\u0430\u043c\u0438 \u2014 \u043f\u0440\u0438 \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0438 \u0441\u0432\u043e\u0431\u043e\u0434\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0439 \u043f\u043e \u0432\u043e\u043f\u0440\u043e\u0441\u0430\u043c, \u043d\u0435 \u043a\u0430\u0441\u0430\u044e\u0449\u0438\u043c\u0441\u044f \u0432\u0441\u0435\u0439 \u0441\u043b\u0443\u0436\u0431\u044b \u0432 \u0446\u0435\u043b\u043e\u043c&#8230;<\/p>\n<\/div>\n<\/details>\n<h2>\u0412\u0440\u0435\u043c\u044f \u043f\u0435\u0440\u0432\u044b\u0445<\/h2>\n<p>\u041f\u0435\u0440\u0432\u044b\u0435 \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u044b \u043f\u043e \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0435 \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u043d\u044b\u0445 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0439 \u043f\u043e \u043f\u0440\u043e\u0432\u043e\u0434\u0430\u043c \u0434\u0435\u043b\u0430\u043b\u0438\u0441\u044c \u0441 \u043d\u0430\u0447\u0430\u043b\u0430 19 \u0432\u0435\u043a\u0430. \u041d\u0430\u0447\u0438\u043d\u0430\u044f \u0441 1832 \u0433\u043e\u0434\u0430 \u043c\u043d\u043e\u0433\u0438\u0435 \u0438\u0437\u043e\u0431\u0440\u0435\u0442\u0430\u0442\u0435\u043b\u0438 \u043f\u0440\u0435\u0434\u043b\u0430\u0433\u0430\u043b\u0438 \u0434\u0435\u0439\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0435 \u043c\u043e\u0434\u0435\u043b\u0438 \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u043d\u044b\u0445 \u0430\u043f\u043f\u0430\u0440\u0430\u0442\u043e\u0432: \u0441\u043d\u0430\u0447\u0430\u043b\u0430 \u0440\u043e\u0441\u0441\u0438\u0439\u0441\u043a\u0438\u0435 \u0443\u0447\u0435\u043d\u044b\u0435 \u043d\u0435\u043c\u0435\u0446\u043a\u043e\u0433\u043e \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0436\u0434\u0435\u043d\u0438\u044f <a href=\"https:\/\/ru.wikipedia.org\/wiki\/%D0%A8%D0%B8%D0%BB%D0%BB%D0%B8%D0%BD%D0%B3,_%D0%9F%D0%B0%D0%B2%D0%B5%D0%BB_%D0%9B%D1%8C%D0%B2%D0%BE%D0%B2%D0%B8%D1%87\" rel=\"noopener noreferrer nofollow\">\u041f. \u0412. \u0428\u0438\u043b\u043b\u0438\u043d\u0433<\/a> \u0438 <a href=\"https:\/\/ru.wikipedia.org\/wiki\/%D0%AF%D0%BA%D0%BE%D0%B1%D0%B8,_%D0%91%D0%BE%D1%80%D0%B8%D1%81_%D0%A1%D0%B5%D0%BC%D1%91%D0%BD%D0%BE%D0%B2%D0%B8%D1%87\" rel=\"noopener noreferrer nofollow\">\u0411. \u0421. \u042f\u043a\u043e\u0431\u0438<\/a>, \u0437\u0430\u0442\u0435\u043c \u0430\u043d\u0433\u043b\u0438\u0439\u0441\u043a\u0438\u0435 <a href=\"https:\/\/ru.wikipedia.org\/wiki\/%D0%9A%D1%83%D0%BA,_%D0%A3%D0%B8%D0%BB%D1%8C%D1%8F%D0%BC_%D0%A4%D0%BE%D1%82%D0%B5%D1%80%D0%B3%D0%B8%D0%BB%D0%BB\" rel=\"noopener noreferrer nofollow\">\u0423. \u0424. \u041a\u0443\u043a<\/a> \u0438 <a href=\"https:\/\/ru.wikipedia.org\/wiki\/%D0%A3%D0%B8%D1%82%D1%81%D1%82%D0%BE%D0%BD,_%D0%A7%D0%B0%D1%80%D0%BB%D1%8C%D0%B7\" rel=\"noopener noreferrer nofollow\">\u0427. \u0423\u0438\u0442\u0441\u0442\u043e\u043d<\/a>.<\/p>\n<p>\u0412 1843 \u0433\u043e\u0434\u0443 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0441\u0432\u043e\u0435\u0433\u043e \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u043d\u043e\u0433\u043e \u0430\u043f\u043f\u0430\u0440\u0430\u0442\u0430 \u0428\u0438\u043b\u043b\u0438\u043d\u0433 \u0438 \u042f\u043a\u043e\u0431\u0438 \u043f\u0435\u0440\u0435\u0434\u0430\u043b\u0438 \u043f\u0435\u0440\u0432\u0443\u044e \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u043c\u043c\u0443 \u043f\u043e \u043f\u0440\u043e\u0432\u043e\u0434\u0430\u043c \u043d\u0430 25 \u043a\u043c <a href=\"https:\/\/www.sut.ru\/bonchnews\/different\/18-10-2023-180-let-telegrafnoy-linii-sankt-peterburg---carskoe-selo\" rel=\"noopener noreferrer nofollow\">\u0438\u0437 \u041f\u0435\u0442\u0435\u0440\u0431\u0443\u0440\u0433\u0430 \u0432 \u0426\u0430\u0440\u0441\u043a\u043e\u0435 \u0421\u0435\u043b\u043e<\/a>. \u041e\u0434\u043d\u0430\u043a\u043e, \u043d\u0430\u0438\u0431\u043e\u043b\u0435\u0435 \u0443\u0434\u0430\u0447\u043d\u044b\u043c \u0438\u0437 \u0432\u0441\u0435\u0445 \u0441\u043e\u0437\u0434\u0430\u043d\u043d\u044b\u0445 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432 \u0434\u043b\u044f \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u0438\u0438 \u043e\u043a\u0430\u0437\u0430\u043b\u0441\u044f \u0430\u043f\u043f\u0430\u0440\u0430\u0442 \u041c\u043e\u0440\u0437\u0435, \u0434\u043e\u0436\u0438\u0432\u0448\u0438\u0439 \u0434\u043e \u043d\u0430\u0448\u0438\u0445 \u0434\u043d\u0435\u0439.<\/p>\n<details class=\"spoiler\">\n<summary>\u0421\u044d\u0301\u043c\u044e\u044d\u043b\u044c \u0424\u0438\u0301\u043d\u043b\u0438 \u0411\u0440\u0438\u0437 \u041c\u043e\u0301\u0440\u0437\u0435 (Samuel Finley Breese Morse)<\/summary>\n<div class=\"spoiler__content\">\n<p>\u0425\u0443\u0434\u043e\u0436\u043d\u0438\u043a, \u0438\u043d\u0436\u0435\u043d\u0435\u0440, \u0431\u0438\u0437\u043d\u0435\u0441\u043c\u0435\u043d, \u044e\u0440\u0438\u0441\u0442.<\/p>\n<figure class=\"full-width\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/94d\/90e\/d46\/94d90ed4682e5d8bf6495190916d56ce.jpeg\" alt=\"\u0420\u0438\u0441 2. Samuel Finley Breese Morse, 1791-1872\" title=\"\u0420\u0438\u0441 2. Samuel Finley Breese Morse, 1791-1872\" width=\"539\" height=\"800\" sizes=\"auto, (max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/r\/w780\/getpro\/habr\/upload_files\/94d\/90e\/d46\/94d90ed4682e5d8bf6495190916d56ce.jpeg 780w,&#10;       https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/94d\/90e\/d46\/94d90ed4682e5d8bf6495190916d56ce.jpeg 781w\" loading=\"lazy\" decode=\"async\"\/><\/p>\n<div><figcaption><a href=\"https:\/\/time.com\/4307892\/samuel-morse-telegraph-history\/\" rel=\"noopener noreferrer nofollow\">\u0420\u0438\u0441 2. Samuel Finley Breese Morse, 1791-1872<\/a><\/figcaption><\/div>\n<\/figure>\n<p>\u041c\u043e\u0440\u0437\u0435 \u043d\u0430\u0447\u0438\u043d\u0430\u043b \u043a\u0430\u043a \u043f\u0440\u0438\u0437\u043d\u0430\u043d\u043d\u044b\u0439 \u043f\u043e\u0440\u0442\u0440\u0435\u0442\u0438\u0441\u0442 (\u043f\u0438\u0441\u0430\u043b, \u0441\u0440\u0435\u0434\u0438 \u043f\u0440\u043e\u0447\u0438\u0445, \u043f\u043e\u0440\u0442\u0440\u0435\u0442\u044b \u0414\u0436\u0435\u0439\u043c\u0441\u0430 \u041c\u043e\u043d\u0440\u043e \u0438 \u041b\u0430\u0444\u0430\u0439\u0435\u0442\u0430), \u0430\u043a\u0442\u0438\u0432\u043d\u043e \u043f\u0440\u043e\u0434\u0432\u0438\u0433\u0430\u043b \u0432 \u0421\u0428\u0410 <a href=\"https:\/\/ru.wikipedia.org\/wiki\/%D0%94%D0%B0%D0%B3%D0%B5%D1%80%D0%BE%D1%82%D0%B8%D0%BF%D0%B8%D1%8F\" rel=\"noopener noreferrer nofollow\">\u0434\u0430\u0433\u0435\u0440\u0440\u043e\u0442\u0438\u043f\u043d\u0443\u044e \u0444\u043e\u0442\u043e\u0433\u0440\u0430\u0444\u0438\u044e<\/a>.<\/p>\n<p>\u0412\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u044f\u0441\u044c \u0438\u0437 \u0415\u0432\u0440\u043e\u043f\u044b, \u0432 1832 \u0433\u043e\u0434\u0443, \u041c\u043e\u0440\u0437\u0435 \u0437\u0430\u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043e\u0432\u0430\u043b\u0441\u044f \u0438\u0434\u0435\u0435\u0439 \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u0430 \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0435 \u044d\u043b\u0435\u043a\u0442\u0440\u043e\u043c\u0430\u0433\u043d\u0435\u0442\u0438\u0437\u043c\u0430, \u0438 \u043f\u043e \u043f\u0440\u0438\u0435\u0437\u0434\u0443 \u0434\u043e\u043c\u043e\u0439 \u043d\u0430\u0447\u0430\u043b \u0440\u0430\u0431\u043e\u0442\u0443 \u043d\u0430\u0434 \u043f\u0440\u043e\u0442\u043e\u0442\u0438\u043f\u043e\u043c.<\/p>\n<p>\u041f\u043e\u0434\u043e\u0431\u043d\u044b\u0435 \u0438\u0434\u0435\u0438 \u043f\u0440\u0435\u0434\u043b\u0430\u0433\u0430\u043b\u0438\u0441\u044c \u0438 \u0440\u0430\u043d\u0435\u0435, \u043e\u0434\u043d\u0430\u043a\u043e \u041c\u043e\u0440\u0437\u0435 \u0443\u0441\u0435\u0440\u0434\u043d\u043e \u0440\u0430\u0431\u043e\u0442\u0430\u043b \u043d\u0430\u0434 \u043f\u0440\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0435\u0439 \u0441\u0432\u043e\u0435\u0433\u043e \u0430\u043f\u043f\u0430\u0440\u0430\u0442\u0430 \u0438 \u043f\u0440\u043e\u0432\u043e\u0434\u0438\u043b \u043f\u0443\u0431\u043b\u0438\u0447\u043d\u044b\u0435 \u0434\u0435\u043c\u043e\u043d\u0441\u0442\u0440\u0430\u0446\u0438\u0438 \u043d\u043e\u0432\u043e\u0439 \u0442\u0435\u0445\u043d\u0438\u043a\u0438 \u0441\u0432\u044f\u0437\u0438. \u0412 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0435 \u0435\u043c\u0443 \u0443\u0434\u0430\u043b\u043e\u0441\u044c \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u043e \u0443\u0441\u043e\u0432\u0435\u0440\u0448\u0435\u043d\u0441\u0442\u0432\u043e\u0432\u0430\u0442\u044c \u044d\u0442\u0443 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0443 \u0438 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0444\u0438\u043d\u0430\u043d\u0441\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u043e\u0442 \u041a\u043e\u043d\u0433\u0440\u0435\u0441\u0441\u0430 \u0434\u043b\u044f \u0440\u0430\u043d\u043d\u0435\u0433\u043e \u0432\u043d\u0435\u0434\u0440\u0435\u043d\u0438\u044f \u0441\u0432\u043e\u0435\u0439 \u0442\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u0438.<\/p>\n<p>\u0412 1844 \u0433\u043e\u0434\u0443 \u043e\u043d \u043f\u0440\u043e\u0432\u0451\u043b \u043f\u0435\u0440\u0432\u044b\u0439 \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u043d\u044b\u0439 \u0441\u0435\u0430\u043d\u0441 \u043c\u0435\u0436\u0434\u0443 \u0412\u0430\u0448\u0438\u043d\u0433\u0442\u043e\u043d\u043e\u043c \u0438 \u0411\u0430\u043b\u0442\u0438\u043c\u043e\u0440\u043e\u043c, \u043e\u0442\u0441\u0442\u043e\u044f\u0449\u0438\u043c\u0438 \u0434\u0440\u0443\u0433 \u043e\u0442 \u0434\u0440\u0443\u0433\u0430 \u043d\u0430 60 \u043a\u043c, \u043f\u0435\u0440\u0435\u0434\u0430\u0432 \u0444\u0440\u0430\u0437\u0443 &#171;What hath God wrought!&#187; (\u201c\u0427\u0442\u043e \u0441\u043e\u0442\u0432\u043e\u0440\u0438\u043b \u0411\u043e\u0433!\u201d*).<\/p>\n<p>\u041d\u0435\u0441\u043c\u043e\u0442\u0440\u044f \u043d\u0430 \u0432\u044b\u0434\u0430\u044e\u0449\u0438\u0439\u0441\u044f \u0443\u0441\u043f\u0435\u0445, \u041c\u043e\u0440\u0437\u0435 \u043f\u0440\u0438\u0448\u043b\u043e\u0441\u044c \u043e\u0442\u0441\u0442\u0430\u0438\u0432\u0430\u0442\u044c \u0441\u0432\u043e\u0438 \u043f\u0440\u0430\u0432\u0430 \u0447\u0435\u0440\u0435\u0437 \u0441\u0443\u0434\u0435\u0431\u043d\u044b\u0435 \u0438\u0441\u043a\u0438 \u0432 \u0442\u0435\u0447\u0435\u043d\u0438\u0435 \u043f\u043e\u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0445 \u0434\u0435\u0441\u044f\u0442\u0438\u043b\u0435\u0442\u0438\u0439 (\u043e\u0441\u043e\u0431\u0435\u043d\u043d\u043e \u0438\u0437\u0432\u0435\u0441\u0442\u0435\u043d \u0441\u043b\u0443\u0447\u0430\u0439 <a href=\"https:\/\/en.wikipedia.org\/wiki\/O%27Reilly_v._Morse\" rel=\"noopener noreferrer nofollow\">O&#8217;Reilly v. Morse<\/a>).<\/p>\n<p>\u041a \u043c\u043e\u043c\u0435\u043d\u0442\u0443 \u0441\u043c\u0435\u0440\u0442\u0438 \u041c\u043e\u0440\u0437\u0435 (1872 \u0433.) \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u0444 \u043e\u0445\u0432\u0430\u0442\u0438\u043b \u0432\u0441\u044e \u0415\u0432\u0440\u0430\u0437\u0438\u044e, \u0410\u043c\u0435\u0440\u0438\u043a\u0443 \u0438 \u0410\u0442\u043b\u0430\u043d\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u043e\u043a\u0435\u0430\u043d, \u0441\u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u0432 \u0438\u043d\u0444\u0440\u0430\u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0443, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u0438\u043b\u0430 \u043a\u043e\u043c\u043c\u0443\u043d\u0438\u043a\u0430\u0446\u0438\u0438, \u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0443, \u0431\u0438\u0437\u043d\u0435\u0441 \u0438 \u0436\u0443\u0440\u043d\u0430\u043b\u0438\u0441\u0442\u0438\u043a\u0443.<\/p>\n<p><a href=\"https:\/\/time.com\/4307892\/samuel-morse-telegraph-history\/\" rel=\"noopener noreferrer nofollow\"><em>\u041f\u043e \u0441\u0442\u0430\u0442\u044c\u0435 Time &#171;What the Digital Age Owes to the Inventor of Morse Code&#187;<\/em><\/a><\/p>\n<p><em>*) \u0412\u0430\u0440\u0438\u0430\u043d\u0442\u044b \u0440\u0443\u0441\u0441\u043a\u043e\u0433\u043e \u043f\u0435\u0440\u0435\u0432\u043e\u0434\u0430 <\/em><a href=\"https:\/\/bible.by\/verse\/4\/23\/23\/\" rel=\"noopener noreferrer nofollow\">https:\/\/bible.by\/verse\/4\/23\/23\/<\/a>, \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u044b \u043d\u0430 \u0430\u043d\u0433\u043b\u0438\u0439\u0441\u043a\u043e\u043c <a href=\"https:\/\/biblehub.com\/numbers\/23-23.htm\" rel=\"noopener noreferrer nofollow\">https:\/\/biblehub.com\/numbers\/23-23.htm<\/a><\/p>\n<\/div>\n<\/details>\n<h2>\u0421\u0438\u0441\u0442\u0435\u043c\u0430 \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u0438\u0438 \u041c\u043e\u0440\u0437\u0435<\/h2>\n<p>\u0421\u0438\u0441\u0442\u0435\u043c\u0430 \u041c\u043e\u0440\u0437\u0435 \u0441\u043e\u0441\u0442\u043e\u0438\u0442 \u0438\u0437 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u0438\u0445 \u043e\u0441\u043d\u043e\u0432\u043d\u044b\u0445 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u043e\u0432.<\/p>\n<h3>1. \u0422\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u043d\u044b\u0439 \u043a\u043b\u044e\u0447<\/h3>\n<p>\u041f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u043d\u043e\u0433\u043e \u043a\u043b\u044e\u0447\u0430 \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u044c\u043d\u043e \u043e\u0431\u0443\u0447\u0435\u043d\u043d\u044b\u0439 \u0447\u0435\u043b\u043e\u0432\u0435\u043a, \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u0438\u0441\u0442, \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u044f\u0435\u0442 \u0442\u0435\u043a\u0441\u0442\u044b \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u043c\u043c \u0447\u0438\u0442\u0430\u044f \u0438\u0445 \u0441 \u0431\u0443\u043c\u0430\u0433\u0438 \u0438\u043b\u0438 \u043f\u043e\u0434 \u0434\u0438\u043a\u0442\u043e\u0432\u043a\u0443, \u043f\u0435\u0440\u0435\u0432\u043e\u0434\u044f \u0431\u0443\u043a\u0432\u044b \u0432 <strong>\u0434\u043b\u0438\u043d\u043d\u044b\u0435 \u0438 \u043a\u043e\u0440\u043e\u0442\u043a\u0438\u0435 \u043d\u0430\u0436\u0430\u0442\u0438\u044f \u043a\u043b\u044e\u0447\u0430 <\/strong>\u2014<strong> \u0442\u0438\u0440\u0435 \u0438 \u0442\u043e\u0447\u043a\u0438<\/strong>.<\/p>\n<figure class=\"full-width\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/587\/924\/94c\/58792494c8a649bb0425977469ccf478.jpg\" alt=\"\u0420\u0438\u0441 2. \u0422\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u043d\u044b\u0439 \u043a\u043b\u044e\u0447 \u041c\u043e\u0440\u0437\u0435\" title=\"\u0420\u0438\u0441 2. \u0422\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u043d\u044b\u0439 \u043a\u043b\u044e\u0447 \u041c\u043e\u0440\u0437\u0435\" width=\"800\" height=\"500\" sizes=\"auto, (max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/r\/w780\/getpro\/habr\/upload_files\/587\/924\/94c\/58792494c8a649bb0425977469ccf478.jpg 780w,&#10;       https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/587\/924\/94c\/58792494c8a649bb0425977469ccf478.jpg 781w\" loading=\"lazy\" decode=\"async\"\/><\/p>\n<div><figcaption><a href=\"https:\/\/izi.travel\/ru\/c2c7-telegrafnyy-klyuch\/ru\" rel=\"noopener noreferrer nofollow\">\u0420\u0438\u0441 3. \u0422\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u043d\u044b\u0439 \u043a\u043b\u044e\u0447 \u041c\u043e\u0440\u0437\u0435<\/a><\/figcaption><\/div>\n<\/figure>\n<p>\u041a\u043b\u044e\u0447 \u0437\u0430\u043c\u044b\u043a\u0430\u0435\u0442 \u044d\u043b\u0435\u043a\u0442\u0440\u0438\u0447\u0435\u0441\u043a\u0443\u044e \u0446\u0435\u043f\u044c, \u0441\u043e\u0441\u0442\u043e\u044f\u0449\u0443\u044e \u0438\u0437 \u044d\u0442\u043e\u0433\u043e \u0441\u0430\u043c\u043e\u0433\u043e \u043a\u043b\u044e\u0447\u0430, \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u043d\u043e\u0433\u043e \u0430\u043f\u043f\u0430\u0440\u0430\u0442\u0430 <strong>\u043d\u0430 \u043f\u0440\u0438\u0435\u043c\u043d\u043e\u0439 \u0441\u0442\u043e\u0440\u043e\u043d\u0435<\/strong> \u0438 \u044d\u043b\u0435\u043a\u0442\u0440\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u0431\u0430\u0442\u0430\u0440\u0435\u0438, \u0441\u043e\u0437\u0434\u0430\u044e\u0449\u0435\u0439 \u0442\u043e\u043a \u043f\u0440\u0438 \u0437\u0430\u043c\u044b\u043a\u0430\u043d\u0438\u0438 \u0446\u0435\u043f\u0438 \u043a\u043b\u044e\u0447\u043e\u043c.<\/p>\n<figure class=\"full-width\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/af3\/219\/134\/af3219134a124991a09a3afae4c5849d.jpg\" alt=\"\u0420\u0438\u0441 3. \u0422\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u043d\u044b\u0439 \u043a\u043b\u044e\u0447 \u041c\u043e\u0440\u0437\u0435\" title=\"\u0420\u0438\u0441 3. \u0422\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u043d\u044b\u0439 \u043a\u043b\u044e\u0447 \u041c\u043e\u0440\u0437\u0435\" width=\"810\" height=\"486\" sizes=\"auto, (max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/r\/w780\/getpro\/habr\/upload_files\/af3\/219\/134\/af3219134a124991a09a3afae4c5849d.jpg 780w,&#10;       https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/af3\/219\/134\/af3219134a124991a09a3afae4c5849d.jpg 781w\" loading=\"lazy\" decode=\"async\"\/><\/p>\n<div><figcaption><a href=\"https:\/\/megabook.ru\/media\/%D0%A2%D0%B5%D0%BB%D0%B5%D0%B3%D1%80%D0%B0%D1%84%D0%BD%D1%8B%D0%B9%20%D0%BA%D0%BB%D1%8E%D1%87%20%28%D1%81%D1%85%D0%B5%D0%BC%D0%B0%29\" rel=\"noopener noreferrer nofollow\">\u0420\u0438\u0441 4. \u0421\u0445\u0435\u043c\u0430 \u043f\u0440\u043e\u0441\u0442\u0435\u0439\u0448\u0435\u0433\u043e \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u043d\u043e\u0433\u043e \u043a\u043b\u044e\u0447\u0430: 1 \u2014 \u043f\u043e\u0434\u0441\u0442\u0430\u0432\u043a\u0430; 2 \u2014 \u0437\u0430\u0434\u043d\u0438\u0439 \u043a\u043e\u043d\u0442\u0430\u043a\u0442\u043d\u044b\u0439 \u0432\u0438\u043d\u0442; 3 \u2014 \u0440\u044b\u0447\u0430\u0433; 4 \u2014 \u0440\u0443\u043a\u043e\u044f\u0442\u043a\u0430 \u043a\u043b\u044e\u0447\u0430; 5 \u2014 \u043f\u0435\u0440\u0435\u0434\u043d\u0438\u0439 \u043a\u043e\u043d\u0442\u0430\u043a\u0442; 6 \u0438 6&#8242; \u2014 \u043f\u043b\u043e\u0441\u043a\u0438\u0435 \u0441\u0442\u0430\u043b\u044c\u043d\u044b\u0435 \u043a\u043e\u043d\u0442\u0430\u043a\u0442\u043d\u044b\u0435 \u043f\u0440\u0443\u0436\u0438\u043d\u044b \u0441 \u0441\u0435\u0440\u0435\u0431\u0440\u044f\u043d\u044b\u043c\u0438 \u043a\u043e\u043d\u0442\u0430\u043a\u0442\u043d\u044b\u043c\u0438 \u043d\u0430\u043f\u0430\u0439\u043a\u0430\u043c\u0438; 7 \u2014 \u043f\u0440\u0443\u0436\u0438\u043d\u044b.<\/a><\/figcaption><\/div>\n<\/figure>\n<blockquote>\n<p>\u041e\u0431\u0440\u0430\u0442\u0438\u0442\u0435 \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435: \u043f\u0440\u0438 \u043d\u0430\u0436\u0430\u0442\u0438\u0438 \u043a\u043b\u044e\u0447\u0430 \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442 \u0437\u0430\u043c\u044b\u043a\u0430\u043d\u0438\u0435 \u043a\u043e\u043d\u0442\u0430\u043a\u0442\u0430 \u043d\u0430 \u0440\u044b\u0447\u0430\u0433\u0435 (\u0440\u0438\u0441. 4, \u0434\u0435\u0442\u0430\u043b\u044c 3) \u0441 \u043a\u043e\u043d\u0442\u0430\u043a\u0442\u043e\u043c \u043f\u043e\u0434 \u0440\u0443\u043a\u043e\u044f\u0442\u043a\u043e\u0439 (\u0440\u0438\u0441. 4, \u043a\u043e\u043d\u0442\u0430\u043a\u0442 6). \u041f\u0440\u0438 \u043e\u0442\u043f\u0443\u0441\u043a\u0430\u043d\u0438\u0438 \u043a\u043b\u044e\u0447\u0430 \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442 \u0437\u0430\u043c\u044b\u043a\u0430\u043d\u0438\u0435 \u0434\u0440\u0443\u0433\u043e\u0433\u043e \u043a\u043e\u043d\u0442\u0430\u043a\u0442\u0430 \u043d\u0430 \u0440\u044b\u0447\u0430\u0433\u0435 \u0441 \u043a\u043e\u043d\u0442\u0430\u043a\u0442\u043e\u043c \u043d\u0430 \u0434\u0430\u043b\u044c\u043d\u0435\u0439 \u043e\u0442 \u0440\u0443\u043a\u043e\u044f\u0442\u043a\u0438 \u0441\u0442\u043e\u0440\u043e\u043d\u0435 \u043a\u043b\u044e\u0447\u0430 (\u0440\u0438\u0441. 4, \u043a\u043e\u043d\u0442\u0430\u043a\u0442 6&#8242;). \u0422\u043e \u0435\u0441\u0442\u044c, \u043a\u043b\u044e\u0447 \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f <strong>\u043f\u0435\u0440\u0435\u043a\u043b\u044e\u0447\u0430\u0442\u0435\u043b\u0435\u043c<\/strong> \u0441 \u043d\u043e\u0440\u043c\u0430\u043b\u044c\u043d\u043e-\u0440\u0430\u0437\u043e\u043c\u043a\u043d\u0443\u0442\u044b\u043c \u0438 \u043d\u043e\u0440\u043c\u0430\u043b\u044c\u043d\u043e-\u0437\u0430\u043c\u043a\u043d\u0443\u0442\u044b\u043c \u043a\u043e\u043d\u0442\u0430\u043a\u0442\u0430\u043c\u0438.<\/p>\n<p>\u0422\u0430\u043a\u0430\u044f \u0441\u0445\u0435\u043c\u0430 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u043f\u0435\u0440\u0435\u043a\u043b\u044e\u0447\u0430\u0442\u044c \u0430\u043f\u043f\u0430\u0440\u0430\u0442\u0443\u0440\u0443 \u0432 \u0440\u0435\u0436\u0438\u043c \u043f\u0440\u0438\u0451\u043c\u0430 \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u043c\u043c \u043a\u043e\u0433\u0434\u0430 \u043a\u043b\u044e\u0447 \u043d\u0435 \u043d\u0430\u0436\u0430\u0442.<\/p>\n<\/blockquote>\n<h3>2. \u0422\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u043d\u044b\u0439 \u0430\u043f\u043f\u0430\u0440\u0430\u0442<\/h3>\n<p>\u041d\u0430 \u043f\u0440\u0438\u0435\u043c\u043d\u043e\u0439 \u0441\u0442\u043e\u0440\u043e\u043d\u0435 \u0443\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u043b\u0441\u044f \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u043d\u044b\u0439 \u0430\u043f\u043f\u0430\u0440\u0430\u0442, \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c \u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e \u043f\u0440\u043e\u0442\u044f\u0433\u0438\u0432\u0430\u043b \u0431\u0443\u043c\u0430\u0436\u043d\u0443\u044e \u043b\u0435\u043d\u0442\u0443 \u0447\u0435\u0440\u0435\u0437 \u043f\u0438\u0448\u0443\u0449\u0438\u0439 \u0443\u0437\u0435\u043b, \u0441\u043e\u0441\u0442\u043e\u044f\u0449\u0438\u0439 \u0438\u0437 \u043f\u0435\u0440\u0435\u043c\u0435\u0449\u0430\u044e\u0449\u0435\u0433\u043e\u0441\u044f \u0432\u0432\u0435\u0440\u0445-\u0432\u043d\u0438\u0437 \u043f\u0440\u0438\u0436\u0438\u043c\u043d\u043e\u0433\u043e \u0440\u043e\u043b\u0438\u043a\u0430 \u0438 \u0433\u0440\u0438\u0444\u0435\u043b\u044f \u0438\u043b\u0438 \u0447\u0435\u0440\u043d\u0438\u043b\u044c\u043d\u0438\u0446\u044b \u0441 \u043f\u0435\u0440\u043e\u043c. \u041a\u043e\u0433\u0434\u0430 \u043f\u0440\u0438 \u0437\u0430\u043c\u044b\u043a\u0430\u043d\u0438\u0438 \u0446\u0435\u043f\u0438 \u0432 \u0430\u043f\u043f\u0430\u0440\u0430\u0442 \u043f\u043e\u0441\u0442\u0443\u043f\u0430\u043b \u044d\u043b\u0435\u043a\u0442\u0440\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u0441\u0438\u0433\u043d\u0430\u043b \u043e\u0442 \u0443\u0434\u0430\u043b\u0435\u043d\u043d\u043e\u0433\u043e \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u043d\u043e\u0433\u043e \u043a\u043b\u044e\u0447\u0430, \u0432\u043a\u043b\u044e\u0447\u0430\u043b\u0441\u044f \u043b\u0435\u043d\u0442\u043e\u043f\u0440\u043e\u0442\u044f\u0436\u043d\u044b\u0439 \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c, \u0440\u043e\u043b\u0438\u043a \u043f\u0440\u0438\u0436\u0438\u043c\u0430\u043b \u0434\u0432\u0438\u0436\u0443\u0449\u0443\u044e\u0441\u044f \u043b\u0435\u043d\u0442\u0443 \u043a \u043f\u0435\u0440\u0443, \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u043e\u0441\u0442\u0430\u0432\u043b\u044f\u043b\u043e \u043a\u043e\u0440\u043e\u0442\u043a\u0443\u044e (\u0442\u043e\u0447\u043a\u0430) \u0438\u043b\u0438 \u0431\u043e\u043b\u0435\u0435 \u0434\u043b\u0438\u043d\u043d\u0443\u044e (\u0442\u0438\u0440\u0435) \u0447\u0435\u0440\u0442\u043e\u0447\u043a\u0443.<\/p>\n<figure class=\"\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/8dd\/642\/fac\/8dd642faca6a62e2f9e3bdaeaa33ac15.jpg\" alt=\"\u0420\u0438\u0441 5. \u0422\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u043d\u044b\u0439 \u0430\u043f\u043f\u0430\u0440\u0430\u0442 \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u041c\u043e\u0440\u0437\u0435\" title=\"\u0420\u0438\u0441 5. \u0422\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u043d\u044b\u0439 \u0430\u043f\u043f\u0430\u0440\u0430\u0442 \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u041c\u043e\u0440\u0437\u0435\" width=\"375\" height=\"600\" sizes=\"auto, (max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/r\/w780\/getpro\/habr\/upload_files\/8dd\/642\/fac\/8dd642faca6a62e2f9e3bdaeaa33ac15.jpg 780w,&#10;       https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/8dd\/642\/fac\/8dd642faca6a62e2f9e3bdaeaa33ac15.jpg 781w\" loading=\"lazy\" decode=\"async\"\/><\/p>\n<div><figcaption><a href=\"https:\/\/izi.travel\/ru\/928b-telegrafnyy-apparat-sistemy-morze\/ru\" rel=\"noopener noreferrer nofollow\">\u0420\u0438\u0441 5. \u0422\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u043d\u044b\u0439 \u0430\u043f\u043f\u0430\u0440\u0430\u0442 \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u041c\u043e\u0440\u0437\u0435<\/a><\/figcaption><\/div>\n<\/figure>\n<h3>\u041c\u0435\u0445\u0430\u043d\u0438\u043a\u0430 \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u043d\u043e\u0433\u043e \u0430\u043f\u043f\u0430\u0440\u0430\u0442\u0430<\/h3>\n<p>\u0414\u043b\u044f \u0438\u0437\u0443\u0447\u0435\u043d\u0438\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u043f\u0435\u0440\u0432\u044b\u0445 \u0432\u0435\u0440\u0441\u0438\u0439 \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u043d\u044b\u0445 \u0430\u043f\u043f\u0430\u0440\u0430\u0442\u043e\u0432 \u041c\u043e\u0440\u0437\u0435 \u043e\u0431\u0440\u0430\u0442\u0438\u043c\u0441\u044f \u043a \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b\u044c\u043d\u043e\u043c\u0443 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0443, \u0434\u0430\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u043c\u0443 11 \u0430\u043f\u0440\u0435\u043b\u044f 1846 \u0433\u043e\u0434\u0430, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0434\u043e\u0441\u0442\u0443\u043f\u0435\u043d \u043e\u043d\u043b\u0430\u0439\u043d \u0432 <a href=\"https:\/\/www.docsteach.org\/documents\/document\/samuel-morses-telegraph\" rel=\"noopener noreferrer nofollow\">\u041d\u0430\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u043e\u043c \u0430\u0440\u0445\u0438\u0432\u0435 \u0421\u0428\u0410<\/a>.<\/p>\n<figure class=\"full-width\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/508\/23f\/f8b\/50823ff8bc82f812465a1dc24191ab9d.jpg\" alt=\"\u0420\u0438\u0441 6. \u0422\u0435\u043b\u0435\u0433\u0440\u0430\u0444 \u041c\u043e\u0440\u0437\u0435\" title=\"\u0420\u0438\u0441 6. \u0422\u0435\u043b\u0435\u0433\u0440\u0430\u0444 \u041c\u043e\u0440\u0437\u0435\" width=\"5054\" height=\"3550\" sizes=\"auto, (max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/r\/w780\/getpro\/habr\/upload_files\/508\/23f\/f8b\/50823ff8bc82f812465a1dc24191ab9d.jpg 780w,&#10;       https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/508\/23f\/f8b\/50823ff8bc82f812465a1dc24191ab9d.jpg 781w\" loading=\"lazy\" decode=\"async\"\/><\/p>\n<div><figcaption>\u0420\u0438\u0441 6. \u0422\u0435\u043b\u0435\u0433\u0440\u0430\u0444 \u041c\u043e\u0440\u0437\u0435<\/figcaption><\/div>\n<\/figure>\n<details class=\"spoiler\">\n<summary>\u0415\u0441\u043b\u0438 \u043f\u0440\u0438\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c\u0441\u044f \u0432\u043d\u0438\u043c\u0430\u0442\u0435\u043b\u044c\u043d\u0435\u0435, \u0442\u043e \u043c\u043e\u0436\u043d\u043e \u0437\u0430\u043c\u0435\u0442\u0438\u0442\u044c, \u0447\u0442\u043e \u043b\u0435\u043d\u0442\u043e\u043f\u0440\u043e\u0442\u044f\u0436\u043d\u044b\u0439 \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u0442 \u044d\u043d\u0435\u0440\u0433\u0438\u044e \u043e\u0442&#8230; \u0433\u0440\u0430\u0432\u0438\u0442\u0430\u0446\u0438\u0438<\/summary>\n<div class=\"spoiler__content\">\n<figure class=\"full-width\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/f72\/4e5\/616\/f724e5616b14b0a24736ea27769a632f.jpg\" alt=\"\u0420\u0438\u0441 6.1. \u0413\u0440\u0430\u0432\u0438\u0442\u0430\u0446\u0438\u043e\u043d\u043d\u044b\u0439 \u043f\u0440\u0438\u0432\u043e\u0434 \u043b\u0435\u043d\u0442\u043e\u043f\u0440\u043e\u0442\u044f\u0436\u043d\u043e\u0433\u043e \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c\u0430.\" title=\"\u0420\u0438\u0441 6.1. \u0413\u0440\u0430\u0432\u0438\u0442\u0430\u0446\u0438\u043e\u043d\u043d\u044b\u0439 \u043f\u0440\u0438\u0432\u043e\u0434 \u043b\u0435\u043d\u0442\u043e\u043f\u0440\u043e\u0442\u044f\u0436\u043d\u043e\u0433\u043e \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c\u0430.\" width=\"526\" height=\"898\" sizes=\"auto, (max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/r\/w780\/getpro\/habr\/upload_files\/f72\/4e5\/616\/f724e5616b14b0a24736ea27769a632f.jpg 780w,&#10;       https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/f72\/4e5\/616\/f724e5616b14b0a24736ea27769a632f.jpg 781w\" loading=\"lazy\" decode=\"async\"\/><\/p>\n<div><figcaption>\u0420\u0438\u0441 6.1. \u0413\u0440\u0430\u0432\u0438\u0442\u0430\u0446\u0438\u043e\u043d\u043d\u044b\u0439 \u043f\u0440\u0438\u0432\u043e\u0434 \u043b\u0435\u043d\u0442\u043e\u043f\u0440\u043e\u0442\u044f\u0436\u043d\u043e\u0433\u043e \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c\u0430.<\/figcaption><\/div>\n<\/figure>\n<\/div>\n<\/details>\n<p>\u041f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 \u043d\u0430\u0431\u043e\u0440\u0430 \u0448\u0435\u0441\u0442\u0435\u0440\u0435\u043d\u043e\u043a \u0438 &#171;\u043f\u0430\u0441\u0441\u0438\u043a\u043e\u0432&#187; \u0432\u0440\u0430\u0449\u0430\u044e\u0449\u0438\u0439 \u043c\u043e\u043c\u0435\u043d\u0442 \u043f\u0435\u0440\u0435\u0434\u0430\u0435\u0442\u0441\u044f \u043d\u0430 \u0432\u0430\u043b\u0438\u043a\u0438 <strong>e<\/strong> \u0438 <strong>d<\/strong>, \u0442\u044f\u043d\u0443\u0449\u0438\u0435 \u043b\u0435\u043d\u0442\u0443. \u0428\u0442\u043e\u043a <strong>m<\/strong>, \u0441\u0432\u044f\u0437\u0430\u043d\u043d\u044b\u0439 \u0441 \u0440\u044b\u0447\u0430\u0433\u043e\u043c <strong>F<\/strong>, \u043f\u0440\u0438 \u043e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0438\u0438 \u0442\u043e\u043a\u0430 \u0432 \u044d\u043b\u0435\u043a\u0442\u0440\u043e\u043c\u0430\u0433\u043d\u0438\u0442\u0435 <strong>E<\/strong> \u0434\u0430\u0432\u0438\u0442 \u043d\u0430 &#171;\u0442\u043e\u0440\u043c\u043e\u0437&#187; \u0438 \u043b\u0435\u043d\u0442\u0430 \u0438\u0437 \u0431\u0430\u0440\u0430\u0431\u0430\u043d\u0430 <strong>C<\/strong> \u043d\u0435 \u0432\u044b\u0442\u044f\u0433\u0438\u0432\u0430\u0435\u0442\u0441\u044f.<\/p>\n<p>\u041f\u0440\u0438 \u043f\u043e\u0434\u0430\u0447\u0435 \u0442\u043e\u043a\u0430 \u0432 \u044d\u043b\u0435\u043a\u0442\u0440\u043e\u043c\u0430\u0433\u043d\u0438\u0442, \u0448\u0442\u043e\u043a <strong>m<\/strong> \u043f\u043e\u0434\u043d\u0438\u043c\u0430\u0435\u0442\u0441\u044f \u0432\u0441\u043b\u0435\u0434 \u0437\u0430 \u0440\u044b\u0447\u0430\u0433\u043e\u043c <strong>F<\/strong> \u0438 \u0441\u043d\u0438\u043c\u0430\u0435\u0442 \u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u043a\u0443 \u0441 \u043b\u0435\u043d\u0442\u043e\u043f\u0440\u043e\u0442\u044f\u0436\u043d\u043e\u0433\u043e \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c\u0430. \u041b\u0435\u043d\u0442\u0430 \u043d\u0430\u0447\u0438\u043d\u0430\u0435\u0442 \u0432\u044b\u0442\u044f\u0433\u0438\u0432\u0430\u0442\u044c\u0441\u044f \u0438\u0437 \u0431\u0430\u0440\u0430\u0431\u0430\u043d\u0430 <strong>C<\/strong> \u0438 \u043f\u0440\u0438\u0436\u0438\u043c\u0430\u0435\u043c\u043e\u0435 \u043a \u043d\u0435\u0439 \u043f\u0435\u0440\u043e <strong>S<\/strong> \u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u043e\u0442\u043c\u0435\u0442\u043a\u0443.<\/p>\n<blockquote>\n<p>\u042f \u043d\u0435 \u0432\u043f\u043e\u043b\u043d\u0435 \u0443\u0432\u0435\u0440\u0435\u043d, \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043b\u0438 \u0441\u0430\u043c\u043e \u043f\u0435\u0440\u043e \u043f\u043e\u0434\u0432\u0438\u0436\u043d\u044b\u043c \u0432 \u044d\u0442\u043e\u0439 \u043a\u043e\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0438, \u0438\u043b\u0438 \u0431\u0443\u043c\u0430\u0436\u043d\u0430\u044f \u043b\u0435\u043d\u0442\u0430 \u043f\u0440\u0438\u0436\u0438\u043c\u0430\u0435\u0442\u0441\u044f \u043a \u043d\u0435\u043c\u0443 \u0440\u043e\u043b\u0438\u043a\u043e\u043c. \u0412\u043e\u0437\u043c\u043e\u0436\u043d\u043e, \u0427\u0438\u0442\u0430\u0442\u0435\u043b\u044c \u043b\u0443\u0447\u0448\u0435 \u0440\u0430\u0437\u0431\u0435\u0440\u0435\u0442\u0441\u044f \u0441 \u044d\u0442\u0438\u043c \u0432\u043e\u043f\u0440\u043e\u0441\u043e\u043c \u0438 \u043d\u0430\u043f\u0438\u0448\u0435\u0442 \u043e \u0441\u0432\u043e\u0438\u0445 \u043d\u0430\u0445\u043e\u0434\u043a\u0430\u0445 \u0432 \u043a\u043e\u043c\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u044f\u0445.<\/p>\n<\/blockquote>\n<p>\u0422\u0430\u043a\u043e\u0432, \u0432 \u043e\u0431\u0449\u0438\u0445 \u0447\u0435\u0440\u0442\u0430\u0445, \u043f\u0440\u0438\u043d\u0446\u0438\u043f \u0440\u0430\u0431\u043e\u0442\u044b \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u043d\u043e\u0433\u043e \u0430\u043f\u043f\u0430\u0440\u0430\u0442\u0430 \u041c\u043e\u0440\u0437\u0435.<\/p>\n<p>\u0418\u043d\u043e\u0433\u0434\u0430 \u0432\u043c\u0435\u0441\u0442\u043e \u043f\u043e\u043b\u043d\u043e\u0446\u0435\u043d\u043d\u043e\u0433\u043e \u0430\u043f\u043f\u0430\u0440\u0430\u0442\u0430 \u0441\u0442\u0430\u0432\u0438\u043b\u043e\u0441\u044c \u0431\u043e\u043b\u0435\u0435 \u043f\u0440\u043e\u0441\u0442\u043e\u0435 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e: \u0437\u0443\u043c\u043c\u0435\u0440 \u0438\u043b\u0438 \u0437\u0432\u043e\u043d\u043e\u043a, \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u0438\u0437\u0434\u0430\u0432\u0430\u043b\u043e \u0437\u0432\u0443\u043a \u043f\u0440\u0438 \u043f\u043e\u044f\u0432\u043b\u0435\u043d\u0438\u0438 \u0442\u043e\u043a\u0430 \u0432 \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u043d\u043e\u0439 \u0446\u0435\u043f\u0438. \u0412 \u044d\u0442\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u0437\u0430\u043f\u0438\u0441\u044c \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u043d\u043e\u0433\u043e \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u044f \u043d\u0430 \u0431\u0443\u043c\u0430\u0433\u0443 \u0434\u0435\u043b\u0430\u043b \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u0438\u0441\u0442, \u043f\u0440\u0438\u043d\u0438\u043c\u0430\u044f \u0442\u043e\u0447\u043a\u0438 \u0438 \u0442\u0438\u0440\u0435 \u043d\u0430 \u0441\u043b\u0443\u0445. \u041f\u043e\u0434\u043e\u0431\u043d\u0430\u044f \u043c\u0435\u0442\u043e\u0434\u0438\u043a\u0430 \u0448\u0438\u0440\u043e\u043a\u043e \u043f\u0440\u0438\u043c\u0435\u043d\u044f\u043b\u0430\u0441\u044c \u043f\u0440\u0438 \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0435 \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u043d\u044b\u0445 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0439 \u043f\u043e \u0440\u0430\u0434\u0438\u043e.<\/p>\n<h3>3. \u0411\u0430\u0442\u0430\u0440\u0435\u044f<\/h3>\n<p>\u0427\u0442\u043e\u0431\u044b \u043f\u043e \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u043d\u044b\u043c \u043f\u0440\u043e\u0432\u043e\u0434\u0430\u043c, \u043a\u043b\u044e\u0447\u0430\u043c \u0438 \u044d\u043b\u0435\u043a\u0442\u0440\u043e\u043c\u0430\u0433\u043d\u0438\u0442\u0430\u043c \u0448\u0435\u043b \u044d\u043b\u0435\u043a\u0442\u0440\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u0442\u043e\u043a, \u0432 \u0446\u0435\u043f\u0438 \u0434\u043e\u043b\u0436\u043d\u0430 \u0431\u044b\u0442\u044c \u0431\u0430\u0442\u0430\u0440\u0435\u044f. \u0412\u043e \u0432\u0442\u043e\u0440\u043e\u0439 \u043f\u043e\u043b\u043e\u0432\u0438\u043d\u0435 19 \u0432\u0435\u043a\u0430 \u0447\u0430\u0449\u0435 \u0432\u0441\u0435\u0433\u043e \u043f\u0440\u0438\u043c\u0435\u043d\u044f\u043b\u0438\u0441\u044c \u0441\u0431\u043e\u0440\u043a\u0438 \u0438\u0437 \u0433\u0430\u043b\u044c\u0432\u0430\u043d\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u043e\u0432 \u0414\u0430\u043d\u0438\u044d\u043b\u044f \u0438 \u0435\u0433\u043e \u0431\u043e\u043b\u0435\u0435 \u043f\u043e\u0437\u0434\u043d\u0438\u0445 \u043c\u043e\u0434\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0439 \u2014 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u043e\u0432 \u041a\u0430\u043b\u043b\u043e.<\/p>\n<figure class=\"full-width\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/cd6\/300\/ef8\/cd6300ef8723c793d78f941d2e0056c2.png\" alt=\"\u0420\u0438\u0441 7. \u042d\u043b\u0435\u043a\u0442\u0440\u043e\u0445\u0438\u043c\u0438\u0447\u0435\u0441\u043a\u043e\u0435 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430 \u0414\u0430\u043d\u0438\u0435\u043b\u044f (\u0441\u043b\u0435\u0432\u0430) \u0438 \u0435\u0433\u043e \u043a\u043e\u043d\u0441\u0442\u0440\u0443\u043a\u0442\u0438\u0432\u043d\u043e\u0435 \u0438\u0441\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 (\u0441\u043f\u0440\u0430\u0432\u0430)\" title=\"\u0420\u0438\u0441 7. \u042d\u043b\u0435\u043a\u0442\u0440\u043e\u0445\u0438\u043c\u0438\u0447\u0435\u0441\u043a\u043e\u0435 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430 \u0414\u0430\u043d\u0438\u0435\u043b\u044f (\u0441\u043b\u0435\u0432\u0430) \u0438 \u0435\u0433\u043e \u043a\u043e\u043d\u0441\u0442\u0440\u0443\u043a\u0442\u0438\u0432\u043d\u043e\u0435 \u0438\u0441\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 (\u0441\u043f\u0440\u0430\u0432\u0430)\" width=\"1211\" height=\"577\" sizes=\"auto, (max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/r\/w780\/getpro\/habr\/upload_files\/cd6\/300\/ef8\/cd6300ef8723c793d78f941d2e0056c2.png 780w,&#10;       https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/cd6\/300\/ef8\/cd6300ef8723c793d78f941d2e0056c2.png 781w\" loading=\"lazy\" decode=\"async\"\/><\/p>\n<div><figcaption>\u0420\u0438\u0441 7. \u042d\u043b\u0435\u043a\u0442\u0440\u043e\u0445\u0438\u043c\u0438\u0447\u0435\u0441\u043a\u043e\u0435 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430 \u0414\u0430\u043d\u0438\u0435\u043b\u044f (\u0441\u043b\u0435\u0432\u0430) \u0438 \u0435\u0433\u043e \u043a\u043e\u043d\u0441\u0442\u0440\u0443\u043a\u0442\u0438\u0432\u043d\u043e\u0435 \u0438\u0441\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 (\u0441\u043f\u0440\u0430\u0432\u0430)<\/figcaption><\/div>\n<\/figure>\n<p><a href=\"https:\/\/en.wikipedia.org\/wiki\/Galvanic_cell\" rel=\"noopener noreferrer nofollow\">\u0413\u0430\u043b\u044c\u0432\u0430\u043d\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u044d\u043b\u0435\u043c\u0435\u043d\u0442<\/a> \u0441\u043e\u0437\u0434\u0430\u0435\u0442 \u044d\u043b\u0435\u043a\u0442\u0440\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u0442\u043e\u043a \u0432\u043e \u0432\u043d\u0435\u0448\u043d\u0435\u0439 \u0446\u0435\u043f\u0438 \u0437\u0430 \u0441\u0447\u0435\u0442 \u043e\u043a\u0438\u0441\u043b\u0438\u0442\u0435\u043b\u044c\u043d\u043e-\u0432\u043e\u0441\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0445 \u0440\u0435\u0430\u043a\u0446\u0438\u0439, \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u044f\u0449\u0438\u0445 \u043d\u0430 \u0435\u0433\u043e \u044d\u043b\u0435\u043a\u0442\u0440\u043e\u0434\u0430\u0445. \u042d\u043b\u0435\u043c\u0435\u043d\u0442 \u0414\u0430\u043d\u0438\u044d\u043b\u044f \u0441\u043e\u0441\u0442\u043e\u0438\u0442 \u0438\u0437 \u0434\u0432\u0443\u0445 \u044d\u043b\u0435\u043a\u0442\u0440\u043e\u0434\u043e\u0432: \u043c\u0435\u0434\u043d\u043e\u0433\u043e \u043a\u0430\u0442\u043e\u0434\u0430 &#8212; &#171;\u043f\u043b\u044e\u0441\u0430&#187; \u0438 \u0446\u0438\u043d\u043a\u043e\u0432\u043e\u0433\u043e \u0430\u043d\u043e\u0434\u0430 \u2014 &#171;\u043c\u0438\u043d\u0443\u0441\u0430&#187;. \u041e\u0431\u0430 \u043f\u043e\u0433\u0440\u0443\u0436\u0435\u043d\u044b \u0432 \u0440\u0430\u0437\u043d\u044b\u0435 \u044d\u043b\u0435\u043a\u0442\u0440\u043e\u043b\u0438\u0442\u044b: \u043c\u0435\u0434\u044c &#8212; \u0432 \u0440\u0430\u0441\u0442\u0432\u043e\u0440 \u0441\u0443\u043b\u044c\u0444\u0430\u0442\u0430 \u043c\u0435\u0434\u0438 (\u043c\u0435\u0434\u043d\u043e\u0433\u043e \u043a\u0443\u043f\u043e\u0440\u043e\u0441\u0430), \u0430 \u0446\u0438\u043d\u043a \u2014 \u0432 \u0440\u0430\u0441\u0442\u0432\u043e\u0440 \u0441\u0443\u043b\u044c\u0444\u0430\u0442\u0430 \u0446\u0438\u043d\u043a\u0430. \u042d\u043b\u0435\u043a\u0442\u0440\u043e\u043b\u0438\u0442\u044b \u0440\u0430\u0437\u0434\u0435\u043b\u044f\u0435\u0442 \u043f\u043e\u0440\u0438\u0441\u0442\u0430\u044f \u043f\u0435\u0440\u0435\u0433\u043e\u0440\u043e\u0434\u043a\u0430, \u043f\u0440\u0435\u0434\u043e\u0442\u0432\u0440\u0430\u0449\u0430\u044e\u0449\u0430\u044f \u043f\u0435\u0440\u0435\u043c\u0435\u0448\u0438\u0432\u0430\u043d\u0438\u0435 \u0436\u0438\u0434\u043a\u043e\u0441\u0442\u0435\u0439, \u043d\u043e \u043f\u0440\u043e\u043f\u0443\u0441\u043a\u0430\u044e\u0449\u0430\u044f \u0438\u043e\u043d\u044b.<\/p>\n<p>\u041f\u043e\u043a\u0430 \u0432\u043d\u0435\u0448\u043d\u0430\u044f\u044f \u044d\u043b\u0435\u043a\u0442\u0440\u0438\u0447\u0435\u0441\u043a\u0430\u044f \u0446\u0435\u043f\u044c <strong>\u0440\u0430\u0437\u043e\u043c\u043a\u043d\u0443\u0442\u0430<\/strong>, \u043d\u0430 \u043f\u043e\u0432\u0435\u0440\u0445\u043d\u043e\u0441\u0442\u044f\u0445 \u043e\u0431\u043e\u0438\u0445 \u044d\u043b\u0435\u043a\u0442\u0440\u043e\u0434\u043e\u0432 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430 \u0414\u0430\u043d\u0438\u044d\u043b\u044f \u0443\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u0440\u0430\u0432\u043d\u043e\u0432\u0435\u0441\u0438\u0435 \u043c\u0435\u0436\u0434\u0443 \u043d\u0435\u0439\u0442\u0440\u0430\u043b\u044c\u043d\u044b\u043c\u0438 \u0430\u0442\u043e\u043c\u0430\u043c\u0438 \u043c\u0435\u0442\u0430\u043b\u043b\u0430 \u044d\u043b\u0435\u043a\u0442\u0440\u043e\u0434\u0430 \u0438 \u0438\u043e\u043d\u0430\u043c\u0438 \u044d\u0442\u043e\u0433\u043e \u0436\u0435 \u043c\u0435\u0442\u0430\u043b\u043b\u0430 \u0432 \u0440\u0430\u0441\u0442\u0432\u043e\u0440\u0435. \u041f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u0438\u043e\u043d\u044b \u043c\u0435\u0434\u0438 <strong>\u043d\u0435 \u043c\u043e\u0433\u0443\u0442<\/strong> \u043f\u0440\u043e\u043d\u0438\u043a\u043d\u0443\u0442\u044c \u043a \u0446\u0438\u043d\u043a\u043e\u0432\u043e\u043c\u0443 \u044d\u043b\u0435\u043a\u0442\u0440\u043e\u0434\u0443 \u0447\u0442\u043e\u0431\u044b \u043e\u043a\u0438\u0441\u043b\u0438\u0442\u044c \u0435\u0433\u043e \u043d\u0430\u043f\u0440\u044f\u043c\u0443\u044e:<\/p>\n<p><img decoding=\"async\" class=\"formula\" source=\"Cu^{2+} + Zn \\rightarrow Cu + Zn^{2+}\" alt=\"Cu^{2+} + Zn \\rightarrow Cu + Zn^{2+}\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/eb6\/61c\/07f\/eb661c07f72f85923d7b939ff005e180.svg\" width=\"222\" height=\"22\" sizes=\"auto, (max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/eb6\/61c\/07f\/eb661c07f72f85923d7b939ff005e180.svg 780w,&#10;       https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/eb6\/61c\/07f\/eb661c07f72f85923d7b939ff005e180.svg 781w\" loading=\"lazy\" decode=\"async\"\/><\/p>\n<p>\u0440\u0435\u0430\u0433\u0435\u043d\u0442\u044b, \u0446\u0438\u043d\u043a \u0438 \u043c\u0435\u0434\u043d\u044b\u0439 \u043a\u0443\u043f\u043e\u0440\u043e\u0441, \u043d\u0435 \u0440\u0430\u0441\u0445\u043e\u0434\u0443\u044e\u0442\u0441\u044f.<\/p>\n<p>\u041a\u0430\u043a \u0442\u043e\u043b\u044c\u043a\u043e \u044d\u043b\u0435\u043a\u0442\u0440\u043e\u0434\u044b \u0441\u043e\u0435\u0434\u0438\u043d\u044f\u044e\u0442\u0441\u044f \u0447\u0435\u0440\u0435\u0437 \u0432\u043d\u0435\u0448\u043d\u044e\u044e \u044d\u043b\u0435\u043a\u0442\u0440\u0438\u0447\u0435\u0441\u043a\u0443\u044e \u0446\u0435\u043f\u044c, \u0442\u0430\u043a \u0432 \u0441\u0438\u043b\u0443 \u0431\u043e\u043b\u0435\u0435 \u043e\u0442\u0440\u0438\u0446\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0433\u043e \u043f\u043e\u0442\u0435\u043d\u0446\u0438\u0430\u043b\u0430 \u0446\u0438\u043d\u043a\u043e\u0432\u043e\u0433\u043e \u044d\u043b\u0435\u043a\u0442\u0440\u043e\u0434\u0430 \u043f\u043e \u043e\u0442\u043d\u043e\u0448\u0435\u043d\u0438\u044e \u043a \u043c\u0435\u0434\u043d\u043e\u043c\u0443 \u043f\u043e \u0446\u0435\u043f\u0438 \u043d\u0430\u0447\u0438\u043d\u0430\u0435\u0442 \u0442\u0435\u0447\u044c \u0442\u043e\u043a. \u042d\u043b\u0435\u043a\u0442\u0440\u043e\u043d\u044b \u043f\u0435\u0440\u0435\u043c\u0435\u0449\u0430\u044e\u0442\u0441\u044f \u043e\u0442 \u0446\u0438\u043d\u043a\u043e\u0432\u043e\u0433\u043e \u044d\u043b\u0435\u043a\u0442\u0440\u043e\u0434\u0430 \u043a \u043c\u0435\u0434\u043d\u043e\u043c\u0443 \u0447\u0435\u0440\u0435\u0437 \u0441\u043e\u0435\u0434\u0438\u043d\u0438\u0432\u0448\u0438\u0439 \u0438\u0445 \u043f\u0440\u043e\u0432\u043e\u0434\u043d\u0438\u043a .<\/p>\n<p>\u0423\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044f \u0440\u0435\u0430\u043a\u0446\u0438\u0439 \u0432 \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0449\u0435\u043c \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0435 \u0414\u0430\u043d\u0438\u044d\u043b\u044f \u0432\u044b\u0433\u043b\u044f\u0434\u044f\u0442 \u0442\u0430\u043a:<\/p>\n<ul>\n<li>\n<p>\u041d\u0430 \u043f\u043e\u0432\u0435\u0440\u0445\u043d\u043e\u0441\u0442\u0438 \u043c\u0435\u0434\u043d\u043e\u0433\u043e \u043a\u0430\u0442\u043e\u0434\u0430 \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442 \u0432\u043e\u0441\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435 \u043c\u0435\u0434\u0438 \u0438\u0437 \u0438\u043e\u043d\u043e\u0432, \u043f\u043b\u0430\u0432\u0430\u044e\u0449\u0438\u0445 \u0432 \u043e\u043a\u0440\u0443\u0436\u0430\u044e\u0449\u0435\u043c \u044d\u043b\u0435\u043a\u0442\u0440\u043e\u043b\u0438\u0442\u0435, \u0437\u0430 \u0441\u0447\u0451\u0442 \u044d\u043b\u0435\u043a\u0442\u0440\u043e\u043d\u043e\u0432, \u043f\u0440\u0438\u0445\u043e\u0434\u044f\u0449\u0438\u0445 \u043e\u0442 \u0446\u0438\u043d\u043a\u043e\u0432\u043e\u0433\u043e \u044d\u043b\u0435\u043a\u0442\u0440\u043e\u0434\u0430 \u043f\u043e \u043f\u0440\u043e\u0432\u043e\u0434\u0443 \u0438\u0437 \u0432\u043d\u0435\u0448\u043d\u0435\u0439 \u0446\u0435\u043f\u0438:<\/p>\n<\/li>\n<\/ul>\n<p><img decoding=\"async\" class=\"formula\" source=\"Cu^{2+} + 2e^- \\rightarrow Cu\" alt=\"Cu^{2+} + 2e^- \\rightarrow Cu\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/af1\/d1c\/4ae\/af1d1c4ae9a04da303173a93bc3cf35a.svg\" width=\"158\" height=\"22\" sizes=\"auto, (max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/af1\/d1c\/4ae\/af1d1c4ae9a04da303173a93bc3cf35a.svg 780w,&#10;       https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/af1\/d1c\/4ae\/af1d1c4ae9a04da303173a93bc3cf35a.svg 781w\" loading=\"lazy\" decode=\"async\"\/><\/p>\n<ul>\n<li>\n<p>\u041d\u0430 \u0446\u0438\u043d\u043a\u043e\u0432\u043e\u043c \u0430\u043d\u043e\u0434\u0435 \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442 \u043e\u043a\u0438\u0441\u043b\u0435\u043d\u0438\u0435 \u0446\u0438\u043d\u043a\u0430 \u0441 \u043f\u0435\u0440\u0435\u0445\u043e\u0434\u043e\u043c \u0435\u0433\u043e \u0438\u043e\u043d\u043e\u0432 \u0441 \u043f\u043e\u0432\u0435\u0440\u0445\u043d\u043e\u0441\u0442\u0438 \u043c\u0435\u0442\u0430\u043b\u043b\u0430 \u0432 \u043e\u043a\u0440\u0443\u0436\u0430\u044e\u0449\u0438\u0439 \u044d\u043b\u0435\u043a\u0442\u0440\u043e\u043b\u0438\u0442. \u042d\u043b\u0435\u043a\u0442\u0440\u043e\u043d\u044b \u0443\u0445\u043e\u0434\u044f\u0442 \u0432 \u043f\u0440\u043e\u0432\u043e\u0434 \u0432\u043d\u0435\u0448\u043d\u0435\u0439 \u0446\u0435\u043f\u0438:<\/p>\n<\/li>\n<\/ul>\n<p><img decoding=\"async\" class=\"formula\" source=\" Zn - 2e^- \\rightarrow Zn^{2+}\" alt=\" Zn - 2e^- \\rightarrow Zn^{2+}\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/b99\/66d\/6a2\/b9966d6a2c74e1c56ab71765d522c294.svg\" width=\"158\" height=\"22\" sizes=\"auto, (max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/b99\/66d\/6a2\/b9966d6a2c74e1c56ab71765d522c294.svg 780w,&#10;       https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/b99\/66d\/6a2\/b9966d6a2c74e1c56ab71765d522c294.svg 781w\" loading=\"lazy\" decode=\"async\"\/><\/p>\n<p>\u0412 \u0445\u043e\u0434\u0435 \u0432\u044b\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u044d\u043b\u0435\u043a\u0442\u0440\u043e\u044d\u043d\u0435\u0440\u0433\u0438\u0438 \u0446\u0438\u043d\u043a\u043e\u0432\u044b\u0439 \u044d\u043b\u0435\u043a\u0442\u0440\u043e\u0434 \u043f\u043e\u0441\u0442\u0435\u043f\u0435\u043d\u043d\u043e \u0440\u0430\u0441\u0442\u0432\u043e\u0440\u044f\u0435\u0442\u0441\u044f, \u0430 \u043c\u0435\u0434\u043d\u044b\u0439, \u043d\u0430\u043e\u0431\u043e\u0440\u043e\u0442, \u0443\u0432\u0435\u043b\u0438\u0447\u0438\u0432\u0430\u0435\u0442 \u0441\u0432\u043e\u044e \u043c\u0430\u0441\u0441\u0443. \u0427\u0435\u0440\u0435\u0437 \u043f\u043e\u0440\u0438\u0441\u0442\u0443\u044e \u043f\u0435\u0440\u0435\u0433\u043e\u0440\u043e\u0434\u043a\u0443 \u043c\u0435\u0436\u0434\u0443 \u044d\u043b\u0435\u043a\u0442\u0440\u043e\u043b\u0438\u0442\u0430\u043c\u0438 \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442 \u043e\u0431\u043c\u0435\u043d \u0438\u043e\u043d\u0430\u043c\u0438 (\u0441\u043c. \u0440\u0438\u0441. 7 \u0441\u0445\u0435\u043c\u0430 \u0441\u043b\u0435\u0432\u0430).<\/p>\n<p>\u042d\u0414\u0421 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430 \u0414\u0430\u043d\u0438\u044d\u043b\u044f \u0441\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u043e\u043a\u043e\u043b\u043e 1 \u0432\u043e\u043b\u044c\u0442\u0430, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u0438\u0445 \u0441\u043e\u0435\u0434\u0438\u043d\u044f\u043b\u0438 \u0432 \u0431\u0430\u0442\u0430\u0440\u0435\u0438 \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e \u043f\u043e \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0434\u0435\u0441\u044f\u0442\u043a\u043e\u0432 \u0431\u0430\u043d\u043e\u043a.<\/p>\n<p>\u0421\u043f\u0440\u0430\u0432\u0430 \u043d\u0430 \u0440\u0438\u0441. 7 \u043f\u043e\u043a\u0430\u0437\u0430\u043d\u0430 \u0441\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u0430\u044f \u043a\u043e\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u044f \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430 \u0414\u0430\u043d\u0438\u044d\u043b\u044f, \u043a\u043e\u0442\u043e\u0440\u0443\u044e \u043c\u043e\u0436\u043d\u043e <a href=\"https:\/\/www.amazon.in\/mlabs-mLabs-Daniel-Cell\/dp\/B01H1H6JM2\" rel=\"noopener noreferrer nofollow\">\u043d\u0430\u0439\u0442\u0438 \u0432 \u043f\u0440\u043e\u0434\u0430\u0436\u0435<\/a> \u0438 \u043a\u0443\u043f\u0438\u0442\u044c \u0432 \u0445\u043e\u0431\u0431\u0438\u0439\u043d\u044b\u0445 \u0446\u0435\u043b\u044f\u0445. \u041a\u043e\u0440\u043f\u0443\u0441 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430 1 \u0441\u0434\u0435\u043b\u0430\u043d \u0438\u0437 \u043c\u0435\u0434\u0438 \u0438 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0432 \u0440\u043e\u043b\u0438 \u043a\u0430\u0442\u043e\u0434\u0430, \u043f\u043e\u0440\u0438\u0441\u0442\u044b\u0439 \u043a\u0435\u0440\u0430\u043c\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u0441\u0442\u0430\u043a\u0430\u043d\u0447\u0438\u043a 2 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u0442 \u0440\u043e\u043b\u044c \u0440\u0430\u0437\u0434\u0435\u043b\u0438\u0442\u0435\u043b\u044f \u044d\u043b\u0435\u043a\u0442\u0440\u043e\u043b\u0438\u0442\u043e\u0432. \u0412 \u0441\u0442\u0430\u043a\u0430\u043d\u0447\u0438\u043a \u043f\u043e\u043c\u0435\u0449\u0430\u0435\u0442\u0441\u044f \u0446\u0438\u043d\u043a\u043e\u0432\u044b\u0439 \u0430\u043d\u043e\u0434 3. \u042d\u043b\u0435\u043c\u0435\u043d\u0442 \u0437\u0430\u043f\u043e\u043b\u043d\u044f\u0435\u0442\u0441\u044f \u044d\u043b\u0435\u043a\u0442\u0440\u043e\u043b\u0438\u0442\u0430\u043c\u0438 \u0438 \u043f\u043e\u0441\u043b\u0435 \u044d\u0442\u043e\u0433\u043e \u0433\u043e\u0442\u043e\u0432 \u043a \u044d\u043a\u0441\u043f\u043b\u0443\u0430\u0442\u0430\u0446\u0438\u0438.<\/p>\n<h3>4. \u041b\u0438\u043d\u0438\u0438 \u0441\u0432\u044f\u0437\u0438<\/h3>\n<p>\u041e \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u043d\u044b\u0445 \u043f\u0440\u043e\u0432\u043e\u0434\u0430\u0445 \u043c\u043e\u0436\u043d\u043e \u043d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u0441\u043e\u0442\u043d\u0438 \u0441\u0442\u0440\u0430\u043d\u0438\u0446, \u043d\u043e \u0437\u0434\u0435\u0441\u044c \u044f \u043b\u0438\u0448\u044c \u043a\u0440\u0430\u0442\u043a\u043e \u0443\u043f\u043e\u043c\u044f\u043d\u0443 \u043e \u043d\u0438\u0445.<\/p>\n<p>\u0414\u043b\u044f \u043f\u0440\u043e\u043a\u043b\u0430\u0434\u043a\u0438 \u043d\u0430\u0437\u0435\u043c\u043d\u044b\u0445 \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u043d\u044b\u0445 \u043b\u0438\u043d\u0438\u0439 \u0441\u0442\u0430\u0432\u0438\u043b\u0438 \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u0435 \u0441\u0442\u043e\u043b\u0431\u044b. <\/p>\n<figure class=\"full-width\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/9cf\/4b2\/671\/9cf4b267132f6e71074d27491a2efb2c.jpg\" alt=\"\u0422\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u043d\u044b\u0439 \u0441\u0442\u043e\u043b\u0431 \u0433\u0434\u0435-\u0442\u043e \u0432 \u0421\u0435\u0432\u0435\u0440\u043d\u043e\u043c \u0423\u044d\u043b\u044c\u0441\u0435\" title=\"\u0422\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u043d\u044b\u0439 \u0441\u0442\u043e\u043b\u0431 \u0433\u0434\u0435-\u0442\u043e \u0432 \u0421\u0435\u0432\u0435\u0440\u043d\u043e\u043c \u0423\u044d\u043b\u044c\u0441\u0435\" width=\"819\" height=\"624\" sizes=\"auto, (max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/r\/w780\/getpro\/habr\/upload_files\/9cf\/4b2\/671\/9cf4b267132f6e71074d27491a2efb2c.jpg 780w,&#10;       https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/9cf\/4b2\/671\/9cf4b267132f6e71074d27491a2efb2c.jpg 781w\" loading=\"lazy\" decode=\"async\"\/><\/p>\n<div><figcaption><a href=\"https:\/\/www.telegraphpoleappreciationsociety.org\/resting-in-peace\/\" rel=\"noopener noreferrer nofollow\">\u0422\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u043d\u044b\u0439 \u0441\u0442\u043e\u043b\u0431 \u0433\u0434\u0435-\u0442\u043e \u0432 \u0421\u0435\u0432\u0435\u0440\u043d\u043e\u043c \u0423\u044d\u043b\u044c\u0441\u0435<\/a><\/figcaption><\/div>\n<\/figure>\n<p>\u041f\u0440\u043e\u0432\u043e\u0434 \u0431\u044b\u043b \u043c\u0435\u0434\u043d\u044b\u0439 \u0438\u043b\u0438 \u043c\u0435\u0434\u043d\u043e-\u0441\u0442\u0430\u043b\u044c\u043d\u043e\u0439, \u043a\u043e\u0433\u0434\u0430 \u0434\u043b\u044f \u043f\u043e\u0432\u044b\u0448\u0435\u043d\u043d\u043e\u0439 \u043f\u0440\u043e\u0447\u043d\u043e\u0441\u0442\u0438 \u043c\u0435\u0434\u043d\u044b\u0435 \u0436\u0438\u043b\u044b \u043d\u0430\u0432\u0438\u0432\u0430\u044e\u0442 \u043d\u0430 \u0441\u0442\u0430\u043b\u044c\u043d\u0443\u044e \u043f\u0440\u043e\u0432\u043e\u043b\u043e\u043a\u0443-\u0441\u0435\u0440\u0434\u0446\u0435\u0432\u0438\u043d\u0443.<\/p>\n<p>\u0412 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u0438\u0437\u043e\u043b\u044f\u0446\u0438\u043e\u043d\u043d\u044b\u0445 \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b\u043e\u0432 \u0434\u043b\u044f \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u043d\u044b\u0445 \u043a\u0430\u0431\u0435\u043b\u0435\u0439 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043b\u0438\u0441\u044c <a href=\"https:\/\/ru.wikipedia.org\/wiki\/%D0%93%D1%83%D1%82%D1%82%D0%B0%D0%BF%D0%B5%D1%80%D1%87%D0%B0\" rel=\"noopener noreferrer nofollow\">\u0433\u0443\u0442\u0442\u0430\u043f\u0435\u0440\u0447\u0430<\/a>, <a href=\"https:\/\/ru.wikipedia.org\/wiki\/%D0%9F%D0%B5%D0%BD%D1%8C%D0%BA%D0%B0\" rel=\"noopener noreferrer nofollow\">\u043f\u0435\u043d\u044c\u043a\u0430<\/a>, <a href=\"https:\/\/ru.wikipedia.org\/wiki\/%D0%94%D0%B6%D1%83%D1%82_(%D0%B2%D0%BE%D0%BB%D0%BE%D0%BA%D0%BD%D0%BE)\" rel=\"noopener noreferrer nofollow\">\u0434\u0436\u0443\u0442<\/a>, <a href=\"https:\/\/ru.wikipedia.org\/wiki\/%D0%91%D0%B8%D1%82%D1%83%D0%BC\" rel=\"noopener noreferrer nofollow\">\u0431\u0438\u0442\u0443\u043c<\/a>.<\/p>\n<p>\u0421\u0430\u043c\u044b\u0435 \u044d\u043a\u0441\u0442\u0440\u0435\u043c\u0430\u043b\u044c\u043d\u044b\u0435 \u0438\u0441\u043f\u044b\u0442\u0430\u043d\u0438\u044f \u043b\u044e\u0434\u0435\u0439 \u0438 \u0442\u0435\u0445\u043d\u0438\u043a\u0438 \u0441\u043b\u0443\u0447\u0430\u043b\u0438\u0441\u044c \u043f\u0440\u0438 \u043f\u0440\u043e\u043a\u043b\u0430\u0434\u043a\u0435 \u043f\u0435\u0440\u0432\u044b\u0445 \u043f\u043e\u0434\u0432\u043e\u0434\u043d\u044b\u0445 \u043a\u0430\u0431\u0435\u043b\u0435\u0439 \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u043d\u043e\u0439 \u0441\u0432\u044f\u0437\u0438 \u0432 1850-60 \u0433\u043e\u0434\u0430\u0445. \u041e\u0431 \u044d\u0442\u0438\u0445 \u043f\u0440\u0435\u043e\u0434\u043e\u043b\u0435\u043d\u0438\u044f\u0445 \u0438 \u0434\u043e\u0441\u0442\u0438\u0436\u0435\u043d\u0438\u044f\u0445 \u043c\u043e\u0436\u043d\u043e \u043f\u0440\u043e\u0447\u0438\u0442\u0430\u0442\u044c \u0432 \u043a\u043d\u0438\u0433\u0435 \u0410\u0440\u0442\u0443\u0440\u0430 \u041a\u043b\u0430\u0440\u043a\u0430 &#171;\u0413\u043e\u043b\u043e\u0441 \u0447\u0435\u0440\u0435\u0437 \u043e\u043a\u0435\u0430\u043d&#187;, \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u043e\u0439 <a href=\"https:\/\/royallib.com\/book\/klark_artur\/goloc_cherez_okean.html\" rel=\"noopener noreferrer nofollow\">\u0437\u0434\u0435\u0441\u044c<\/a>. \u0412 \u043e\u0442\u043b\u0438\u0447\u0438\u0435 \u043e\u0442 \u0431\u043e\u043b\u044c\u0448\u0438\u043d\u0441\u0442\u0432\u0430 \u0434\u0440\u0443\u0433\u0438\u0445 \u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0434\u0435\u043d\u0438\u0439 \u0438\u0437\u0432\u0435\u0441\u0442\u043d\u043e\u0433\u043e \u0444\u0430\u043d\u0442\u0430\u0441\u0442\u0430, \u044d\u0442\u0430 \u043a\u043d\u0438\u0433\u0430 \u043f\u043e\u0432\u0435\u0441\u0442\u0432\u0443\u0435\u0442 \u043e \u0441\u043e\u0432\u0435\u0440\u0448\u0435\u043d\u043d\u043e \u0440\u0435\u0430\u043b\u044c\u043d\u044b\u0445 \u0441\u043e\u0431\u044b\u0442\u0438\u044f\u0445.<\/p>\n<h3>\u0421\u0445\u0435\u043c\u0430 \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u0430<\/h3>\n<figure class=\"full-width\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/fde\/d17\/9d8\/fded179d8bd1227454361a4c6f830423.jpg\" alt=\"\u0420\u0438\u0441 7. \u0421\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435 \u0434\u0432\u0443\u0445 \u0441\u0442\u0430\u043d\u0446\u0438\u0439 \u043f\u043e\u0441\u0440\u0435\u0434\u0441\u0442\u0432\u043e\u043c \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u0430 \u041c\u043e\u0440\u0437\u0435\" title=\"\u0420\u0438\u0441 7. \u0421\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435 \u0434\u0432\u0443\u0445 \u0441\u0442\u0430\u043d\u0446\u0438\u0439 \u043f\u043e\u0441\u0440\u0435\u0434\u0441\u0442\u0432\u043e\u043c \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u0430 \u041c\u043e\u0440\u0437\u0435\" width=\"956\" height=\"572\" sizes=\"auto, (max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/r\/w780\/getpro\/habr\/upload_files\/fde\/d17\/9d8\/fded179d8bd1227454361a4c6f830423.jpg 780w,&#10;       https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/fde\/d17\/9d8\/fded179d8bd1227454361a4c6f830423.jpg 781w\" loading=\"lazy\" decode=\"async\"\/><\/p>\n<div><figcaption><a href=\"https:\/\/ru.wikipedia.org\/wiki\/%D0%AD%D0%BB%D0%B5%D0%BA%D1%82%D1%80%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%B8%D0%B9_%D1%82%D0%B5%D0%BB%D0%B5%D0%B3%D1%80%D0%B0%D1%84\" rel=\"noopener noreferrer nofollow\">\u0420\u0438\u0441 8. \u0421\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435 \u0434\u0432\u0443\u0445 \u0441\u0442\u0430\u043d\u0446\u0438\u0439 \u043f\u043e\u0441\u0440\u0435\u0434\u0441\u0442\u0432\u043e\u043c \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u0430 \u041c\u043e\u0440\u0437\u0435<\/a><\/figcaption><\/div>\n<\/figure>\n<p>\u0412 \u043b\u0435\u0432\u043e\u0439 \u0447\u0430\u0441\u0442\u0438 \u0440\u0438\u0441. 8 \u043c\u044b \u0432\u0438\u0434\u0438\u043c \u0433\u0430\u043b\u044c\u0432\u0430\u043d\u043e\u043c\u0435\u0442\u0440 G<sub>1 <\/sub>\u0442\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u043d\u044b\u0439 \u0430\u043f\u043f\u0430\u0440\u0430\u0442 R<sub>1<\/sub>, <strong>\u0430\u043a\u0442\u0438\u0432\u043d\u044b\u0439<\/strong> (\u043d\u0430\u0436\u0430\u0442\u044b\u0439) \u043a\u043b\u044e\u0447 M<sub>1<\/sub>, \u0431\u0430\u0442\u0430\u0440\u0435\u044e B<sub>1<\/sub> \u0438 \u043f\u043b\u0430\u0441\u0442\u0438\u043d\u0443 \u0437\u0430\u0437\u0435\u043c\u043b\u0435\u043d\u0438\u044f (\u0437\u0430\u043a\u043e\u043f\u0430\u043d\u0430 \u0432\u043d\u0438\u0437\u0443). \u041d\u0430\u0436\u0430\u0442\u044b\u0439 \u043a\u043b\u044e\u0447 \u0441\u0432\u043e\u0438\u043c \u043d\u043e\u0440\u043c\u0430\u043b\u044c\u043d\u043e-\u0440\u0430\u0437\u043e\u043c\u043a\u043d\u0443\u0442\u044b\u043c \u043a\u043e\u043d\u0442\u0430\u043a\u0442\u043e\u043c (\u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0437\u0430\u043c\u043a\u043d\u0443\u0442 \u043f\u0440\u0438 \u043d\u0430\u0436\u0430\u0442\u0438\u0438) \u0441\u043e\u0435\u0434\u0438\u043d\u044f\u0435\u0442 \u0446\u0435\u043f\u044c, \u0441\u043e\u0441\u0442\u043e\u044f\u0449\u0443\u044e \u0438\u0437 \u044d\u043b\u0435\u043a\u0442\u0440\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u043f\u0440\u043e\u0432\u043e\u0434\u0430, \u043f\u0440\u0438\u0445\u043e\u0434\u044f\u0449\u0435\u0433\u043e \u043e\u0442 \u043f\u0440\u0430\u0432\u043e\u0439 \u0441\u0442\u043e\u0440\u043e\u043d\u044b, \u0433\u0430\u043b\u044c\u0432\u0430\u043d\u043e\u043c\u0435\u0442\u0440\u0430 G<sub>1<\/sub> \u0441\u0430\u043c\u043e\u0433\u043e \u043a\u043b\u044e\u0447\u0430, \u0431\u0430\u0442\u0430\u0440\u0435\u0438 B<sub>1<\/sub> \u0438 \u0437\u0430\u0437\u0435\u043c\u043b\u0435\u043d\u0438\u044f.<\/p>\n<p>\u0412 \u043f\u0440\u0430\u0432\u043e\u0439 \u0447\u0430\u0441\u0442\u0438 \u0440\u0438\u0441. 8 \u043c\u044b \u0432\u0438\u0434\u0438\u043c \u0433\u0430\u043b\u044c\u0432\u0430\u043d\u043e\u043c\u0435\u0442\u0440 G<sub>2 <\/sub>\u0442\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u043d\u044b\u0439 \u0430\u043f\u043f\u0430\u0440\u0430\u0442 R<sub>2<\/sub>, <strong>\u043d\u0435\u0430\u043a\u0442\u0438\u0432\u043d\u044b\u0439<\/strong> (\u043d\u0435 \u043d\u0430\u0436\u0430\u0442\u044b\u0439) \u043a\u043b\u044e\u0447 M<sub>2<\/sub>, \u0431\u0430\u0442\u0430\u0440\u0435\u044e B<sub>2<\/sub> \u0438 \u043f\u043b\u0430\u0441\u0442\u0438\u043d\u0443 \u0437\u0430\u0437\u0435\u043c\u043b\u0435\u043d\u0438\u044f. \u041d\u0435\u0430\u043a\u0442\u0438\u0432\u043d\u044b\u0439 \u043a\u043b\u044e\u0447 M<sub>2<\/sub> \u0441\u043e\u0435\u0434\u0438\u043d\u044f\u0435\u0442 \u0441\u0432\u043e\u0438\u043c \u043d\u043e\u0440\u043c\u0430\u043b\u044c\u043d\u043e-\u0437\u0430\u043c\u043a\u043d\u0443\u0442\u044b\u043c \u043a\u043e\u043d\u0442\u0430\u043a\u0442\u043e\u043c \u0446\u0435\u043f\u044c, \u0432\u043a\u043b\u044e\u0447\u0430\u044e\u0449\u0443\u044e \u0432 \u0441\u0435\u0431\u044f \u0437\u0430\u0437\u0435\u043c\u043b\u0435\u043d\u0438\u0435, \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u043d\u044b\u0439 \u0430\u043f\u043f\u0430\u0440\u0430\u0442 R<sub>2<\/sub>, \u0441\u0430\u043c \u043a\u043b\u044e\u0447, \u0433\u0430\u043b\u044c\u0432\u0430\u043d\u043e\u043c\u0435\u0442\u0440 G<sub>2<\/sub> \u0438 \u044d\u043b\u0435\u043a\u0442\u0440\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u043f\u0440\u043e\u0432\u043e\u0434, \u0438\u0434\u0443\u0449\u0438\u0439 \u043a \u043b\u0435\u0432\u043e\u0439 \u0441\u0442\u043e\u0440\u043e\u043d\u0435.<\/p>\n<p>\u0422\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c, \u043b\u0435\u0432\u0430\u044f \u0441\u0442\u043e\u0440\u043e\u043d\u0430 \u0441\u0445\u0435\u043c\u044b \u0447\u0435\u0440\u0435\u0437 \u0437\u0430\u0437\u0435\u043c\u043b\u0435\u043d\u0438\u0435 \u0438 \u0433\u0430\u043b\u044c\u0432\u0430\u043d\u043e\u043c\u0435\u0442\u0440 G<sub>1<\/sub> \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 \u043d\u0430\u0436\u0430\u0442\u043e\u0433\u043e \u043a\u043b\u044e\u0447\u0430 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0430\u0435\u0442 \u043a \u0431\u0430\u0442\u0430\u0440\u0435\u0435 B<sub>1 <\/sub>\u044d\u043b\u0435\u043a\u0442\u0440\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u043f\u0440\u043e\u0432\u043e\u0434, \u0441\u043e\u0435\u0434\u0438\u043d\u0451\u043d\u043d\u044b\u0439 \u0441 \u043f\u0440\u0430\u0432\u043e\u0439 \u0447\u0430\u0441\u0442\u044c\u044e, \u0433\u0434\u0435 \u043a \u043d\u0435\u043c\u0443 \u0447\u0435\u0440\u0435\u0437 \u0433\u0430\u043b\u044c\u0432\u0430\u043d\u043e\u043c\u0435\u0442\u0440 G<sub>2<\/sub>, \u0438 \u043d\u0435 \u043d\u0430\u0436\u0430\u0442\u044b\u0439 \u043a\u043b\u044e\u0447 M<sub>2<\/sub> \u043f\u0440\u0438\u0441\u043e\u0435\u0434\u0438\u043d\u0451\u043d \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u043d\u044b\u0439 \u0430\u043f\u043f\u0430\u0440\u0430\u0442 R<sub>2<\/sub>.<\/p>\n<p>\u0412 \u0438\u0442\u043e\u0433\u0435, \u043f\u043e\u0434 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435\u043c \u0431\u0430\u0442\u0430\u0440\u0435\u0438 B<sub>1<\/sub> \u0432 \u0446\u0435\u043f\u0438 \u0432\u043e\u0437\u043d\u0438\u043a\u0430\u0435\u0442 \u0442\u043e\u043a, \u043f\u0440\u043e\u0445\u043e\u0434\u044f\u0449\u0438\u0439 \u0447\u0435\u0440\u0435\u0437 \u0437\u0435\u043c\u043b\u044e, \u043e\u0431\u0430 \u0433\u0430\u043b\u044c\u0432\u0430\u043d\u043e\u043c\u0435\u0442\u0440\u0430, \u043e\u0431\u0430 \u043a\u043b\u044e\u0447\u0430, \u043f\u0440\u043e\u0432\u043e\u0434 \u0438 \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u043d\u044b\u0439 \u0430\u043f\u043f\u0430\u0440\u0430\u0442 R<sub>2<\/sub>. \u041f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442 \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0430 \u0441\u0438\u0433\u043d\u0430\u043b\u0430 \u043e\u0442 \u043a\u043b\u044e\u0447\u0430 M<sub>1<\/sub> \u043a \u0430\u043f\u043f\u0430\u0440\u0430\u0442\u0443 R<sub>2<\/sub>.<\/p>\n<p>\u0427\u0442\u043e\u0431\u044b \u043f\u0435\u0440\u0435\u0434\u0430\u0442\u044c \u0441\u0438\u0433\u043d\u0430\u043b \u0432 \u043e\u0431\u0440\u0430\u0442\u043d\u0443\u044e \u0441\u0442\u043e\u0440\u043e\u043d\u0443, \u0441\u043f\u0440\u0430\u0432\u0430 \u043d\u0430\u043b\u0435\u0432\u043e, \u043d\u0443\u0436\u043d\u043e \u043e\u0442\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u043a\u043b\u044e\u0447 M<sub>1<\/sub> \u0438 \u043d\u0430\u0436\u0430\u0442\u044c M<sub>2<\/sub>.<\/p>\n<p>\u0412\u044b\u0433\u043b\u044f\u0434\u0435\u043b\u043e \u044d\u0442\u043e \u0432\u0441\u0451 \u043f\u0440\u0438\u043c\u0435\u0440\u043d\u043e \u043a\u0430\u043a \u043d\u0430 \u0440\u0438\u0441. 9. \u041f\u043e\u0434 \u0441\u0442\u043e\u043b\u043e\u043c \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440\u0430 \u0432 \u043b\u0435\u0432\u043e\u0439 \u043f\u043e\u043b\u043e\u0432\u0438\u043d\u0435 \u0440\u0438\u0441\u0443\u043d\u043a\u0430 \u043c\u043e\u0436\u043d\u043e \u0437\u0430\u043c\u0435\u0442\u0438\u0442\u044c \u043e\u0442\u043a\u0440\u044b\u0442\u044b\u0439 \u044f\u0449\u0438\u043a \u0441 \u044d\u043b\u0435\u043a\u0442\u0440\u0438\u0447\u0435\u0441\u043a\u0438\u043c\u0438 \u0431\u0430\u0442\u0430\u0440\u0435\u044f\u043c\u0438.<\/p>\n<figure class=\"full-width\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/4bf\/bea\/635\/4bfbea635b7a297e552bad85757fb1df.jpg\" alt=\"\u0420\u0438\u0441 9. \u041e\u043f\u0435\u0440\u0430\u0442\u043e\u0440\u044b-\u0442\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u0438\u0441\u0442\u044b \u043d\u0430 \u043f\u043e\u0433\u0440\u0430\u043d\u0438\u0447\u043d\u043e\u043c \u043f\u0443\u043d\u043a\u0442\u0435 \u0441\u0432\u044f\u0437\u0438 \u0432 \u0421\u0442\u0440\u0430\u0441\u0431\u0443\u0440\u0433\u0435 \u0432 1850 \u0433\u043e\u0434\u0443.\" title=\"\u0420\u0438\u0441 9. \u041e\u043f\u0435\u0440\u0430\u0442\u043e\u0440\u044b-\u0442\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u0438\u0441\u0442\u044b \u043d\u0430 \u043f\u043e\u0433\u0440\u0430\u043d\u0438\u0447\u043d\u043e\u043c \u043f\u0443\u043d\u043a\u0442\u0435 \u0441\u0432\u044f\u0437\u0438 \u0432 \u0421\u0442\u0440\u0430\u0441\u0431\u0443\u0440\u0433\u0435 \u0432 1850 \u0433\u043e\u0434\u0443.\" width=\"1400\" height=\"792\" sizes=\"auto, (max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/r\/w780\/getpro\/habr\/upload_files\/4bf\/bea\/635\/4bfbea635b7a297e552bad85757fb1df.jpg 780w,&#10;       https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/4bf\/bea\/635\/4bfbea635b7a297e552bad85757fb1df.jpg 781w\" loading=\"lazy\" decode=\"async\"\/><\/p>\n<div><figcaption><a href=\"https:\/\/search.itu.int\/history\/HistoryDigitalCollectionDocLibrary\/12.36.72.ru.600.pdf\" rel=\"noopener noreferrer nofollow\">\u0420\u0438\u0441 9. \u041e\u043f\u0435\u0440\u0430\u0442\u043e\u0440\u044b-\u0442\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u0438\u0441\u0442\u044b \u043d\u0430 \u043f\u043e\u0433\u0440\u0430\u043d\u0438\u0447\u043d\u043e\u043c \u043f\u0443\u043d\u043a\u0442\u0435 \u0441\u0432\u044f\u0437\u0438 \u0432 \u0421\u0442\u0440\u0430\u0441\u0431\u0443\u0440\u0433\u0435 \u0432 1850 \u0433\u043e\u0434\u0443.<\/a><\/figcaption><\/div>\n<\/figure>\n<p>\u0420\u0430\u0431\u043e\u0442\u0430\u044f \u043f\u043e \u043e\u0447\u0435\u0440\u0435\u0434\u0438, \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u0438\u0441\u0442\u044b \u0441 \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u0438\u0437 \u043a\u043b\u044e\u0447\u0435\u0439 \u043c\u043e\u0433\u043b\u0438 \u043f\u0435\u0440\u0435\u0434\u0430\u0432\u0430\u0442\u044c \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u044f \u043f\u0440\u043e\u0442\u0438\u0432\u043e\u043f\u043e\u043b\u043e\u0436\u043d\u043e\u0439 \u0441\u0442\u043e\u0440\u043e\u043d\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f \u043a\u043e\u0434 \u041c\u043e\u0440\u0437\u0435.<\/p>\n<h2>\u0410\u0437\u0431\u0443\u043a\u0430 \u041c\u043e\u0440\u0437\u0435 (Morse Code)<\/h2>\n<p>\u0422\u0435 \u0441\u0430\u043c\u044b\u0435 \u0442\u043e\u0447\u043a\u0438 \u0438 \u0442\u0438\u0440\u0435 \u041c\u043e\u0440\u0437\u0435 \u043f\u0440\u0438\u0434\u0443\u043c\u0430\u043b \u043d\u0435 \u0435\u0434\u0438\u043d\u043e\u043b\u0438\u0447\u043d\u043e. \u0425\u043e\u0434\u044f\u0442 \u0441\u043b\u0443\u0445\u0438, \u0447\u0442\u043e \u0437\u043d\u0430\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0439, \u0430, \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e, \u0438 \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0439 \u0432\u043a\u043b\u0430\u0434 \u0432 \u044d\u0442\u043e \u0438\u0437\u043e\u0431\u0440\u0435\u0442\u0435\u043d\u0438\u0435 \u0432\u043d\u0451\u0441 \u0434\u0440\u0443\u0433\u043e\u0439 \u0430\u043c\u0435\u0440\u0438\u043a\u0430\u043d\u0441\u043a\u0438\u0439 \u0431\u0438\u0437\u043d\u0435\u0441\u043c\u0435\u043d \u0438 \u0438\u0437\u043e\u0431\u0440\u0435\u0442\u0430\u0442\u0435\u043b\u044c <a href=\"https:\/\/ru.wikipedia.org\/wiki\/%D0%92%D0%B5%D0%B9%D0%BB,_%D0%90%D0%BB%D1%8C%D1%84%D1%80%D0%B5%D0%B4\" rel=\"noopener noreferrer nofollow\">\u0410\u043b\u044c\u0444\u0440\u0435\u0434 \u0412\u0435\u0439\u043b (Alfred Lewis Vail, 1807-1859)<\/a>.<\/p>\n<figure class=\"\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/47f\/bde\/40b\/47fbde40b72a7fd00738e7a1b9500703.jpg\" alt=\"\u0420\u0438\u0441 9. \u0410\u043b\u044c\u0444\u0440\u0435\u0434 \u0412\u0435\u0439\u043b\" title=\"\u0420\u0438\u0441 9. \u0410\u043b\u044c\u0444\u0440\u0435\u0434 \u0412\u0435\u0439\u043b\" width=\"300\" height=\"424\" sizes=\"auto, (max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/r\/w780\/getpro\/habr\/upload_files\/47f\/bde\/40b\/47fbde40b72a7fd00738e7a1b9500703.jpg 780w,&#10;       https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/47f\/bde\/40b\/47fbde40b72a7fd00738e7a1b9500703.jpg 781w\" loading=\"lazy\" decode=\"async\"\/><\/p>\n<div><figcaption><a href=\"https:\/\/ru.wikipedia.org\/wiki\/%D0%92%D0%B5%D0%B9%D0%BB,_%D0%90%D0%BB%D1%8C%D1%84%D1%80%D0%B5%D0%B4\" rel=\"noopener noreferrer nofollow\">\u0420\u0438\u0441 10. \u0410\u043b\u044c\u0444\u0440\u0435\u0434 \u0412\u0435\u0439\u043b<\/a><\/figcaption><\/div>\n<\/figure>\n<p>\u0412\u043e\u0442 \u0447\u0442\u043e \u043e\u0431 \u0430\u0437\u0431\u0443\u043a\u0435 \u041c\u043e\u0440\u0437\u0435 (Morse Code) \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043e \u0432 <a href=\"https:\/\/www.britannica.com\/\" rel=\"noopener noreferrer nofollow\">Britannica<\/a>:<\/p>\n<blockquote>\n<p>\u0410\u0437\u0431\u0443\u043a\u0430 \u041c\u043e\u0440\u0437\u0435 \u2014 \u043e\u0434\u043d\u0430 \u0438\u0437 \u0434\u0432\u0443\u0445 \u0441\u0438\u0441\u0442\u0435\u043c \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0431\u0443\u043a\u0432 \u0430\u043b\u0444\u0430\u0432\u0438\u0442\u0430, \u0446\u0438\u0444\u0440 \u0438 \u0437\u043d\u0430\u043a\u043e\u0432 \u043f\u0440\u0435\u043f\u0438\u043d\u0430\u043d\u0438\u044f \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0442\u043e\u0447\u0435\u043a, \u0442\u0438\u0440\u0435 \u0438 \u043f\u0440\u043e\u0431\u0435\u043b\u043e\u0432. \u041a\u043e\u0434\u044b \u043f\u0435\u0440\u0435\u0434\u0430\u044e\u0442\u0441\u044f \u0432 \u0432\u0438\u0434\u0435 \u044d\u043b\u0435\u043a\u0442\u0440\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u0438\u043c\u043f\u0443\u043b\u044c\u0441\u043e\u0432 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u043e\u0439 \u0434\u043b\u0438\u043d\u044b \u0438\u043b\u0438 \u0430\u043d\u0430\u043b\u043e\u0433\u0438\u0447\u043d\u044b\u0445 \u043c\u0435\u0445\u0430\u043d\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u0438\u043b\u0438 \u0432\u0438\u0437\u0443\u0430\u043b\u044c\u043d\u044b\u0445 \u0441\u0438\u0433\u043d\u0430\u043b\u043e\u0432, \u0442\u0430\u043a\u0438\u0445 \u043a\u0430\u043a \u043c\u0438\u0433\u0430\u044e\u0449\u0438\u0435 \u043e\u0433\u043d\u0438.<\/p>\n<p>\u041f\u0435\u0440\u0432\u0430\u044f \u0441\u0438\u0441\u0442\u0435\u043c\u0430 \u0431\u044b\u043b\u0430 \u0438\u0437\u043e\u0431\u0440\u0435\u0442\u0435\u043d\u0430 \u0432 \u0421\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u043d\u044b\u0445 \u0428\u0442\u0430\u0442\u0430\u0445 \u0430\u043c\u0435\u0440\u0438\u043a\u0430\u043d\u0441\u043a\u0438\u043c \u0445\u0443\u0434\u043e\u0436\u043d\u0438\u043a\u043e\u043c \u0438 \u0438\u0437\u043e\u0431\u0440\u0435\u0442\u0430\u0442\u0435\u043b\u0435\u043c \u0421\u044d\u043c\u044e\u044d\u043b\u0435\u043c \u0424. \u0411. \u041c\u043e\u0440\u0437\u0435 \u0432 1830-\u0445 \u0433\u043e\u0434\u0430\u0445 \u0434\u043b\u044f \u044d\u043b\u0435\u043a\u0442\u0440\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u0438\u0438. \u042d\u0442\u0430 \u0432\u0435\u0440\u0441\u0438\u044f \u0431\u044b\u043b\u0430 \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0443\u0441\u043e\u0432\u0435\u0440\u0448\u0435\u043d\u0441\u0442\u0432\u043e\u0432\u0430\u043d\u0430 \u0430\u043c\u0435\u0440\u0438\u043a\u0430\u043d\u0441\u043a\u0438\u043c \u0443\u0447\u0435\u043d\u044b\u043c \u0438 \u0431\u0438\u0437\u043d\u0435\u0441\u043c\u0435\u043d\u043e\u043c \u0410\u043b\u044c\u0444\u0440\u0435\u0434\u043e\u043c \u041b\u044c\u044e\u0438\u0441\u043e\u043c \u0412\u0435\u0439\u043b\u043e\u043c, \u043f\u043e\u043c\u043e\u0449\u043d\u0438\u043a\u043e\u043c \u0438 \u043f\u0430\u0440\u0442\u043d\u0435\u0440\u043e\u043c \u041c\u043e\u0440\u0437\u0435.<\/p>\n<p>\u0412\u0441\u043a\u043e\u0440\u0435 \u043f\u043e\u0441\u043b\u0435 \u0435\u0451 \u043f\u043e\u044f\u0432\u043b\u0435\u043d\u0438\u044f \u0432 \u0415\u0432\u0440\u043e\u043f\u0435 \u0441\u0442\u0430\u043b\u043e \u043e\u0447\u0435\u0432\u0438\u0434\u043d\u043e, \u0447\u0442\u043e \u0438\u0441\u0445\u043e\u0434\u043d\u0430\u044f \u0430\u0437\u0431\u0443\u043a\u0430 \u041c\u043e\u0440\u0437\u0435 \u043d\u0435 \u043f\u043e\u0434\u0445\u043e\u0434\u0438\u0442 \u0434\u043b\u044f \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0438 \u0431\u043e\u043b\u044c\u0448\u0435\u0439 \u0447\u0430\u0441\u0442\u0438 \u043d\u0435\u0430\u043d\u0433\u043b\u0438\u0439\u0441\u043a\u043e\u0433\u043e \u0442\u0435\u043a\u0441\u0442\u0430, \u043f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u0432 \u043d\u0435\u0439 \u043e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0443\u044e\u0442 \u043a\u043e\u0434\u044b \u0434\u043b\u044f \u0431\u0443\u043a\u0432 \u0441 \u0434\u0438\u0430\u043a\u0440\u0438\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u043c\u0438 \u0437\u043d\u0430\u043a\u0430\u043c\u0438. \u0427\u0442\u043e\u0431\u044b \u0438\u0441\u043f\u0440\u0430\u0432\u0438\u0442\u044c \u044d\u0442\u043e\u0442 \u043d\u0435\u0434\u043e\u0441\u0442\u0430\u0442\u043e\u043a, \u043d\u0430 \u043a\u043e\u043d\u0444\u0435\u0440\u0435\u043d\u0446\u0438\u0438 \u0435\u0432\u0440\u043e\u043f\u0435\u0439\u0441\u043a\u0438\u0445 \u0441\u0442\u0440\u0430\u043d \u0432 1851 \u0433\u043e\u0434\u0443 \u0431\u044b\u043b \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0430\u043d \u0432\u0430\u0440\u0438\u0430\u043d\u0442, \u043d\u0430\u0437\u0432\u0430\u043d\u043d\u044b\u0439 \u041c\u0435\u0436\u0434\u0443\u043d\u0430\u0440\u043e\u0434\u043d\u043e\u0439 \u0430\u0437\u0431\u0443\u043a\u043e\u0439 \u041c\u043e\u0440\u0437\u0435. \u042d\u0442\u043e\u0442 \u043d\u043e\u0432\u044b\u0439 \u043a\u043e\u0434 \u0442\u0430\u043a\u0436\u0435 \u043d\u0430\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u041a\u043e\u043d\u0442\u0438\u043d\u0435\u043d\u0442\u0430\u043b\u044c\u043d\u043e\u0439 \u0430\u0437\u0431\u0443\u043a\u043e\u0439 \u041c\u043e\u0440\u0437\u0435.<\/p>\n<p><a href=\"https:\/\/www.britannica.com\/topic\/Morse-Code\" rel=\"noopener noreferrer nofollow\"><em>Morse code, Britannica<\/em><\/a><\/p>\n<\/blockquote>\n<p>\u041a\u043e\u0434 \u041c\u043e\u0440\u0437\u0435 \u043f\u0435\u0440\u0435\u0434\u0430\u0451\u0442\u0441\u044f \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u043c\u0438 \u0441\u0438\u0433\u043d\u0430\u043b\u0430\u043c\u0438:<\/p>\n<ul>\n<li>\n<p><strong>\u0422\u043e\u0447\u043a\u0430<\/strong>. \u0414\u043b\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0438 \u0441\u0438\u0433\u043d\u0430\u043b\u0430 &#171;\u0442\u043e\u0447\u043a\u0430&#187; \u043f\u0440\u0438\u043d\u0438\u043c\u0430\u0435\u0442\u0441\u044f \u0437\u0430 1.<\/p>\n<\/li>\n<li>\n<p><strong>\u0422\u0438\u0440\u0435<\/strong>. \u0414\u043b\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0438 \u0441\u0438\u0433\u043d\u0430\u043b\u0430 &#171;\u0442\u0438\u0440\u0435&#187; \u0440\u0430\u0432\u043d\u0430 3.<\/p>\n<\/li>\n<li>\n<p>\u0422\u0438\u0440\u0435 \u0438 \u0442\u043e\u0447\u043a\u0438 \u0432\u043d\u0443\u0442\u0440\u0438 \u0432\u043d\u0443\u0442\u0440\u0438 \u043e\u0434\u043d\u043e\u0433\u043e \u0437\u043d\u0430\u043a\u0430 \u0440\u0430\u0437\u0434\u0435\u043b\u0435\u043d\u044b <strong>\u043a\u043e\u0440\u043e\u0442\u043a\u0438\u043c \u043f\u0440\u043e\u043c\u0435\u0436\u0443\u0442\u043a\u043e\u043c \u0442\u0438\u0448\u0438\u043d\u044b<\/strong>, \u0434\u043b\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c\u044e 1.<\/p>\n<\/li>\n<li>\n<p>\u0417\u043d\u0430\u043a\u0438 \u043e\u0442\u0434\u0435\u043b\u044f\u044e\u0442\u0441\u044f \u0434\u0440\u0443\u0433 \u043e\u0442 \u0434\u0440\u0443\u0433\u0430 <strong>\u0441\u0440\u0435\u0434\u043d\u0438\u043c \u043f\u0440\u043e\u043c\u0435\u0436\u0443\u0442\u043a\u043e\u043c \u0442\u0438\u0448\u0438\u043d\u044b<\/strong> \u0434\u043b\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c\u044e 3.<\/p>\n<\/li>\n<li>\n<p>\u041e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u0435 \u0441\u043b\u043e\u0432\u0430 \u043f\u0435\u0440\u0435\u0434\u0430\u044e\u0442\u0441\u044f \u0441 <strong>\u0434\u043e\u043b\u0433\u0438\u043c \u043f\u0440\u043e\u043c\u0435\u0436\u0443\u0442\u043a\u043e\u043c \u0442\u0438\u0448\u0438\u043d\u044b<\/strong>, \u0440\u0430\u0432\u043d\u044b\u043c 7. <\/p>\n<\/li>\n<\/ul>\n<figure class=\"\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/016\/162\/9cb\/0161629cbe562aa17651f1b765d716a5.png\" alt=\"\u0420\u0438\u0441 11. \u0410\u0437\u0431\u0443\u043a\u0430 \u041c\u043e\u0440\u0437\u0435 - \u043c\u0435\u0436\u0434\u0443\u043d\u0430\u0440\u043e\u0434\u043d\u044b\u0439 \u043a\u043e\u0434.\" title=\"\u0420\u0438\u0441 11. \u0410\u0437\u0431\u0443\u043a\u0430 \u041c\u043e\u0440\u0437\u0435 - \u043c\u0435\u0436\u0434\u0443\u043d\u0430\u0440\u043e\u0434\u043d\u044b\u0439 \u043a\u043e\u0434.\" width=\"330\" height=\"423\" sizes=\"auto, (max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/r\/w780\/getpro\/habr\/upload_files\/016\/162\/9cb\/0161629cbe562aa17651f1b765d716a5.png 780w,&#10;       https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/016\/162\/9cb\/0161629cbe562aa17651f1b765d716a5.png 781w\" loading=\"lazy\" decode=\"async\"\/><\/p>\n<div><figcaption><a href=\"https:\/\/ru.wikipedia.org\/wiki\/%D0%90%D0%B7%D0%B1%D1%83%D0%BA%D0%B0_%D0%9C%D0%BE%D1%80%D0%B7%D0%B5\" rel=\"noopener noreferrer nofollow\">\u0420\u0438\u0441 11. \u0410\u0437\u0431\u0443\u043a\u0430 \u041c\u043e\u0440\u0437\u0435 &#8212; \u043c\u0435\u0436\u0434\u0443\u043d\u0430\u0440\u043e\u0434\u043d\u044b\u0439 \u043a\u043e\u0434.<\/a><\/figcaption><\/div>\n<\/figure>\n<p>\u041a\u0430\u043a \u0432\u0438\u0434\u0438\u0442\u0435, \u043a\u043e\u0434 \u0432\u0435\u0441\u044c\u043c\u0430 \u043f\u0440\u043e\u0441\u0442. \u0421\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0442 \u043b\u043e\u043a\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u043d\u044b\u0435 \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u044b, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440 \u0440\u0443\u0441\u0441\u043a\u0438\u0439:<\/p>\n<figure class=\"full-width\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/1f1\/49d\/4ad\/1f149d4ad7bf3d734fcb5cde1b1b198e.png\" alt=\"\u0420\u0438\u0441 12. \u0420\u0443\u0441\u0441\u043a\u0430\u044f \u043a\u043e\u0434\u0438\u0440\u043e\u0432\u043a\u0430 + \u043b\u0430\u0442\u0438\u043d\u0438\u0446\u0430 \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u043d\u0430\u044f.\" title=\"\u0420\u0438\u0441 12. \u0420\u0443\u0441\u0441\u043a\u0430\u044f \u043a\u043e\u0434\u0438\u0440\u043e\u0432\u043a\u0430 + \u043b\u0430\u0442\u0438\u043d\u0438\u0446\u0430 \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u043d\u0430\u044f.\" width=\"1473\" height=\"678\" sizes=\"auto, (max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/r\/w780\/getpro\/habr\/upload_files\/1f1\/49d\/4ad\/1f149d4ad7bf3d734fcb5cde1b1b198e.png 780w,&#10;       https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/1f1\/49d\/4ad\/1f149d4ad7bf3d734fcb5cde1b1b198e.png 781w\" loading=\"lazy\" decode=\"async\"\/><\/p>\n<div><figcaption><a href=\"https:\/\/ru.wikipedia.org\/wiki\/%D0%90%D0%B7%D0%B1%D1%83%D0%BA%D0%B0_%D0%9C%D0%BE%D1%80%D0%B7%D0%B5\" rel=\"noopener noreferrer nofollow\">\u0420\u0438\u0441 12. \u0420\u0443\u0441\u0441\u043a\u0430\u044f \u043a\u043e\u0434\u0438\u0440\u043e\u0432\u043a\u0430 + \u043b\u0430\u0442\u0438\u043d\u0438\u0446\u0430 \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u043d\u0430\u044f.<\/a><\/figcaption><\/div>\n<\/figure>\n<p>\u0412 \u0440\u0443\u0441\u0441\u043a\u043e\u0439 \u043a\u043e\u0434\u0438\u0440\u043e\u0432\u043a\u0435 \u0434\u043b\u044f \u0437\u043d\u0430\u043a\u043e\u0432, \u0438\u043c\u0435\u044e\u0449\u0438\u0445 \u044d\u043a\u0432\u0438\u0432\u0430\u043b\u0435\u043d\u0442 \u0432 \u043b\u0430\u0442\u0438\u043d\u0438\u0446\u0435, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0442\u0441\u044f \u043a\u043e\u0434\u044b \u0438\u0437 \u043c\u0435\u0436\u0434\u0443\u043d\u0430\u0440\u043e\u0434\u043d\u043e\u0439 \u0442\u0430\u0431\u043b\u0438\u0446\u044b (\u0441\u043c. \u0440\u0438\u0441 11).<\/p>\n<h2>\u0427\u0430\u0448\u0435\u0447\u043a\u0443 Java?<\/h2>\n<figure class=\"\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/cb5\/083\/46e\/cb508346e86701f477bfbce4f4167a4f.jpg\" alt=\"\u0420\u0438\u0441 13. \u041c\u043e\u044f \u043b\u044e\u0431\u0438\u043c\u0430\u044f \u0432\u0435\u0440\u0441\u0438\u044f Java\" title=\"\u0420\u0438\u0441 13. \u041c\u043e\u044f \u043b\u044e\u0431\u0438\u043c\u0430\u044f \u0432\u0435\u0440\u0441\u0438\u044f Java\" width=\"300\" height=\"300\" sizes=\"auto, (max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/r\/w780\/getpro\/habr\/upload_files\/cb5\/083\/46e\/cb508346e86701f477bfbce4f4167a4f.jpg 780w,&#10;       https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/cb5\/083\/46e\/cb508346e86701f477bfbce4f4167a4f.jpg 781w\" loading=\"lazy\" decode=\"async\"\/><\/p>\n<div><figcaption><a href=\"https:\/\/javacoffeegarden.com\/javaairport\/\" rel=\"noopener noreferrer nofollow\">\u0420\u0438\u0441 13. \u041c\u043e\u044f \u043b\u044e\u0431\u0438\u043c\u0430\u044f \u0432\u0435\u0440\u0441\u0438\u044f Java<\/a><\/figcaption><\/div>\n<\/figure>\n<p>\u0418\u0437 19 \u0432\u0435\u043a\u0430 \u0432\u0435\u0440\u043d\u0451\u043c\u0441\u044f \u0432 \u043d\u0430\u0441\u0442\u043e\u044f\u0449\u0435\u0435 \u0438 \u0437\u0430\u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u0443\u0435\u043c \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u043d\u044b\u0439 <s>\u0430\u043f\u043f\u0430\u0440\u0430\u0442<\/s> \u043a\u043b\u044e\u0447 \u0438 \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u0438\u0441\u0442\u0430 \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f Java.<\/p>\n<details class=\"spoiler\">\n<summary>\u041a\u0430\u043a \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c Java?<\/summary>\n<div class=\"spoiler__content\">\n<p><strong>\u0415\u0441\u043b\u0438 \u0443 \u0432\u0430\u0441 Debian-based \u0434\u0438\u0441\u0442\u0440\u0438\u0431\u0443\u0442\u0438\u0432 \u041e\u0421 Linux:<\/strong><\/p>\n<pre><code class=\"bash\"># \u0443\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u043c Java Development Kit sudo apt install default-jdk # \u0443\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u043c \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442 Maven, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043d\u0443\u0436\u0435\u043d \u0434\u043b\u044f \u0441\u0431\u043e\u0440\u043a\u0438 \u043f\u0440\u043e\u0435\u043a\u0442\u0430 sudo apt install maven # \u0443\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u043c git \u0447\u0442\u043e\u0431\u044b \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044c \u0438\u0441\u0445\u043e\u0434\u043d\u0438\u043a\u0438 \u043f\u0440\u043e\u0435\u043a\u0442\u0430 \u0441 github.com sudo apt install git<\/code><\/pre>\n<p><strong>\u0415\u0441\u043b\u0438 \u0443 \u0432\u0430\u0441 RedHat-based \u0434\u0438\u0441\u0442\u0440\u0438\u0431\u0443\u0442\u0438\u0432:<\/strong><\/p>\n<pre><code class=\"bash\"># \u0443\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u043c Java Development Kit sudo dnf install java-21-openjdk # \u0423\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u043c \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442 Maven, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043d\u0443\u0436\u0435\u043d \u0434\u043b\u044f \u0441\u0431\u043e\u0440\u043a\u0438 \u043f\u0440\u043e\u0435\u043a\u0442\u0430 sudo dnf install maven # \u0443\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u043c git \u0447\u0442\u043e\u0431\u044b \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044c \u0438\u0441\u0445\u043e\u0434\u043d\u0438\u043a\u0438 \u043f\u0440\u043e\u0435\u043a\u0442\u0430 \u0441 github.com sudo dnf install git<\/code><\/pre>\n<p><strong>\u0415\u0441\u043b\u0438 \u0443 \u0432\u0430\u0441 Windows:<\/strong><\/p>\n<p>\u0414\u0438\u0441\u0442\u0440\u0438\u0431\u0443\u0442\u0438\u0432 <strong>OpenJDK<\/strong> \u043e\u0442 Microsoft \u043c\u043e\u0436\u043d\u043e \u0441\u043a\u0430\u0447\u0430\u0442\u044c \u043f\u043e \u0441\u0441\u044b\u043b\u043a\u0435 <a href=\"https:\/\/learn.microsoft.com\/ru-ru\/java\/openjdk\/download\" rel=\"noopener noreferrer nofollow\">https:\/\/learn.microsoft.com\/ru-ru\/java\/openjdk\/download<\/a>. \u042f \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u043b <a href=\"https:\/\/aka.ms\/download-jdk\/microsoft-jdk-21.0.7-windows-x64.msi\" rel=\"noopener noreferrer nofollow\">https:\/\/aka.ms\/download-jdk\/microsoft-jdk-21.0.7-windows-x64.msi<\/a>. \u0412\u0441\u0435 \u0448\u0430\u0433\u0438 \u0438\u043d\u0441\u0442\u0430\u043b\u043b\u044f\u0446\u0438\u0438 \u043e\u0441\u0442\u0430\u0432\u0438\u043b \u0441 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430\u043c\u0438 \u043f\u043e-\u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e.<\/p>\n<p><strong>Git<\/strong> \u0441\u043a\u0430\u0447\u0438\u0432\u0430\u0435\u043c \u043f\u043e \u044d\u0442\u043e\u0439 \u0441\u0441\u044b\u043b\u043a\u0435 <a href=\"https:\/\/git-scm.com\/downloads\/win\" rel=\"noopener noreferrer nofollow\">https:\/\/git-scm.com\/downloads\/win<\/a> , \u043c\u043d\u0435 \u043f\u043e\u0434\u043e\u0448\u043b\u0430 \u0432\u0435\u0440\u0441\u0438\u044f <a href=\"https:\/\/github.com\/git-for-windows\/git\/releases\/download\/v2.50.0.windows.2\/Git-2.50.0.2-64-bit.exe\" rel=\"noopener noreferrer nofollow\">https:\/\/github.com\/git-for-windows\/git\/releases\/download\/v2.50.0.windows.2\/Git-2.50.0.2-64-bit.exe<\/a>. \u0412\u0441\u0435 \u0448\u0430\u0433\u0438 \u0438\u043d\u0441\u0442\u0430\u043b\u043b\u044f\u0446\u0438\u0438 \u043e\u0441\u0442\u0430\u0432\u0438\u043b \u0441 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430\u043c\u0438 \u043f\u043e-\u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e.<\/p>\n<p>\u041f\u0435\u0440\u0435\u0437\u0430\u0433\u0440\u0443\u0436\u0430\u0435\u043c Windows \u0438 \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u0435\u043c, \u0447\u0442\u043e java \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u043b\u0430\u0441\u044c \u043a\u043e\u043c\u0430\u043d\u0434\u043e\u0439<\/p>\n<p><code>java -version<\/code><\/p>\n<pre><code>C:\\Users\\myname&gt;java -version openjdk version \"21.0.7\" 2025-04-15 LTS OpenJDK Runtime Environment Microsoft-11369940 (build 21.0.7+6-LTS) OpenJDK 64-Bit Server VM Microsoft-11369940 (build 21.0.7+6-LTS, mixed mode, sharing)  C:\\Users\\myname&gt;<\/code><\/pre>\n<figure class=\"full-width\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/3b5\/f57\/62c\/3b5f5762c1ddc9a86f808108d04fb8a0.jpg\" alt=\"\u0420\u0438\u0441 14. OpenJDK \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\" title=\"\u0420\u0438\u0441 14. OpenJDK \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\" width=\"1278\" height=\"353\" sizes=\"auto, (max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/r\/w780\/getpro\/habr\/upload_files\/3b5\/f57\/62c\/3b5f5762c1ddc9a86f808108d04fb8a0.jpg 780w,&#10;       https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/3b5\/f57\/62c\/3b5f5762c1ddc9a86f808108d04fb8a0.jpg 781w\" loading=\"lazy\" decode=\"async\"\/><\/p>\n<div><figcaption>\u0420\u0438\u0441 14. OpenJDK \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d<\/figcaption><\/div>\n<\/figure>\n<p>\u0422\u0435\u043f\u0435\u0440\u044c \u043d\u0430\u043c \u043d\u0443\u0436\u0435\u043d <strong>maven<\/strong>. \u0414\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u0441\u043a\u0430\u0447\u0438\u0432\u0430\u0435\u043c .ZIP \u0430\u0440\u0445\u0438\u0432 \u043e\u0442\u0441\u044e\u0434\u0430 <a href=\"https:\/\/maven.apache.org\/download.cgi\" rel=\"noopener noreferrer nofollow\">https:\/\/maven.apache.org\/download.cgi<\/a>, \u044f \u0432\u0437\u044f\u043b \u0432\u043e\u0442 \u044d\u0442\u043e\u0442 <a href=\"https:\/\/dlcdn.apache.org\/maven\/maven-3\/3.9.10\/binaries\/apache-maven-3.9.10-bin.zip\" rel=\"noopener noreferrer nofollow\">https:\/\/dlcdn.apache.org\/maven\/maven-3\/3.9.10\/binaries\/apache-maven-3.9.10-bin.zip<\/a>.<\/p>\n<p>\u0420\u0430\u0441\u043f\u0430\u043a\u043e\u0432\u044b\u0432\u0430\u0435\u043c, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0432 \u0441\u0432\u043e\u044e \u0434\u043e\u043c\u0430\u0448\u043d\u044e\u044e \u0434\u0438\u0440\u0435\u043a\u0442\u043e\u0440\u0438\u044e. \u0423 \u043c\u0435\u043d\u044f \u043f\u043e\u043b\u0443\u0447\u0438\u043b\u0441\u044f \u0442\u0430\u043a\u043e\u0439 \u043f\u0443\u0442\u044c \u043a \u0440\u0430\u0441\u043f\u0430\u043a\u043e\u0432\u0430\u043d\u043d\u044b\u043c \u0444\u0430\u0439\u043b\u0430\u043c:<\/p>\n<p><code>C:\\Users\\alexa\\apache-maven-3.9.10<\/code><\/p>\n<p>\u0414\u043e\u0431\u0430\u0432\u043b\u044f\u0435\u043c \u043f\u0443\u0442\u044c \u043a \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u043c\u044b\u043c \u0444\u0430\u0439\u043b\u0430\u043c maven \u0432 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u0443\u044e PATH \u0441\u0440\u0435\u0434\u044b \u043e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u044f Windows. \u0414\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u043d\u0430\u0436\u0438\u043c\u0430\u0435\u043c \u0432 UI Windows \u043a\u043d\u043e\u043f\u043a\u0443 \u0433\u043b\u0430\u0432\u043d\u043e\u0433\u043e \u043c\u0435\u043d\u044e, \u0437\u0430\u0442\u0435\u043c \u043f\u0438\u0448\u0435\u043c <strong>environment<\/strong> \u0432 \u0441\u0442\u0440\u043e\u043a\u0435 \u043f\u043e\u0438\u0441\u043a\u0430 \u043f\u043e \u0432\u0441\u0435\u043c \u0440\u0430\u0437\u0434\u0435\u043b\u0430\u043c (All). \u0412 \u0440\u0443\u0441\u0441\u043a\u043e\u044f\u0437\u044b\u0447\u043d\u043e\u0439 \u0432\u0435\u0440\u0441\u0438\u0438 Windows, \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e, \u044d\u0442\u043e \u043d\u0435 \u0441\u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442. \u0422\u043e\u0433\u0434\u0430 \u043f\u043e\u043f\u0440\u043e\u0431\u0443\u0439\u0442\u0435 \u043d\u0430\u043f\u0438\u0441\u0430\u0442\u044c <strong>\u043e\u043a\u0440\u0443\u0436\u0435\u043d\u0438 <\/strong>\u0438\u043b\u0438<strong> \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0435<\/strong>. \u041f\u043e\u043b\u0443\u0447\u0438\u0442\u0441\u044f \u043a\u0430\u043a \u043d\u0430 \u0440\u0438\u0441. 15:<\/p>\n<figure class=\"full-width\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/51a\/ac1\/eb8\/51aac1eb88fd6a99258988446211e612.jpg\" alt=\"\u0420\u0438\u0441 15. \u041a\u0430\u043a \u043d\u0430\u0439\u0442\u0438 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445 \u043e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u044f \u0434\u043b\u044f \u0441\u0432\u043e\u0435\u0433\u043e \u0430\u043a\u043a\u0430\u0443\u043d\u0442\u0430\" title=\"\u0420\u0438\u0441 15. \u041a\u0430\u043a \u043d\u0430\u0439\u0442\u0438 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445 \u043e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u044f \u0434\u043b\u044f \u0441\u0432\u043e\u0435\u0433\u043e \u0430\u043a\u043a\u0430\u0443\u043d\u0442\u0430\" width=\"783\" height=\"795\" sizes=\"auto, (max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/r\/w780\/getpro\/habr\/upload_files\/51a\/ac1\/eb8\/51aac1eb88fd6a99258988446211e612.jpg 780w,&#10;       https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/51a\/ac1\/eb8\/51aac1eb88fd6a99258988446211e612.jpg 781w\" loading=\"lazy\" decode=\"async\"\/><\/p>\n<div><figcaption>\u0420\u0438\u0441 15. \u041a\u0430\u043a \u043d\u0430\u0439\u0442\u0438 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445 \u043e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u044f \u0434\u043b\u044f \u0441\u0432\u043e\u0435\u0433\u043e \u0430\u043a\u043a\u0430\u0443\u043d\u0442\u0430<\/figcaption><\/div>\n<\/figure>\n<p>\u041a\u043b\u0438\u043a\u0430\u0435\u043c \u043c\u044b\u0448\u043a\u043e\u0439 \u043d\u0430 <strong>Edit environment variables for your account<\/strong>.<\/p>\n<p>\u041f\u043e\u044f\u0432\u0438\u0442\u0441\u044f \u043e\u043a\u043e\u0448\u043a\u043e \u043a\u0430\u043a \u043d\u0430 \u0440\u0438\u0441. 16:<\/p>\n<figure class=\"full-width\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/dd9\/8d9\/a26\/dd98d9a26b849895ada1d5a982cd168d.jpg\" alt=\"\u0420\u0438\u0441 16. \u041f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0435 \u043e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u044f \u0432\u0430\u0448\u0435\u0433\u043e \u0430\u043a\u043a\u0430\u0443\u043d\u0442\u0430.\" title=\"\u0420\u0438\u0441 16. \u041f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0435 \u043e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u044f \u0432\u0430\u0448\u0435\u0433\u043e \u0430\u043a\u043a\u0430\u0443\u043d\u0442\u0430.\" width=\"617\" height=\"584\" sizes=\"auto, (max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/r\/w780\/getpro\/habr\/upload_files\/dd9\/8d9\/a26\/dd98d9a26b849895ada1d5a982cd168d.jpg 780w,&#10;       https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/dd9\/8d9\/a26\/dd98d9a26b849895ada1d5a982cd168d.jpg 781w\" loading=\"lazy\" decode=\"async\"\/><\/p>\n<div><figcaption>\u0420\u0438\u0441 16. \u041f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0435 \u043e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u044f \u0432\u0430\u0448\u0435\u0433\u043e \u0430\u043a\u043a\u0430\u0443\u043d\u0442\u0430.<\/figcaption><\/div>\n<\/figure>\n<p>\u0412\u044b\u0431\u0438\u0440\u0430\u0435\u043c \u0432 \u0432\u0435\u0440\u0445\u043d\u0435\u0439 \u0447\u0430\u0441\u0442\u0438 \u043e\u043a\u043e\u0448\u043a\u0430 (\u0440\u0438\u0441. 16) \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u0443\u044e <strong>Path<\/strong> \u0438 \u043d\u0430\u0436\u0438\u043c\u0430\u0435\u043c \u043a\u043d\u043e\u043f\u043a\u0443 <strong>Edit&#8230;<\/strong><\/p>\n<figure class=\"full-width\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/df9\/b24\/c91\/df9b24c9192ec13451787e0be84f090a.jpg\" alt=\"\u0420\u0438\u0441 17. \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043f\u0443\u0442\u0438 \u043a \u0434\u0438\u0440\u0435\u043a\u0442\u043e\u0440\u0438\u0438 bin \u0432\u043d\u0443\u0442\u0440\u0438 \u0440\u0430\u0441\u043f\u0430\u043a\u043e\u0432\u0430\u043d\u043d\u043e\u0439 \u043f\u0430\u043f\u043a\u0438 \u0441 maven\" title=\"\u0420\u0438\u0441 17. \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043f\u0443\u0442\u0438 \u043a \u0434\u0438\u0440\u0435\u043a\u0442\u043e\u0440\u0438\u0438 bin \u0432\u043d\u0443\u0442\u0440\u0438 \u0440\u0430\u0441\u043f\u0430\u043a\u043e\u0432\u0430\u043d\u043d\u043e\u0439 \u043f\u0430\u043f\u043a\u0438 \u0441 maven\" width=\"618\" height=\"585\" sizes=\"auto, (max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/r\/w780\/getpro\/habr\/upload_files\/df9\/b24\/c91\/df9b24c9192ec13451787e0be84f090a.jpg 780w,&#10;       https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/df9\/b24\/c91\/df9b24c9192ec13451787e0be84f090a.jpg 781w\" loading=\"lazy\" decode=\"async\"\/><\/p>\n<div><figcaption>\u0420\u0438\u0441 17. \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043f\u0443\u0442\u0438 \u043a \u0434\u0438\u0440\u0435\u043a\u0442\u043e\u0440\u0438\u0438 bin \u0432\u043d\u0443\u0442\u0440\u0438 \u0440\u0430\u0441\u043f\u0430\u043a\u043e\u0432\u0430\u043d\u043d\u043e\u0439 \u043f\u0430\u043f\u043a\u0438 \u0441 maven<\/figcaption><\/div>\n<\/figure>\n<p>\u0412 \u043f\u043e\u044f\u0432\u0438\u0432\u0448\u0435\u043c\u0441\u044f \u043e\u043a\u043d\u0435 \u043d\u0430\u0436\u0438\u043c\u0430\u0435\u043c <strong>New<\/strong> \u0438 \u043a\u043e\u043f\u0438\u0440\u0443\u0435\u043c \u043f\u0443\u0442\u044c, \u0433\u0434\u0435 \u0443 \u0432\u0430\u0441 \u0440\u0430\u0441\u043f\u0430\u043a\u043e\u0432\u0430\u043d maven, \u0434\u043e\u0431\u0430\u0432\u0438\u0432 \u043a \u043d\u0435\u043c\u0443 <strong>bin<\/strong> \u043a\u0430\u043a \u043d\u0430 \u0440\u0438\u0441. 17.<\/p>\n<p>\u0414\u0430\u043b\u0435\u0435 \u0432\u0441\u0451 \u0441\u043e\u0445\u0440\u0430\u043d\u044f\u0435\u043c, \u043d\u0430\u0436\u0430\u0432 <strong>OK<\/strong> \u0438 \u0441\u043d\u043e\u0432\u0430 <strong>OK<\/strong>.<\/p>\n<p>\u041f\u0435\u0440\u0435\u0437\u0430\u0433\u0440\u0443\u0436\u0430\u0435\u043c Windows. \u0422\u0435\u043f\u0435\u0440\u044c \u0432\u0441\u0451 \u0433\u043e\u0442\u043e\u0432\u043e \u043a \u0441\u0431\u043e\u0440\u043a\u0435 \u043f\u0440\u043e\u0435\u043a\u0442\u0430 \u0438\u0437 \u0438\u0441\u0445\u043e\u0434\u043d\u0438\u043a\u043e\u0432.<\/p>\n<\/div>\n<\/details>\n<details class=\"spoiler\">\n<summary>\u041a\u0430\u043a \u0441\u043e\u0431\u0440\u0430\u0442\u044c \u0438 \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u043f\u0440\u043e\u0435\u043a\u0442 \u0441 \u043f\u0440\u0438\u043c\u0435\u0440\u043e\u043c \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0438\u0437 \u0441\u0442\u0430\u0442\u044c\u0438?<\/summary>\n<div class=\"spoiler__content\">\n<pre><code class=\"bash\"># \u043a\u043b\u043e\u043d\u0438\u0440\u0443\u0435\u043c \u0438\u0441\u0445\u043e\u0434\u043d\u0438\u043a\u0438 \u0438\u0437 GitHub git clone https:\/\/github.com\/galilov\/HabrMorse.git # \u0437\u0430\u0445\u043e\u0434\u0438\u043c \u0432 \u0434\u0438\u0440\u0435\u043a\u0442\u043e\u0440\u0438\u044e \u0441 \u0438\u0441\u0445\u043e\u0434\u043d\u0438\u043a\u0430\u043c\u0438 cd HabrMorse # \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 maven \u0441\u043e\u0431\u0438\u0440\u0430\u0435\u043c \u0441\u0440\u0430\u0437\u0443 \u0444\u0430\u0439\u043b JAR \u0441\u043e \u0432\u0441\u0435\u043c\u0438 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u044f\u043c\u0438 \u0432\u043d\u0443\u0442\u0440\u0438 mvn package # \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u043c \u0441 \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442\u043e\u043c Hello world java -jar target\/morse-1.1-SNAPSHOT-jar-with-dependencies.jar \"Hello world\"<\/code><\/pre>\n<p>\u042d\u0442\u0438 \u043a\u043e\u043c\u0430\u043d\u0434\u044b \u043e\u0434\u0438\u043d\u0430\u043a\u043e\u0432\u044b \u0434\u043b\u044f Linux \u0438 \u0434\u043b\u044f Windows.<\/p>\n<p>\u0412\u043e\u0442 \u044d\u0442\u043e\u0442 \u0441\u0430\u043c\u044b\u0439 <strong>morse-1.1-SNAPSHOT-jar-with-dependencies.jar<\/strong> \u0438 \u0435\u0441\u0442\u044c \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u043d\u0430 Java \u0432 \u043e\u0434\u043d\u043e\u043c \u0444\u0430\u0439\u043b\u0435-\u0430\u0440\u0445\u0438\u0432\u0435 (<strong>JA<\/strong>va a<strong>R<\/strong>chive).<\/p>\n<\/div>\n<\/details>\n<p>\u0418\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f \u043d\u0430 <strong>\u0432\u0445\u043e\u0434<\/strong> \u043a\u043e\u0434\u0438\u0440\u043e\u0432\u0449\u0438\u043a\u0430 \u041c\u043e\u0440\u0437\u0435 \u043f\u043e\u0441\u0442\u0443\u043f\u0430\u0435\u0442 \u0432 \u0432\u0438\u0434\u0435 \u0441\u0438\u043c\u0432\u043e\u043b\u043e\u0432. \u0423 \u043d\u0430\u0441 \u044d\u0442\u043e \u0431\u0443\u0434\u0435\u0442 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u043f\u043e\u0434\u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e ASCII \u0441\u0438\u043c\u0432\u043e\u043b\u043e\u0432, \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u0432\u044b \u0441 \u043b\u0451\u0433\u043a\u043e\u0441\u0442\u044c\u044e \u0441\u043c\u043e\u0436\u0435\u0442\u0435 \u0440\u0430\u0441\u0448\u0438\u0440\u0438\u0442\u044c \u043f\u0440\u0438 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0441\u0442\u0438.<\/p>\n<details class=\"spoiler\">\n<summary>\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c \u0432\u043e\u0442 \u0442\u0430\u043a\u043e\u0435 \u043f\u043e\u0434\u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e<\/summary>\n<div class=\"spoiler__content\">\n<p><code><strong>A<\/strong>.-<\/code><br \/><code><strong>B<\/strong>-...<\/code><br \/><code><strong>C<\/strong>-.-.<\/code><br \/><code><strong>D<\/strong>-..<\/code><br \/><code><strong>E<\/strong>.<\/code><br \/><code><strong>F<\/strong>..-.<\/code><br \/><code><strong>G<\/strong>--.<\/code><br \/><code><strong>H<\/strong>....<\/code><br \/><code><strong>I<\/strong>..<\/code><br \/><code><strong>J<\/strong>.---<\/code><br \/><code><strong>K<\/strong>-.-<\/code><br \/><code><strong>L<\/strong>.-..<\/code><br \/><code><strong>M<\/strong>--<\/code><br \/><code><strong>N<\/strong>-.<\/code><br \/><code><strong>O<\/strong>---<\/code><br \/><code><strong>P<\/strong>.--.<\/code><br \/><code><strong>Q<\/strong>--.-<\/code><br \/><code><strong>R<\/strong>.-.<\/code><br \/><code><strong>S<\/strong>...<\/code><br \/><code><strong>T<\/strong>-<\/code><br \/><code><strong>U<\/strong>..-<\/code><br \/><code><strong>V<\/strong>...-<\/code><br \/><code><strong>W<\/strong>.--<\/code><br \/><code><strong>X<\/strong>-..-<\/code><br \/><code><strong>Y<\/strong>-.--<\/code><br \/><code><strong>Z<\/strong>--..<\/code><br \/><code><strong>0<\/strong>-----<\/code><br \/><code><strong>1<\/strong>.----<\/code><br \/><code><strong>2<\/strong>..---<\/code><br \/><code><strong>3<\/strong>...--<\/code><br \/><code><strong>4<\/strong>....-<\/code><br \/><code><strong>5<\/strong>.....<\/code><br \/><code><strong>6<\/strong>-....<\/code><br \/><code><strong>7<\/strong>--...<\/code><br \/><code><strong>8<\/strong>---..<\/code><br \/><code><strong>9<\/strong>----.<\/code><br \/><code><strong>.<\/strong>.-.-.-<\/code><br \/><code><strong>,<\/strong>--..--<\/code><br \/><code><strong>?<\/strong>..--..<\/code><br \/><code><strong>'<\/strong>.----.<\/code><br \/><code><strong>;<\/strong>.-.-.-<\/code><br \/><code><strong>:<\/strong>---...<\/code><br \/><code><strong>-<\/strong>-....-<\/code><br \/><code><strong>~<\/strong>-.-.-<\/code><\/p>\n<\/div>\n<\/details>\n<p>\u041d\u0430 <strong>\u0432\u044b\u0445\u043e\u0434\u0435<\/strong> \u043a\u043e\u0434\u0438\u0440\u043e\u0432\u0449\u0438\u043a\u0430 \u0431\u0443\u0434\u0435\u0442 \u0442\u0435\u043a\u0441\u0442, \u0441\u043e\u0441\u0442\u043e\u044f\u0449\u0438\u0439 \u0438\u0437 \u0442\u043e\u0447\u0435\u043a <strong>.<\/strong> , \u0442\u0438\u0440\u0435 <code>-<\/code> , \u0440\u0430\u0437\u0434\u0435\u043b\u0438\u0442\u0435\u043b\u044f \u0437\u043d\u0430\u043a\u043e\u0432 \u0432 \u0432\u0438\u0434\u0435 <code>|<\/code> \u0438 \u043f\u0440\u043e\u0431\u0435\u043b\u043e\u0432 \u0432 \u0440\u043e\u043b\u0438 \u0440\u0430\u0437\u0434\u0435\u043b\u0438\u0442\u0435\u043b\u044f \u0441\u043b\u043e\u0432.<\/p>\n<div class=\"floating-image\">\n<figure class=\"float\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/e47\/5af\/b22\/e475afb22c9c7ee6fa3c222e1ea2bb16.gif\" width=\"256\" height=\"256\" sizes=\"auto, (max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/e47\/5af\/b22\/e475afb22c9c7ee6fa3c222e1ea2bb16.gif 780w,&#10;       https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/e47\/5af\/b22\/e475afb22c9c7ee6fa3c222e1ea2bb16.gif 781w\" loading=\"lazy\" decode=\"async\"\/><\/figure>\n<p><strong>\u0411\u0435\u0441\u043f\u043b\u0430\u0442\u043d\u0430\u044f \u043c\u0438\u0433\u0440\u0430\u0446\u0438\u044f \u0432 Selectel<\/strong><\/p>\n<p>\u041d\u0430\u0447\u0438\u0441\u043b\u0438\u043c \u0434\u043e\u00a01\u00a0000\u00a0000 \u0431\u043e\u043d\u0443\u0441\u043e\u0432 \u043d\u0430 \u0434\u0432\u0430 \u043c\u0435\u0441\u044f\u0446\u0430. \u0410\u00a0\u043d\u0430\u0448\u0438 \u0438\u043d\u0436\u0435\u043d\u0435\u0440\u044b \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u044f\u0442 \u043f\u043b\u0430\u043d \u0438\u00a0\u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0430\u0442 \u043d\u0430\u00a0\u0432\u0441\u0435\u0445 \u044d\u0442\u0430\u043f\u0430\u0445 \u043c\u0438\u0433\u0440\u0430\u0446\u0438\u0438. <\/p>\n<p><a href=\"https:\/\/selectel.ru\/services\/migration-to-selectel\/?utm_source=habr.com&amp;utm_medium=referral&amp;utm_campaign=dedicated_article_morze_140725_075_02_ord\" rel=\"noopener noreferrer nofollow\"><code><strong>\u041f\u043e\u0434\u0440\u043e\u0431\u043d\u0435\u0435 \u2192<\/strong><\/code><\/a><\/p>\n<\/div>\n<h3>\u0418 \u0442\u0443\u0442 \u043c\u043d\u0435 \u043d\u0430 \u0433\u043e\u043b\u043e\u0432\u0443 \u0443\u043f\u0430\u043b \u043c\u0435\u0448\u043e\u043a \u0441 Java Stream API<\/h3>\n<p>\u042d\u0442\u043e\u0442 Java Stream API \u043e\u0447\u0435\u043d\u044c \u0434\u0430\u0436\u0435 \u0445\u043e\u0440\u043e\u0448 \u0434\u043b\u044f \u043f\u043e\u0442\u043e\u043a\u043e\u0432\u043e\u0439 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0434\u0430\u043d\u043d\u044b\u0445, \u043d\u043e \u0438\u043d\u043e\u0433\u0434\u0430 \u043e\u043d \u0431\u044b\u0432\u0430\u0435\u0442 \u0432\u0435\u0441\u044c\u043c\u0430 \u043d\u0435\u0443\u0434\u043e\u0431\u043d\u044b\u043c. \u042f \u043f\u043e\u043a\u0430\u0436\u0443, \u0447\u0442\u043e \u0443 \u043c\u0435\u043d\u044f \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u0442\u0441\u044f \u0441 \u0435\u0433\u043e \u043e\u0431\u0436\u0430\u0440\u043a\u043e\u0439 \u0438 \u043f\u043e\u043c\u043e\u043b\u043e\u043c. \u041a\u043e\u0433\u0434\u0430 \u043c\u043d\u0435 \u0431\u0443\u0434\u0435\u0442 \u043a\u0430\u0437\u0430\u0442\u044c\u0441\u044f, \u0447\u0442\u043e Stream API \u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u0441\u044f \u043d\u0435\u0432\u043a\u0443\u0441\u043d\u044b\u043c, \u044f \u0432\u043e\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0441\u044c \u0430\u043b\u044c\u0442\u0435\u0440\u043d\u0430\u0442\u0438\u0432\u043d\u044b\u043c \u043f\u043e\u0434\u0445\u043e\u0434\u043e\u043c \u043d\u0430 \u043a\u043b\u0430\u0441\u0441\u0438\u0447\u0435\u0441\u043a\u043e\u0439 Java \u0431\u0435\u0437 \u0438\u0437\u044b\u0441\u043a\u043e\u0432.<\/p>\n<h4>\u0413\u043e\u0442\u043e\u0432\u0438\u043c \u0441\u043b\u043e\u0432\u0430\u0440\u044c \u0441 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0438\u044f\u043c\u0438 &#171;\u0431\u0443\u043a\u0432\u0430&#187; &#8212;&gt;  &#171;\u043a\u043e\u0434 \u041c\u043e\u0440\u0437\u0435&#187;<\/h4>\n<p>\u0418\u0441\u0445\u043e\u0434\u043d\u044b\u0439 \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b \u0434\u043b\u044f \u0441\u043b\u043e\u0432\u0430\u0440\u044f \u0440\u0430\u0441\u043f\u043e\u043b\u043e\u0436\u0435\u043d \u0432 \u0440\u0435\u0441\u0443\u0440\u0441\u0430\u0445 (resources) \u043f\u0440\u043e\u0435\u043a\u0442\u0430 \u0432 \u0444\u0430\u0439\u043b\u0435 <code>morsecodes<\/code> \u0441 \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u043c\u044b\u043c \u0432 \u0432\u0438\u0434\u0435 \u0441\u0442\u0440\u043e\u043a \u0444\u043e\u0440\u043c\u0430\u0442\u0430 <code>\u0411\u0443\u043a\u0432\u0430\u041a\u043e\u0434\u041c\u043e\u0440\u0437\u0435<\/code> \u0431\u0435\u0437 \u043a\u0430\u043a\u0438\u0445-\u043b\u0438\u0431\u043e \u0440\u0430\u0437\u0434\u0435\u043b\u0438\u0442\u0435\u043b\u0435\u0439, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440 <code>F..-.<\/code>.<\/p>\n<p>\u0412\u0435\u0441\u044c \u043a\u043e\u0434 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u0432\u0445\u043e\u0434\u043d\u043e\u0433\u043e \u0442\u0435\u043a\u0441\u0442\u0430 \u0432 \u0430\u0437\u0431\u0443\u043a\u0443 \u041c\u043e\u0440\u0437\u0435 \u043d\u0430\u0445\u043e\u0434\u0438\u0442\u0441\u044f \u0432 \u043e\u0434\u043d\u043e\u043c \u043a\u043b\u0430\u0441\u0441\u0435 <code>MorseProcessor<\/code>.<\/p>\n<p>\u0417\u0430 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0443 \u0438 \u043f\u0430\u0440\u0441\u0438\u043d\u0433 <code>morsecodes<\/code> \u043e\u0442\u0432\u0435\u0447\u0430\u0435\u0442 \u043c\u0435\u0442\u043e\u0434 <code>init()<\/code>:<\/p>\n<pre><code class=\"java\">\/**  * MorseProcessor class for processing text to morse code.  *\/ class MorseProcessor {     \/**      * The Morse codes map      *\/     private static final String MORSECODES = \"morsecodes\";     private Map&lt;Integer, String&gt; morseCodes;        \/**      * Initialize the morse codes map      *      * @throws IOException if an I\/O error occurs      *\/     void init() throws IOException {         \/\/ get the input stream from the resource MORSECODES         var inputStream = getClass().getClassLoader().getResourceAsStream(MORSECODES);         \/\/ check input stream is not null         if (inputStream == null) {             throw new NullPointerException(\"Resource \" + MORSECODES + \" not found\");         }         \/\/ read the lines from the input stream         try (var bufferedReader = new BufferedReader(new InputStreamReader(inputStream))) {             \/\/ create stream of lines             Stream&lt;String&gt; lines = bufferedReader.lines();             Map&lt;Integer, String&gt; map =                     lines.collect( \/\/ collect the lines into a map                             \/\/ typical pairs look like that:                             \/\/ A.-                             \/\/ B-...                             \/\/ C-.-.                             \/\/ ...                             \/\/ there is no space between the key and the value                             Collectors.toMap(                                     \/\/ key for the map                                     \/\/ convert the first character to uppercase and get the integer value                                     s -&gt; (int) Character.toUpperCase(s.charAt(0)),                                     \/\/ value for the map                                     \/\/ get the substring from the second character                                     s -&gt; s.substring(1)));             this.morseCodes = Collections.unmodifiableMap(map); \/\/ create an unmodifiable map         }     }    . . .<\/code><\/pre>\n<p>\u0420\u0430\u0431\u043e\u0442\u0430 \u043c\u0435\u0442\u043e\u0434\u0430 <code>init()<\/code> \u043d\u0430\u0447\u0438\u043d\u0430\u0435\u0442\u0441\u044f \u0441 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u044f \u0440\u0435\u0441\u0443\u0440\u0441\u0430 <code>MORSECODES<\/code> \u0432 \u0432\u0438\u0434\u0435 \u043f\u043e\u0442\u043e\u043a\u0430 \u0434\u0430\u043d\u043d\u044b\u0445 <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/17\/docs\/api\/java.base\/java\/io\/InputStream.html\" rel=\"noopener noreferrer nofollow\">InputStream<\/a>:<\/p>\n<pre><code class=\"java\">\/\/ get the input stream from the resource MORSECODES var inputStream = getClass().getClassLoader().getResourceAsStream(MORSECODES));<\/code><\/pre>\n<p>\u0412\u044b\u0437\u043e\u0432\u044b <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/17\/docs\/api\/java.base\/java\/lang\/Object.html#getClass()\" rel=\"noopener noreferrer nofollow\">getClass()<\/a>.<a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/17\/docs\/api\/java.base\/java\/lang\/Class.html#getClassLoader()\" rel=\"noopener noreferrer nofollow\">getClassLoader()<\/a>.<a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/17\/docs\/api\/java.base\/java\/lang\/Class.html#getResourceAsStream(java.lang.String)\" rel=\"noopener noreferrer nofollow\">getResourceAsStream(MORSECODES)<\/a> \u043e\u0437\u043d\u0430\u0447\u0430\u044e\u0442, \u0447\u0442\u043e \u043d\u0430\u043c \u043d\u0443\u0436\u0435\u043d &#171;\u043a\u043b\u0430\u0441\u0441\u0438\u0447\u0435\u0441\u043a\u0438\u0439&#187; \u043f\u043e\u0442\u043e\u043a \u0434\u0430\u043d\u043d\u044b\u0445, \u0441\u0432\u044f\u0437\u0430\u043d\u043d\u044b\u0439 \u0441 \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u043c. \u0417\u0430\u0433\u0440\u0443\u0437\u043a\u043e\u0439 \u0440\u0435\u0441\u0443\u0440\u0441\u0430 \u0437\u0430\u043d\u0438\u043c\u0430\u0435\u0442\u0441\u044f class loader. \u042d\u0442\u043e \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u043d\u0435\u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e \u043e\u0442 \u0442\u043e\u0433\u043e, \u0441\u043e\u0431\u0440\u0430\u043d \u043d\u0430\u0448 \u043f\u0440\u043e\u0435\u043a\u0442 \u0432 JAR-\u0430\u0440\u0445\u0438\u0432 \u0438\u043b\u0438 \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u0442\u0441\u044f \u0432 \u0432\u0438\u0434\u0435 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u0445 .class \u0444\u0430\u0439\u043b\u043e\u0432.<\/p>\n<p>\u041c\u0435\u0442\u043e\u0434 <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/17\/docs\/api\/java.base\/java\/lang\/Class.html#getResourceAsStream(java.lang.String)\" rel=\"noopener noreferrer nofollow\">getResourceAsStream(String)<\/a> \u043c\u043e\u0436\u0435\u0442 \u0432\u0435\u0440\u043d\u0443\u0442\u044c <code>null<\/code>, \u0435\u0441\u043b\u0438 \u0440\u0435\u0441\u0443\u0440\u0441 \u043d\u0435 \u043d\u0430\u0439\u0434\u0435\u043d \u0438\u043b\u0438 \u043d\u0435\u0434\u043e\u0441\u0442\u0443\u043f\u0435\u043d.<\/p>\n<p>\u041a\u043e\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u044f <code>try(. . .) {  }<\/code> \u043d\u0430\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f &#171;try-with-resources&#187;. \u041e\u043d\u0430 \u0433\u0430\u0440\u0430\u043d\u0442\u0438\u0440\u0443\u0435\u0442, \u0447\u0442\u043e \u0443 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u043d\u043e\u0433\u043e \u043f\u043e \u0441\u0441\u044b\u043b\u043a\u0435 <code>bufferedReader<\/code> \u044d\u043a\u0437\u0435\u043c\u043f\u043b\u044f\u0440\u0430 \u043a\u043b\u0430\u0441\u0441\u0430 <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/17\/docs\/api\/java.base\/java\/io\/BufferedReader.html\" rel=\"noopener noreferrer nofollow\">BufferedReader<\/a> \u043f\u0440\u0438 \u0432\u044b\u0445\u043e\u0434\u0435 \u0438\u0437 \u0431\u043b\u043e\u043a\u0430 \u043a\u043e\u0434\u0430 (\u0432 \u0444\u0438\u0433\u0443\u0440\u043d\u044b\u0445 \u0441\u043a\u043e\u0431\u043a\u0430\u0445) \u0431\u0443\u0434\u0435\u0442 \u0432\u044b\u0437\u0432\u0430\u043d \u043c\u0435\u0442\u043e\u0434 <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/17\/docs\/api\/java.base\/java\/io\/BufferedReader.html#close()\" rel=\"noopener noreferrer nofollow\">close()<\/a> \u0438 \u0441\u0432\u044f\u0437\u0430\u043d\u043d\u044b\u0435 \u0441 <code>bufferedReader<\/code> \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0435 \u0440\u0435\u0441\u0443\u0440\u0441\u044b, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440 \u0434\u0435\u0441\u043a\u0440\u0438\u043f\u0442\u043e\u0440 \u043e\u0442\u043a\u0440\u044b\u0442\u043e\u0433\u043e \u0444\u0430\u0439\u043b\u0430 \u0438\u043b\u0438 \u0431\u0443\u0444\u0435\u0440\u044b \u0432 \u043f\u0430\u043c\u044f\u0442\u0438, \u043c\u043e\u0433\u0443\u0442 \u0431\u044b\u0442\u044c \u0437\u0430\u043a\u0440\u044b\u0442\u044b \u0438\/\u0438\u043b\u0438 \u043e\u0441\u0432\u043e\u0431\u043e\u0436\u0434\u0435\u043d\u044b \u0432 \u044d\u0442\u043e\u043c \u0441\u0430\u043c\u043e\u043c <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/17\/docs\/api\/java.base\/java\/io\/BufferedReader.html#close()\" rel=\"noopener noreferrer nofollow\">close()<\/a>.<\/p>\n<details class=\"spoiler\">\n<summary>\u0427\u0442\u043e\u0431\u044b \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c try-with-resources \u0440\u0430\u0431\u043e\u0442\u0430\u043b&#8230;<\/summary>\n<div class=\"spoiler__content\">\n<p>&#8230;\u043a\u043b\u0430\u0441\u0441 <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/17\/docs\/api\/java.base\/java\/io\/BufferedReader.html\" rel=\"noopener noreferrer nofollow\">BufferedReader<\/a> \u0434\u043e\u043b\u0436\u0435\u043d \u043f\u0440\u044f\u043c\u043e \u043b\u0438\u0431\u043e \u043a\u043e\u0441\u0432\u0435\u043d\u043d\u043e \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u044b\u0432\u0430\u0442\u044c \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/17\/docs\/api\/java.base\/java\/lang\/AutoCloseable.html\" rel=\"noopener noreferrer nofollow\">java.lang.AutoCloseable<\/a> \u0438 \u043c\u0435\u0442\u043e\u0434 <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/17\/docs\/api\/java.base\/java\/lang\/AutoCloseable.html#close()\" rel=\"noopener noreferrer nofollow\">close()<\/a> \u043a\u0430\u043a \u0447\u0430\u0441\u0442\u044c \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430.<\/p>\n<p>\u041d\u0430\u0447\u0438\u043d\u0430\u044f \u0441 Java \u0432\u0435\u0440\u0441\u0438\u0438 7 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/17\/docs\/api\/java.base\/java\/lang\/AutoCloseable.html\" rel=\"noopener noreferrer nofollow\">java.lang.AutoCloseable<\/a> \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043f\u0440\u0435\u0434\u043a\u043e\u043c \u0434\u043b\u044f \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430 <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/17\/docs\/api\/java.base\/java\/io\/Closeable.html\" rel=\"noopener noreferrer nofollow\">java.io.Closeable<\/a>, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0443\u0436\u0435 \u0441\u0430\u043c \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0442\u0440\u0430\u0434\u0438\u0446\u0438\u043e\u043d\u043d\u044b\u043c \u043f\u0440\u0435\u0434\u043a\u043e\u043c \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u0430 \u043a\u043b\u0430\u0441\u0441\u043e\u0432, \u0441\u0432\u044f\u0437\u0430\u043d\u043d\u044b\u0445 \u0441 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u043e\u0439 \u0432\u0432\u043e\u0434\u0430-\u0432\u044b\u0432\u043e\u0434\u0430 \u0438 \u0431\u0443\u0444\u0435\u0440\u0438\u0437\u0430\u0446\u0438\u0435\u0439.<\/p>\n<\/div>\n<\/details>\n<p>\u0412\u044b\u0437\u043e\u0432 \u043c\u0435\u0442\u043e\u0434\u0430 <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/17\/docs\/api\/java.base\/java\/io\/BufferedReader.html#lines()\" rel=\"noopener noreferrer nofollow\">lines()<\/a> \u043a\u043b\u0430\u0441\u0441\u0430 <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/17\/docs\/api\/java.base\/java\/io\/BufferedReader.html\" rel=\"noopener noreferrer nofollow\">BufferedReader<\/a> \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442 \u0433\u043e\u0442\u043e\u0432\u044b\u0439 \u043a \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044e \u043f\u043e\u0442\u043e\u043a \u0441\u0442\u0440\u043e\u043a  Stream API:<\/p>\n<pre><code class=\"java\">\/\/ create stream of lines Stream&lt;String&gt; lines = bufferedReader.lines();<\/code><\/pre>\n<p>\u0412 \u044d\u0442\u043e\u0442 \u043c\u043e\u043c\u0435\u043d\u0442 \u043d\u0438\u043a\u0430\u043a\u043e\u0439 \u043e\u0441\u043e\u0431\u0435\u043d\u043d\u043e\u0439 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0434\u0430\u043d\u043d\u044b\u0445 \u043d\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u0442\u0441\u044f. \u041f\u043e\u0442\u043e\u043a\u0438 &#8212; \u0432\u0435\u0449\u044c \u043b\u0435\u043d\u0438\u0432\u0430\u044f. \u0427\u0442\u043e\u0431\u044b \u0442\u0430\u043c \u0447\u0442\u043e-\u0442\u043e \u043d\u0430\u0447\u0430\u043b\u043e \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442\u044c, \u043d\u0443\u0436\u043d\u043e \u0432\u044b\u0437\u0432\u0430\u0442\u044c \u043a\u0430\u043a\u043e\u0439-\u043d\u0438\u0431\u0443\u0434\u044c \u0442\u0435\u0440\u043c\u0438\u043d\u0430\u043b\u044c\u043d\u044b\u0439 \u043c\u0435\u0442\u043e\u0434, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u044f\u0432\u043d\u044b\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c \u0432\u044b\u043d\u0443\u0436\u0434\u0435\u043d \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u0434\u0430\u043d\u043d\u044b\u0445. \u0423 \u043d\u0430\u0441 \u044d\u0442\u043e \u043c\u0435\u0442\u043e\u0434 <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/17\/docs\/api\/java.base\/java\/util\/stream\/Stream.html#collect(java.util.stream.Collector)\" rel=\"noopener noreferrer nofollow\">collect<\/a>, \u043e\u0431\u044a\u044f\u0432\u043b\u0435\u043d\u043d\u044b\u0439 \u0432 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0435 <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/17\/docs\/api\/java.base\/java\/util\/stream\/Stream.html\" rel=\"noopener noreferrer nofollow\">Stream&lt;T&gt;<\/a>. \u0412 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442\u0430 \u043e\u043d \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u0442 \u043e\u0431\u044a\u0435\u043a\u0442-\u043a\u043e\u043b\u043b\u0435\u043a\u0442\u043e\u0440 \u0432 \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u043e \u043e\u0447\u0435\u0440\u0435\u0434\u0438 \u0441\u043a\u043b\u0430\u0434\u044b\u0432\u0430\u044e\u0442\u0441\u044f \u043e\u0431\u044a\u0435\u043a\u0442\u044b \u0438\u0437 \u043f\u043e\u0442\u043e\u043a\u0430. \u0412 \u043d\u0430\u0448\u0435\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u043a\u043e\u043b\u043b\u0435\u043a\u0442\u043e\u0440\u043e\u043c \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043e\u0431\u044a\u0435\u043a\u0442, \u0441\u043e\u0437\u0434\u0430\u0432\u0430\u0435\u043c\u044b\u0439 \u0432\u044b\u0437\u043e\u0432\u043e\u043c \u0441\u0442\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u043c\u0435\u0442\u043e\u0434\u0430 <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/17\/docs\/api\/java.base\/java\/util\/stream\/Collectors.html#toMap(java.util.function.Function,java.util.function.Function)\" rel=\"noopener noreferrer nofollow\">toMap<\/a> \u043a\u043b\u0430\u0441\u0441\u0430 <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/17\/docs\/api\/java.base\/java\/util\/stream\/Collectors.html\" rel=\"noopener noreferrer nofollow\">Collectors<\/a>:<\/p>\n<pre><code class=\"java\">Collectors.toMap(         \/\/ key for the map         \/\/ convert the first character to uppercase and get the equivalent integer value         s -&gt; Integer.valueOf(Character.toUpperCase(s.charAt(0))),         \/\/ value for the map         \/\/ get the substring starting from the second character (we count from 0)         s -&gt; s.substring(1))<\/code><\/pre>\n<p>\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0432\u0430\u0440\u0438\u0430\u043d\u0442 <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/17\/docs\/api\/java.base\/java\/util\/stream\/Collectors.html#toMap(java.util.function.Function,java.util.function.Function)\" rel=\"noopener noreferrer nofollow\">toMap<\/a>, \u043f\u0440\u0438\u043d\u0438\u043c\u0430\u044e\u0449\u0438\u0439 \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442\u043e\u0432 \u0434\u0432\u0435 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430 <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/21\/docs\/api\/java.base\/java\/util\/function\/Function.html\" rel=\"noopener noreferrer nofollow\">Function&lt;T, R&gt;<\/a>, \u0430 \u043f\u0440\u043e\u0449\u0435 \u0433\u043e\u0432\u043e\u0440\u044f &#8212; \u0434\u0432\u0435 lambda-\u0444\u0443\u043d\u043a\u0446\u0438\u0438. \u041f\u0435\u0440\u0432\u0430\u044f \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u0443\u0435\u0442 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u043d\u0443\u044e \u0438\u0437 \u043f\u043e\u0442\u043e\u043a\u0430 \u0441\u0442\u0440\u043e\u043a\u0443 <code>String<\/code> \u0432 \u043a\u043b\u044e\u0447 \u0434\u043b\u044f \u0441\u043b\u043e\u0432\u0430\u0440\u044f <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/21\/docs\/api\/java.base\/java\/util\/Map.html\" rel=\"noopener noreferrer nofollow\">Map&lt;K, V&gt;<\/a>, \u0430 \u0432\u0442\u043e\u0440\u0430\u044f \u0444\u0443\u043d\u043a\u0446\u0438\u044f \u0442\u0443 \u0436\u0435 \u0441\u0430\u043c\u0443\u044e \u0441\u0442\u0440\u043e\u043a\u0443 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u0443\u0435\u0442 \u0432 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435, \u043d\u0430 \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u0434\u043e\u043b\u0436\u0435\u043d \u0443\u043a\u0430\u0437\u044b\u0432\u0430\u0442\u044c \u043a\u043b\u044e\u0447. \u041f\u043e\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u043d\u0430 \u044d\u0442\u0438 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u043d\u0435\u043c\u043d\u043e\u0433\u043e \u0432\u043d\u0438\u043c\u0430\u0442\u0435\u043b\u044c\u043d\u0435\u0435.<\/p>\n<p>\u041a\u043b\u044e\u0447 \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u0442\u0441\u044f \u0438\u0437 \u043d\u0443\u043b\u0435\u0432\u043e\u0433\u043e (\u0441\u0430\u043c\u043e\u0433\u043e \u043d\u0430\u0447\u0430\u043b\u044c\u043d\u043e\u0433\u043e) \u0441\u0438\u043c\u0432\u043e\u043b\u0430 \u0441\u0442\u0440\u043e\u043a\u0438. \u041f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u044d\u0442\u043e\u0442 \u0441\u0438\u043c\u0432\u043e\u043b \u0438\u0437 \u0441\u0442\u0440\u043e\u043a\u0438 <code>s<\/code> \u043e\u0447\u0435\u043d\u044c \u043b\u0435\u0433\u043a\u043e: <code>s.charAt(0)<\/code>,<\/p>\n<pre><code class=\"java\">\/\/ key for the map \/\/ convert the first character to uppercase and get the equivalent integer value s -&gt; Integer.valueOf(Character.toUpperCase(s.charAt(0)))<\/code><\/pre>\n<p>\u041f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/21\/docs\/api\/java.base\/java\/lang\/Character.html#toUpperCase(char)\" rel=\"noopener noreferrer nofollow\">Character.toUpperCase(c)<\/a> \u0441\u0438\u043c\u0432\u043e\u043b \u043f\u0435\u0440\u0435\u0432\u043e\u0434\u0438\u0442\u0441\u044f \u0432 \u0432\u0435\u0440\u0445\u043d\u0438\u0439 \u0440\u0435\u0433\u0438\u0441\u0442\u0440 (\u0431\u043e\u043b\u044c\u0448\u0438\u0435 \u0431\u0443\u043a\u0432\u044b) \u0447\u0442\u043e\u0431\u044b \u043d\u0435 \u0431\u044b\u043b\u043e \u0440\u0430\u0437\u043d\u0438\u0446\u044b \u043c\u0435\u0436\u0434\u0443 <strong>A<\/strong> \u0438 <strong>a<\/strong>. \u0417\u0430\u0442\u0435\u043c <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/21\/docs\/api\/java.base\/java\/lang\/Integer.html#valueOf(int)\" rel=\"noopener noreferrer nofollow\">Integer.valueOf(i)<\/a> \u0434\u0435\u043b\u0430\u0435\u0442 \u0438\u0437 \u0441\u0438\u043c\u0432\u043e\u043b\u0430 <code>char<\/code> \u043e\u0431\u044a\u0435\u043a\u0442 \u0446\u0435\u043b\u043e\u0433\u043e \u0447\u0438\u0441\u043b\u0430 <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/21\/docs\/api\/java.base\/java\/lang\/Integer.html\" rel=\"noopener noreferrer nofollow\">Integer<\/a>. \u0412\u043d\u0443\u0442\u0440\u0438 \u044d\u0442\u043e\u0433\u043e <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/21\/docs\/api\/java.base\/java\/lang\/Integer.html\" rel=\"noopener noreferrer nofollow\">Integer<\/a> \u0441\u043e\u0445\u0440\u0430\u043d\u044f\u0435\u0442\u0441\u044f \u044d\u043a\u0432\u0438\u0432\u0430\u043b\u0435\u043d\u0442\u043d\u043e\u0435 <code>char<\/code> \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435, \u043d\u043e \u0432 \u0432\u0438\u0434\u0435 \u043f\u0440\u0438\u043c\u0438\u0442\u0438\u0432\u043d\u043e\u0433\u043e \u0442\u0438\u043f\u0430 <code>int<\/code>. \u041f\u043e\u043b\u0443\u0447\u0435\u043d\u043d\u044b\u0439 <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/21\/docs\/api\/java.base\/java\/lang\/Integer.html\" rel=\"noopener noreferrer nofollow\">Integer<\/a> \u0438 \u0435\u0441\u0442\u044c \u043a\u043b\u044e\u0447 \u0432 <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/21\/docs\/api\/java.base\/java\/util\/Map.html\" rel=\"noopener noreferrer nofollow\">Map&lt;Integer, String&gt;<\/a>.<\/p>\n<details class=\"spoiler\">\n<summary>\u041f\u043e\u0447\u0435\u043c\u0443 \u0431\u044b \u043d\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u043a\u043b\u044e\u0447\u0430 Character?<\/summary>\n<div class=\"spoiler__content\">\n<p>\u0425\u043e\u0440\u043e\u0448\u0438\u0439 \u0432\u043e\u043f\u0440\u043e\u0441! \u041f\u0440\u0438\u0447\u0438\u043d\u0430 \u0432 \u0442\u043e\u043c, \u0447\u0442\u043e \u0434\u0430\u043b\u044c\u043d\u0435\u0439\u0448\u0438\u0435 \u043c\u0430\u043d\u0438\u043f\u0443\u043b\u044f\u0446\u0438\u0438 \u043d\u0430 \u0431\u0430\u0437\u0435 Stream API \u043f\u0440\u043e\u0449\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0442\u044c \u0441 <code>int<\/code>, \u0447\u0435\u043c \u0441 <code>char<\/code>.<\/p>\n<p>\u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0432\u043e\u0442 \u0442\u0430\u043a\u043e\u0439 \u0432\u044b\u0437\u043e\u0432 \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442 <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/17\/docs\/api\/java.base\/java\/util\/stream\/IntStream.html\" rel=\"noopener noreferrer nofollow\">IntStream<\/a>:<\/p>\n<pre><code class=\"java\">String s = \"My text\"; IntStream stream = s.chars();<\/code><\/pre>\n<p>\u0412 API \u043f\u0440\u0435\u0434\u0443\u0441\u043c\u043e\u0442\u0440\u0435\u043b\u0438 \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u0439 \u0442\u0438\u043f \u043f\u043e\u0442\u043e\u043a\u0430 <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/21\/docs\/api\/java.base\/java\/util\/stream\/IntStream.html\" rel=\"noopener noreferrer nofollow\">IntStream<\/a> \u0434\u043b\u044f <code>int<\/code>, \u0430 \u0434\u043b\u044f <code>char<\/code> \u043d\u0438\u0447\u0435\u0433\u043e \u043f\u043e\u0445\u043e\u0436\u0435\u0433\u043e \u043d\u0435\u0442.<\/p>\n<\/div>\n<\/details>\n<p>\u0421\u0442\u0440\u043e\u0447\u043a\u0430 \u0438\u0437 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0445 \u043a\u043b\u044e\u0447\u0443 \u0442\u043e\u0447\u0435\u043a \u0438 \u0442\u0438\u0440\u0435 \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u0442\u0441\u044f \u0432\u044b\u0437\u043e\u0432\u043e\u043c \u0432\u0442\u043e\u0440\u043e\u0439 \u0444\u0443\u043d\u043a\u0446\u0438\u0438-\u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442\u0430 \u043c\u0435\u0442\u043e\u0434\u0430 <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/21\/docs\/api\/java.base\/java\/util\/stream\/Collectors.html#toMap(java.util.function.Function,java.util.function.Function)\" rel=\"noopener noreferrer nofollow\">toMap<\/a>:<\/p>\n<pre><code class=\"java\">\/\/ value for the map \/\/ get the substring skipping the very first character (we count from 0) s -&gt; s.substring(1)<\/code><\/pre>\n<p>\u0417\u0434\u0435\u0441\u044c \u0432\u0441\u0451 \u043f\u0440\u043e\u0441\u0442\u043e: \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u043c \u043f\u043e\u0434\u0441\u0442\u0440\u043e\u043a\u0443, \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u043d\u0443\u044e \u0438\u0437 \u0438\u0441\u0445\u043e\u0434\u043d\u043e\u0439 \u0441\u0442\u0440\u043e\u043a\u0438 <code>s<\/code> \u043f\u0440\u043e\u043f\u0443\u0441\u043a\u043e\u043c \u043d\u0430\u0447\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u0441\u0438\u043c\u0432\u043e\u043b\u0430.<\/p>\n<p>\u0421\u043e\u0437\u0434\u0430\u043d\u043d\u044b\u0439 \u0432\u044b\u0437\u043e\u0432\u043e\u043c <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/21\/docs\/api\/java.base\/java\/util\/stream\/Collectors.html#toMap(java.util.function.Function,java.util.function.Function)\" rel=\"noopener noreferrer nofollow\">toMap<\/a> \u043a\u043e\u043b\u043b\u0435\u043a\u0442\u043e\u0440 \u0432\u044b\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u0432\u043d\u0443\u0442\u0440\u0438 <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/17\/docs\/api\/java.base\/java\/util\/stream\/Stream.html#collect(java.util.stream.Collector)\" rel=\"noopener noreferrer nofollow\">collect<\/a> \u0434\u043b\u044f \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u043e\u0431\u044a\u0435\u043a\u0442\u0430 \u0438\u0437 \u043f\u043e\u0442\u043e\u043a\u0430 <code>lines<\/code>, \u0430 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u044b \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u0444\u0443\u043d\u043a\u0446\u0438\u0439 \u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u044f \u043a\u043b\u044e\u0447\u0430 \u0438 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u0441\u043a\u043b\u0430\u0434\u044b\u0432\u0430\u044e\u0442\u0441\u044f \u0432 \u0441\u043e\u0437\u0434\u0430\u043d\u043d\u044b\u0439 \u043a\u043e\u043b\u043b\u0435\u043a\u0442\u043e\u0440\u043e\u043c \u043e\u0431\u044a\u0435\u043a\u0442 \u0441 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u043e\u043c <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/21\/docs\/api\/java.base\/java\/util\/Map.html\" rel=\"noopener noreferrer nofollow\">Map&lt;K, V&gt;<\/a>.<\/p>\n<p>\u041a\u043e\u0433\u0434\u0430 \u0432\u0441\u0435 \u0441\u0442\u0440\u043e\u043a\u0438 \u0438\u0437 \u043f\u043e\u0442\u043e\u043a\u0430 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0430\u043d\u044b, <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/21\/docs\/api\/java.base\/java\/util\/stream\/Stream.html#collect(java.util.stream.Collector)\" rel=\"noopener noreferrer nofollow\">collect<\/a> \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442 \u0437\u0430\u043f\u043e\u043b\u043d\u0435\u043d\u043d\u044b\u0439 Map:<\/p>\n<figure class=\"\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/dce\/8b9\/372\/dce8b93723dabb1e0d3b47dfcfa1967a.jpg\" alt=\"\u0420\u0438\u0441 18. Map \u0441 \u043a\u043b\u044e\u0447\u0430\u043c\u0438 Integer \u0438 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f\u043c\u0438 String\" title=\"\u0420\u0438\u0441 18. Map \u0441 \u043a\u043b\u044e\u0447\u0430\u043c\u0438 Integer \u0438 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f\u043c\u0438 String\" width=\"284\" height=\"557\" sizes=\"auto, (max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/r\/w780\/getpro\/habr\/upload_files\/dce\/8b9\/372\/dce8b93723dabb1e0d3b47dfcfa1967a.jpg 780w,&#10;       https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/dce\/8b9\/372\/dce8b93723dabb1e0d3b47dfcfa1967a.jpg 781w\" loading=\"lazy\" decode=\"async\"\/><\/p>\n<div><figcaption>\u0420\u0438\u0441 18. Map \u0441 \u043a\u043b\u044e\u0447\u0430\u043c\u0438 Integer \u0438 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f\u043c\u0438 String<\/figcaption><\/div>\n<\/figure>\n<p>\u0412 \u0444\u0438\u043d\u0430\u043b\u0435 \u0441\u043e\u0445\u0440\u0430\u043d\u044f\u0435\u043c \u0432 \u043f\u043e\u043b\u0435 <code>morseCodes<\/code> \u043e\u0431\u044a\u0435\u043a\u0442\u0430 \u043a\u043b\u0430\u0441\u0441\u0430 <code>MorseProcessor<\/code> \u0441\u0441\u044b\u043b\u043a\u0443 \u043d\u0430 \u043d\u0435\u043c\u043e\u0434\u0438\u0444\u0438\u0446\u0438\u0440\u0443\u0435\u043c\u044b\u0439 \u0432\u0430\u0440\u0438\u0430\u043d\u0442 <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/17\/docs\/api\/java.base\/java\/util\/Map.html\" rel=\"noopener noreferrer nofollow\">Map&lt;Integer, String&gt;<\/a>:<\/p>\n<pre><code class=\"java\">this.morseCodes = Collections.unmodifiableMap(map); \/\/ create an unmodifiable map<\/code><\/pre>\n<p><a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/21\/docs\/api\/java.base\/java\/util\/Collections.html#unmodifiableMap(java.util.Map)\" rel=\"noopener noreferrer nofollow\">Collections.unmodifiableMap(map)<\/a> \u0441\u043e\u0437\u0434\u0430\u0451\u0442 \u043d\u043e\u0432\u044b\u0439 \u043e\u0431\u044a\u0435\u043a\u0442 \u0441 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u043e\u043c <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/21\/docs\/api\/java.base\/java\/util\/Map.html\" rel=\"noopener noreferrer nofollow\">Map<\/a>. \u041e\u0442\u043b\u0438\u0447\u0438\u0435 \u043e\u0442 \u043e\u0431\u044b\u0447\u043d\u043e\u0433\u043e <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/21\/docs\/api\/java.base\/java\/util\/HashMap.html\" rel=\"noopener noreferrer nofollow\">HashMap<\/a> \u0432 \u0442\u043e\u043c, \u0447\u0442\u043e \u0432\u044b\u0437\u043e\u0432 \u043b\u044e\u0431\u043e\u0433\u043e \u043c\u0435\u0442\u043e\u0434\u0430 \u043c\u043e\u0434\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438 \u0443 \u0442\u0430\u043a\u043e\u0433\u043e \u043e\u0431\u044a\u0435\u043a\u0442\u0430 \u043f\u0440\u0438\u0432\u0435\u0434\u0451\u0442 \u043a \u0432\u044b\u0431\u0440\u043e\u0441\u0443 \u0438\u0441\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/21\/docs\/api\/java.base\/java\/lang\/UnsupportedOperationException.html\" rel=\"noopener noreferrer nofollow\">UnsupportedOperationException<\/a>, \u0447\u0442\u043e \u043f\u0440\u0435\u0434\u043e\u0442\u0432\u0440\u0430\u0449\u0430\u0435\u0442 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0435 \u0434\u0430\u043d\u043d\u044b\u0445, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043c\u044b \u044f\u0432\u043d\u043e \u0445\u043e\u0442\u0438\u043c \u043e\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u043d\u0435\u0438\u0437\u043c\u0435\u043d\u043d\u044b\u043c\u0438.<\/p>\n<h4>\u0424\u043e\u0440\u043c\u0438\u0440\u0443\u0435\u043c \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435 \u0432 \u043a\u043e\u0434\u0435 \u041c\u043e\u0440\u0437\u0435 \u0438\u0437 \u0432\u0445\u043e\u0434\u043d\u043e\u0433\u043e \u0442\u0435\u043a\u0441\u0442\u0430<\/h4>\n<p>\u0421\u043b\u043e\u0432\u0430\u0440\u044c \u0443 \u043d\u0430\u0441 \u0435\u0441\u0442\u044c, \u043d\u0430 \u043d\u0435\u0433\u043e \u0441\u0441\u044b\u043b\u0430\u0435\u0442\u0441\u044f \u043f\u043e\u043b\u0435 <code>morseCodes<\/code> \u0432 <code>MorseProcessor<\/code>. \u0422\u0435\u043f\u0435\u0440\u044c \u043d\u0443\u0436\u043d\u043e \u0438\u0437 \u0432\u0445\u043e\u0434\u043d\u043e\u0439 \u0441\u0442\u0440\u043e\u043a\u0438 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0442\u0435\u043a\u0441\u0442 \u0432 \u0432\u0438\u0434\u0435 \u0442\u043e\u0447\u0435\u043a, \u0442\u0438\u0440\u0435 \u0438 \u043f\u0440\u043e\u0431\u0435\u043b\u043e\u0432 \u0434\u0432\u0443\u0445 \u0442\u0438\u043f\u043e\u0432: \u0441\u0440\u0435\u0434\u043d\u0435\u0433\u043e \u043c\u0435\u0436\u0434\u0443 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u043c\u0438 \u0437\u043d\u0430\u043a\u0430\u043c\u0438 (\u0431\u0443\u043a\u0432\u0430\u043c\u0438) \u0438 \u0434\u043b\u0438\u043d\u043d\u043e\u0433\u043e \u043c\u0435\u0436\u0434\u0443 \u0441\u043b\u043e\u0432\u0430\u043c\u0438. \u042d\u0442\u0443 \u0440\u0430\u0431\u043e\u0442\u0443 \u0434\u0435\u043b\u0430\u0435\u0442 \u043c\u0435\u0442\u043e\u0434 <code>String textToMorse(String text)<\/code> \u043a\u043b\u0430\u0441\u0441\u0430 <code>MorseProcessor<\/code>:<\/p>\n<pre><code class=\"java\">\/**  * MorseProcessor class for processing text to morse code.  *\/ class MorseProcessor {     \/**      * The Morse codes map      *\/     private Map&lt;Integer, String&gt; morseCodes;    . . .        \/**      * Convert text to morse code      *      * @param text the text to convert      * @return the morse code string, for example: \".-|...|.-.\"      *\/     String textToMorse(String text) {         return text             \/\/ convert the text to uppercase             .toUpperCase()             \/\/ convert the text to a stream of characters             .chars()             \/\/ convert the stream of characters to a stream of strings             .mapToObj((c) -&gt; {                 if (c == ' ') { \/\/ if the character is a space                     return \" \"; \/\/ return a space                 }                 \/\/ get the morse code for the character                 String code = morseCodes.get(c);                 \/\/ return the morse code or a space if the code is not found (==null)                 return code != null ? code : \" \";             })             .collect(                 Collector.&lt;String, ArrayList&lt;String&gt;, String&gt;of(                     \/\/ Supplier: Creates a new ArrayList                     () -&gt; {                         \/\/ reserve space for strings                         return new ArrayList&lt;String&gt;(text.length());                     },                     \/\/ Accumulator: Adds strings to the list skipping duplicated spaces                     (list, s) -&gt; {                         if (!s.equals(\" \") || (!list.isEmpty() &amp;&amp; !list.getLast().equals(\" \"))) {                             list.addLast(s);                         }                     },                     \/\/ Combiner: Combines two lists (for parallel streams)                     (list1, list2) -&gt; {                         list1.addAll(list2);                         return list1;                     },                     \/\/ Finisher: Joins the list elements into a single string                     list -&gt; {                         if (!list.isEmpty()) {                             int to = list.getLast().equals(\" \") ? list.size() - 1 : list.size();                             return String.join(\"|\", list.subList(0, to));                         }                         return \"\";                     }                 )             );     } . . .<\/code><\/pre>\n<p>\u0412 \u044d\u0442\u043e\u043c \u043c\u0435\u0442\u043e\u0434\u0435 \u0432\u044b\u0437\u043e\u0432 <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/21\/docs\/api\/java.base\/java\/lang\/String.html#chars()\" rel=\"noopener noreferrer nofollow\">chars()<\/a> \u0441\u043e\u0437\u0434\u0430\u0451\u0442 <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/21\/docs\/api\/java.base\/java\/util\/stream\/IntStream.html\" rel=\"noopener noreferrer nofollow\">IntStream<\/a> &#8212; \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u044c\u043d\u0443\u044e \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044e <code>Stream<\/code> \u0434\u043b\u044f \u043f\u0440\u0438\u043c\u0438\u0442\u0438\u0432\u043d\u043e\u0433\u043e \u0442\u0438\u043f\u0430 <code>int<\/code>. \u041d\u0435\u0442, <a href=\"https:\/\/stackoverflow.com\/questions\/22435833\/why-is-string-chars-a-stream-of-ints-in-java-8\" rel=\"noopener noreferrer nofollow\">\u044f \u043d\u0438\u0447\u0435\u0433\u043e \u043d\u0435 \u043f\u0443\u0442\u0430\u044e<\/a>: <code>CharStream<\/code> \u043d\u0435 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u0435\u0442.<\/p>\n<p><a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/21\/docs\/api\/java.base\/java\/util\/stream\/IntStream.html#mapToObj(java.util.function.IntFunction)\" rel=\"noopener noreferrer nofollow\">mapToObj<\/a> \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u0442 \u043d\u0430 \u0432\u0445\u043e\u0434 \u0441\u0441\u044b\u043b\u043a\u0443 \u043d\u0430 \u043e\u0431\u044a\u0435\u043a\u0442, \u0440\u0435\u0430\u043b\u0438\u0437\u0443\u044e\u0449\u0438\u0439 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/21\/docs\/api\/java.base\/java\/util\/function\/IntFunction.html\" rel=\"noopener noreferrer nofollow\">IntFunction<\/a>, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u0443\u0435\u0442 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u044b \u043f\u043e\u0442\u043e\u043a\u0430 \u0442\u0438\u043f\u0430 <code>int<\/code> \u0432 \u043d\u0435\u043a\u0438\u0439 \u043e\u0431\u044a\u0435\u043a\u0442 (\u043d\u0435 \u043f\u0440\u0438\u043c\u0438\u0442\u0438\u0432, \u043a\u0430\u043a <code>int<\/code>).<\/p>\n<details class=\"spoiler\">\n<summary>IntFunction<\/summary>\n<div class=\"spoiler__content\">\n<pre><code class=\"java\">\/**  * Represents a function that accepts an int-valued argument and produces a  * result.  This is the {@code int}-consuming primitive specialization for  * {@link Function}.  *\/ @FunctionalInterface public interface IntFunction&lt;R&gt; {      \/**      * Applies this function to the given argument.      *      * @param value the function argument      * @return the function result      *\/     R apply(int value); }<\/code><\/pre>\n<\/div>\n<\/details>\n<p>\u041d\u0430\u0448\u0430 \u0444\u0443\u043d\u043a\u0446\u0438\u044f \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u0438\u043c\u043f\u043b\u0435\u043c\u0435\u043d\u0442\u0438\u0440\u0443\u0435\u0442 <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/21\/docs\/api\/java.base\/java\/util\/function\/IntFunction.html\" rel=\"noopener noreferrer nofollow\">IntFunction<\/a> \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f \u0441\u0438\u043d\u0442\u0430\u043a\u0441\u0438\u0441 lambda-\u0444\u0443\u043d\u043a\u0446\u0438\u0439:<\/p>\n<pre><code class=\"java\">(c) -&gt; {     if (c == ' ') { \/\/ if the character is a space         return \" \"; \/\/ return a space     }     \/\/ get the morse code for the character     String code = morseCodes.get(c);     \/\/ return the morse code or a space if the code is not found (==null)     return code != null ? code : \" \"; }<\/code><\/pre>\n<p>\u041e\u043d\u0430 \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u0442 <code>int<\/code>-\u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440 \u043f\u0440\u0438 \u0432\u044b\u0437\u043e\u0432\u0435, \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u0442, \u043d\u0435 \u043f\u0440\u043e\u0431\u0435\u043b \u043b\u0438 \u044d\u0442\u043e \u0438, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440 \u043a\u0430\u043a \u043a\u043b\u044e\u0447, \u0434\u043e\u0441\u0442\u0430\u0451\u0442 \u0438\u0437 <code>morseCodes<\/code> \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0443\u044e \u0441\u0442\u0440\u043e\u043a\u0443, \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0449\u0443\u044e \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u0442\u043e\u0447\u0435\u043a \u0438 \u0442\u0438\u0440\u0435 &#8212; \u043a\u043e\u0434 \u0438\u0437 \u0430\u0437\u0431\u0443\u043a\u0438 \u041c\u043e\u0440\u0437\u0435. \u0415\u0441\u043b\u0438 \u043d\u0443\u0436\u043d\u043e\u0439 \u0441\u0442\u0440\u043e\u043a\u0438 \u0432 <code>morseCodes<\/code> \u043f\u043e \u043a\u043b\u044e\u0447\u0443 \u043d\u0435 \u043d\u0430\u0448\u043b\u043e\u0441\u044c, \u0444\u0443\u043d\u043a\u0446\u0438\u044f \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442 \u043f\u0440\u043e\u0431\u0435\u043b. \u041d\u0443 \u0438 \u0435\u0441\u043b\u0438 \u043d\u0430 \u0432\u0445\u043e\u0434 \u043f\u0440\u0438\u0448\u0451\u043b \u043a\u043e\u0434 \u043f\u0440\u043e\u0431\u0435\u043b\u0430, \u0442\u043e \u0442\u043e\u0436\u0435 \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442\u0441\u044f \u043f\u0440\u043e\u0431\u0435\u043b.<\/p>\n<p>\u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u043e\u043c \u0440\u0430\u0431\u043e\u0442\u044b  <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/21\/docs\/api\/java.base\/java\/util\/stream\/IntStream.html#mapToObj(java.util.function.IntFunction)\" rel=\"noopener noreferrer nofollow\">mapToObj<\/a> \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/21\/docs\/api\/java.base\/java\/util\/stream\/Stream.html\" rel=\"noopener noreferrer nofollow\">Stream&lt;String&gt;<\/a> \u0441\u043e \u0441\u0442\u0440\u043e\u043a\u0430\u043c\u0438, \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0449\u0438\u043c\u0438 \u043f\u0440\u043e\u0431\u0435\u043b \u0438\u043b\u0438 \u043a\u043e\u0434 \u041c\u043e\u0440\u0437\u0435 \u0438\u0437 \u0442\u043e\u0447\u0435\u043a \u0438 \u0442\u0438\u0440\u0435 \u0434\u043b\u044f \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0435\u0433\u043e \u0441\u0438\u043c\u0432\u043e\u043b\u0430 \u0438\u0437 \u0432\u0445\u043e\u0434\u043d\u043e\u0439 \u0441\u0442\u0440\u043e\u043a\u0438. \u041d\u0430 \u044d\u0442\u043e\u043c \u043f\u043e\u0442\u043e\u043a\u0435 \u0432\u044b\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u043c\u0435\u0442\u043e\u0434 <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/21\/docs\/api\/java.base\/java\/util\/stream\/Stream.html#collect(java.util.stream.Collector)\" rel=\"noopener noreferrer nofollow\">collect<\/a> c \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442\u043e\u043c-\u043a\u043e\u043b\u043b\u0435\u043a\u0442\u043e\u0440\u043e\u043c, \u043a\u043e\u0442\u043e\u0440\u044b\u0439, \u0432 \u0441\u0432\u043e\u044e \u043e\u0447\u0435\u0440\u0435\u0434\u044c, \u0441\u043e\u0437\u0434\u0430\u0451\u0442\u0441\u044f \u043d\u0430 \u043c\u0435\u0441\u0442\u0435 \u0432\u044b\u0437\u043e\u0432\u043e\u043c <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/21\/docs\/api\/java.base\/java\/util\/stream\/Collector.html#of(java.util.function.Supplier,java.util.function.BiConsumer,java.util.function.BinaryOperator,java.util.function.Function,java.util.stream.Collector.Characteristics...)\" rel=\"noopener noreferrer nofollow\">Collector.of<\/a> \u0441 \u0447\u0435\u0442\u044b\u0440\u044c\u043c\u044f \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442\u0430\u043c\u0438-\u0444\u0443\u043d\u043a\u0446\u0438\u044f\u043c\u0438 (\u0442\u0430\u043c \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u043f\u044f\u0442\u044b\u0439 \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442, \u043d\u043e \u043c\u044b \u0435\u0433\u043e \u043d\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c).<\/p>\n<p>\u0420\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u044d\u0442\u043e\u0433\u043e \u043a\u0430\u0441\u0442\u043e\u043c\u043d\u043e\u0433\u043e \u043a\u043e\u043b\u043b\u0435\u043a\u0442\u043e\u0440\u0430 \u0447\u0443\u0442\u044c \u0431\u043b\u0438\u0436\u0435. \u041f\u0440\u043e\u0442\u043e\u0442\u0438\u043f \u0441\u0442\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u043c\u0435\u0442\u043e\u0434\u0430 <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/21\/docs\/api\/java.base\/java\/util\/stream\/Collector.html#of(java.util.function.Supplier,java.util.function.BiConsumer,java.util.function.BinaryOperator,java.util.function.Function,java.util.stream.Collector.Characteristics...)\" rel=\"noopener noreferrer nofollow\">of<\/a> \u043a\u043b\u0430\u0441\u0441\u0430 <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/21\/docs\/api\/java.base\/java\/util\/stream\/Collector.html\" rel=\"noopener noreferrer nofollow\">java.util.stream.Collector<\/a> \u0432\u044b\u0433\u043b\u044f\u0434\u0438\u0442 \u0443\u0441\u0442\u0440\u0430\u0448\u0430\u044e\u0449\u0435:<\/p>\n<pre><code class=\"java\">    \/**      * Returns a new {@code Collector} described by the given {@code supplier},      * {@code accumulator}, {@code combiner}, and {@code finisher} functions.      *      * @param supplier The supplier function for the new collector      * @param accumulator The accumulator function for the new collector      * @param combiner The combiner function for the new collector      * @param finisher The finisher function for the new collector      * @param characteristics The collector characteristics for the new      *                        collector      * @param &lt;T&gt; The type of input elements for the new collector      * @param &lt;A&gt; The intermediate accumulation type of the new collector      * @param &lt;R&gt; The final result type of the new collector      * @throws NullPointerException if any argument is null      * @return the new {@code Collector}      *\/     public static&lt;T, A, R&gt; Collector&lt;T, A, R&gt; of(       Supplier&lt;A&gt; supplier,       BiConsumer&lt;A, T&gt; accumulator,       BinaryOperator&lt;A&gt; combiner,       Function&lt;A, R&gt; finisher,       Characteristics... characteristics);<\/code><\/pre>\n<p>\u041d\u043e \u043d\u0430 \u0441\u0430\u043c\u043e\u043c \u0434\u0435\u043b\u0435 \u0432\u0441\u0451 \u043d\u0435 \u043d\u0430\u0441\u0442\u043e\u043b\u044c\u043a\u043e \u0443\u0436\u0430\u0441\u043d\u043e. \u041f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b-\u0442\u0438\u043f\u044b <code>T<\/code>, <code>A<\/code>, <code>R<\/code> \u043a\u043b\u0430\u0441\u0441\u0430-\u0434\u0436\u0435\u043d\u0435\u0440\u0438\u043a\u0430 <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/21\/docs\/api\/java.base\/java\/util\/stream\/Collector.html\" rel=\"noopener noreferrer nofollow\">Collector<\/a> \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u044e\u0442:<\/p>\n<ul>\n<li>\n<p><code>T<\/code> &#8212; \u0442\u0438\u043f \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u043e\u0432 \u0438\u0441\u0445\u043e\u0434\u043d\u043e\u0433\u043e \u043f\u043e\u0442\u043e\u043a\u0430,<\/p>\n<\/li>\n<li>\n<p><code>A<\/code> &#8212; \u0442\u0438\u043f \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u0430-\u0430\u043a\u043a\u0443\u043c\u0443\u043b\u044f\u0442\u043e\u0440\u0430 \u0434\u043b\u044f \u043d\u0430\u043a\u043e\u043f\u043b\u0435\u043d\u0438\u044f \u043f\u0440\u043e\u043c\u0435\u0436\u0443\u0442\u043e\u0447\u043d\u043e\u0433\u043e \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0430,<\/p>\n<\/li>\n<li>\n<p><code>R<\/code> &#8212; \u0442\u0438\u043f \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0430, \u043e\u0442\u0434\u0430\u0432\u0430\u0435\u043c\u043e\u0433\u043e \u043a\u043e\u043b\u043b\u0435\u043a\u0442\u043e\u0440\u043e\u043c.<\/p>\n<\/li>\n<\/ul>\n<p><strong>\u041f\u0435\u0440\u0432\u044b\u0439 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440<\/strong> \u043c\u0435\u0442\u043e\u0434\u0430 <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/21\/docs\/api\/java.base\/java\/util\/stream\/Collector.html#of(java.util.function.Supplier,java.util.function.BiConsumer,java.util.function.BinaryOperator,java.util.function.Function,java.util.stream.Collector.Characteristics...)\" rel=\"noopener noreferrer nofollow\">of<\/a> &#8212; <strong> <\/strong><code>supplier<\/code> \u0434\u043e\u043b\u0436\u0435\u043d \u0441\u0441\u044b\u043b\u0430\u0442\u044c\u0441\u044f \u043d\u0430 \u043e\u0431\u044a\u0435\u043a\u0442 \u0441 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u044b\u043c \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u043e\u043c<\/p>\n<details class=\"spoiler\">\n<summary>Supplier<\/summary>\n<div class=\"spoiler__content\">\n<p><a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/21\/docs\/api\/java.base\/java\/util\/function\/Supplier.html\" rel=\"noopener noreferrer nofollow\">Supplier<\/a> \u0432 \u0441\u043f\u0440\u0430\u0432\u043e\u0447\u043d\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u0435<\/p>\n<pre><code class=\"java\">\/**  * Represents a supplier of results.  *  * &lt;p&gt;There is no requirement that a new or distinct result be returned each  * time the supplier is invoked.  *  * &lt;p&gt;This is a &lt;a href=\"package-summary.html\"&gt;functional interface&lt;\/a&gt;  * whose functional method is {@link #get()}.  *  * @param &lt;T&gt; the type of results supplied by this supplier  *  * @since 1.8  *\/ @FunctionalInterface public interface Supplier&lt;T&gt; {      \/**      * Gets a result.      *      * @return a result      *\/     T get(); }<\/code><\/pre>\n<\/div>\n<\/details>\n<p>\u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u0441\u043e\u0437\u0434\u0430\u043d \u043d\u0430 \u043c\u0435\u0441\u0442\u0435 \u0431\u043b\u0430\u0433\u043e\u0434\u0430\u0440\u044f \u0441\u0438\u043d\u0442\u0430\u043a\u0441\u0438\u0441\u0443 lambda-\u0444\u0443\u043d\u043a\u0446\u0438\u0439. \u0424\u0443\u043d\u043a\u0446\u0438\u044f \u0434\u043e\u043b\u0436\u043d\u0430 \u0432\u0435\u0440\u043d\u0443\u0442\u044c \u043e\u0431\u044a\u0435\u043a\u0442-\u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440 \u0434\u043b\u044f \u043d\u0430\u043a\u043e\u043f\u043b\u0435\u043d\u0438\u044f \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0430 \u0440\u0430\u0431\u043e\u0442\u044b \u043a\u043e\u043b\u043b\u0435\u043a\u0442\u043e\u0440\u0430. \u0412 \u043d\u0430\u0448\u0435\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u044d\u0442\u043e \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u043e \u0432\u0435\u0441\u044c\u043c\u0430 \u043f\u0440\u043e\u0441\u0442\u043e:<\/p>\n<pre><code class=\"java\">\/\/ Supplier: Creates a new ArrayList () -&gt; {     \/\/ reserve space for strings     return new ArrayList&lt;String&gt;(text.length()); }<\/code><\/pre>\n<p>\u041f\u0440\u0438 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0438 <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/21\/docs\/api\/java.base\/java\/util\/ArrayList.html\" rel=\"noopener noreferrer nofollow\">ArrayList<\/a> \u0435\u0433\u043e \u043a\u043e\u043d\u0441\u0442\u0440\u0443\u043a\u0442\u043e\u0440\u0443 \u043f\u0435\u0440\u0435\u0434\u0430\u0451\u0442\u0441\u044f \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u043e\u0432, \u043f\u043e\u0434 \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u043d\u0443\u0436\u043d\u043e \u0437\u0430\u0440\u0435\u0437\u0435\u0440\u0432\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043c\u0435\u0441\u0442\u043e \u0432\u043e \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0435\u043c \u043c\u0430\u0441\u0441\u0438\u0432\u0435. \u0415\u0441\u043b\u0438 \u043d\u0438\u0447\u0435\u0433\u043e \u043d\u0435 \u043f\u0435\u0440\u0435\u0434\u0430\u0432\u0430\u0442\u044c, \u0442\u043e \u043a\u043e\u043d\u0441\u0442\u0440\u0443\u043a\u0442\u043e\u0440 \u043f\u043e-\u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u0437\u0430\u0440\u0435\u0437\u0435\u0440\u0432\u0438\u0440\u0443\u0435\u0442 \u043c\u0435\u0441\u0442\u043e \u043d\u0430 10 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u043e\u0432 \u0438 \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0438\u0439 \u043c\u0430\u0441\u0441\u0438\u0432 \u0431\u0443\u0434\u0435\u0442 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u0440\u0430\u0441\u0448\u0438\u0440\u044f\u0442\u044c\u0441\u044f \u043f\u0440\u0438 \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u0438 11-\u0433\u043e \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430.  \u0414\u0430, <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/21\/docs\/api\/java.base\/java\/util\/ArrayList.html\" rel=\"noopener noreferrer nofollow\">ArrayList<\/a> &#8212; \u044d\u0442\u043e \u0431\u043e\u043b\u044c\u0448\u0435 array, \u0447\u0435\u043c list, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u0435\u0433\u043e \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u0435 \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442 \u043f\u0443\u0442\u0451\u043c \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u0432\u043d\u0443\u0442\u0440\u0438 <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/21\/docs\/api\/java.base\/java\/util\/ArrayList.html\" rel=\"noopener noreferrer nofollow\">ArrayList<\/a> \u043d\u043e\u0432\u043e\u0433\u043e \u043c\u0430\u0441\u0441\u0438\u0432\u0430 \u0431<em>\u043e<\/em>\u043b\u044c\u0448\u0435\u0433\u043e \u0440\u0430\u0437\u043c\u0435\u0440\u0430, \u043f\u043e\u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u043c \u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u0432 \u043d\u0435\u0433\u043e \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0445 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u043e\u0432 \u0438 \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u0435\u043c \u043f\u043e\u0441\u043b\u0435 \u043d\u0438\u0445 \u043d\u043e\u0432\u043e\u0433\u043e \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430. \u042d\u0442\u0438 \u043c\u0430\u043d\u0438\u043f\u0443\u043b\u044f\u0446\u0438\u0438 \u0432\u0435\u0441\u044c\u043c\u0430 \u0437\u0430\u0442\u0440\u0430\u0442\u043d\u044b \u0438 \u044f \u0440\u0435\u0448\u0438\u043b \u0438\u0445 \u0438\u0437\u0431\u0435\u0436\u0430\u0442\u044c, \u0432\u044b\u0434\u0435\u043b\u0438\u0432 \u043c\u0435\u0441\u0442\u043e \u043f\u043e\u0434 \u0441\u0442\u0440\u043e\u043a\u0438 \u0441 \u043a\u043e\u0434\u0430\u043c\u0438 \u041c\u043e\u0440\u0437\u0435 (\u043d\u0430 \u0441\u0430\u043c\u043e\u043c \u0434\u0435\u043b\u0435 \u043f\u043e\u0434 \u0441\u0441\u044b\u043b\u043a\u0438 \u043d\u0430 \u043e\u0431\u044a\u0435\u043a\u0442\u044b \u043a\u043b\u0430\u0441\u0441\u0430 <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/21\/docs\/api\/java.base\/java\/lang\/String.html\" rel=\"noopener noreferrer nofollow\">String<\/a>, \u0440\u0430\u0437\u043c\u0435\u0449\u0451\u043d\u043d\u044b\u0435 \u0433\u0434\u0435-\u0442\u043e \u0432 \u043f\u0430\u043c\u044f\u0442\u0438, \u043d\u043e \u043d\u0435 \u0432 \u0441\u0430\u043c\u043e\u043c <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/21\/docs\/api\/java.base\/java\/util\/ArrayList.html\" rel=\"noopener noreferrer nofollow\">ArrayList<\/a>). \u041f\u043e\u0441\u043b\u0435 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u043e\u0442\u0434\u0430\u0451\u043c \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440 \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c\u0443 \u043a\u043e\u043b\u043b\u0435\u043a\u0442\u043e\u0440\u0430 \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440\u043e\u043c <code>return<\/code>.<\/p>\n<blockquote>\n<p>\u041a\u043e\u043d\u0435\u0447\u043d\u043e, \u0432\u043c\u0435\u0441\u0442\u043e <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/21\/docs\/api\/java.base\/java\/util\/ArrayList.html\" rel=\"noopener noreferrer nofollow\">ArrayList<\/a> \u043c\u043e\u0436\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0438 \u0434\u0440\u0443\u0433\u0438\u0435 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u044b, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440 <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/21\/docs\/api\/java.base\/java\/util\/LinkedList.html\" rel=\"noopener noreferrer nofollow\">LinkedList<\/a>. \u042f \u0432\u044b\u0431\u0440\u0430\u043b <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/21\/docs\/api\/java.base\/java\/util\/ArrayList.html\" rel=\"noopener noreferrer nofollow\">ArrayList<\/a> \u043f\u043e \u043f\u0440\u0438\u0447\u0438\u043d\u0435 \u0431\u043e\u043b\u0435\u0435 \u0432\u044b\u0441\u043e\u043a\u043e\u0439 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u043d\u043e\u0432\u043e\u0433\u043e \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430 \u0438 \u0434\u043e\u0441\u0442\u0443\u043f\u0430 \u043a \u0438\u043c\u0435\u044e\u0449\u0438\u043c\u0441\u044f \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430\u043c \u0432 \u0442\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435, \u043a\u043e\u0433\u0434\u0430 \u0438\u0442\u043e\u0433\u043e\u0432\u043e\u0435 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u0435\u043c\u044b\u0445 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u043e\u0432 \u0438\u0437\u0432\u0435\u0441\u0442\u043d\u043e \u0437\u0430\u0440\u0430\u043d\u0435\u0435 \u0438 \u043f\u043e\u0434 \u043d\u0438\u0445 \u043c\u043e\u0436\u043d\u043e \u0432\u044b\u0434\u0435\u043b\u0438\u0442\u044c \u043d\u0435\u043f\u0440\u0435\u0440\u044b\u0432\u043d\u043e\u0435 \u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0441\u0442\u0432\u043e \u0432 \u043f\u0430\u043c\u044f\u0442\u0438.  \u0412 \u043d\u0430\u0448\u0435\u043c \u043f\u0440\u0438\u043c\u0435\u0440\u0435 \u044d\u0442\u043e \u043d\u0435 \u0442\u0430\u043a \u0443\u0436 \u0432\u0430\u0436\u043d\u043e \u0438 \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0442\u043e\u0442 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0441\u043e\u0447\u0442\u0451\u0442\u0435 \u0431\u043e\u043b\u0435\u0435 \u043f\u043e\u0434\u0445\u043e\u0434\u044f\u0449\u0438\u043c.<\/p>\n<\/blockquote>\n<p><strong>\u0412\u0442\u043e\u0440\u043e\u0439 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440<\/strong> <code>accumulator<\/code> \u0434\u043e\u043b\u0436\u0435\u043d \u0431\u044b\u0442\u044c \u0441\u0441\u044b\u043b\u043a\u043e\u0439 \u043d\u0430 \u043e\u0431\u044a\u0435\u043a\u0442 \u0441 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u043e\u043c<\/p>\n<details class=\"spoiler\">\n<summary>BiConsumer<\/summary>\n<div class=\"spoiler__content\">\n<p><a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/21\/docs\/api\/java.base\/java\/util\/function\/BiConsumer.html\" rel=\"noopener noreferrer nofollow\">BiConsumer<\/a> \u0432 \u0441\u043f\u0440\u0430\u0432\u043e\u0447\u043d\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u0435<\/p>\n<pre><code class=\"java\">\/**  * Represents an operation that accepts two input arguments and returns no  * result.  This is the two-arity specialization of {@link Consumer}.  * Unlike most other functional interfaces, {@code BiConsumer} is expected  * to operate via side-effects.  *  * &lt;p&gt;This is a &lt;a href=\"package-summary.html\"&gt;functional interface&lt;\/a&gt;  * whose functional method is {@link #accept(Object, Object)}.  *  * @param &lt;T&gt; the type of the first argument to the operation  * @param &lt;U&gt; the type of the second argument to the operation  *  * @see Consumer  * @since 1.8  *\/ @FunctionalInterface public interface BiConsumer&lt;T, U&gt; {      \/**      * Performs this operation on the given arguments.      *      * @param t the first input argument      * @param u the second input argument      *\/     void accept(T t, U u);      \/**      * Returns a composed {@code BiConsumer} that performs, in sequence, this      * operation followed by the {@code after} operation. If performing either      * operation throws an exception, it is relayed to the caller of the      * composed operation.  If performing this operation throws an exception,      * the {@code after} operation will not be performed.      *      * @param after the operation to perform after this operation      * @return a composed {@code BiConsumer} that performs in sequence this      * operation followed by the {@code after} operation      * @throws NullPointerException if {@code after} is null      *\/     default BiConsumer&lt;T, U&gt; andThen(BiConsumer&lt;? super T, ? super U&gt; after) {         Objects.requireNonNull(after);          return (l, r) -&gt; {             accept(l, r);             after.accept(l, r);         };     } }<\/code><\/pre>\n<\/div>\n<\/details>\n<p>\u041d\u0430\u043c \u043d\u0443\u0436\u043d\u043e \u043d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u043a\u043e\u0434 \u043c\u0435\u0442\u043e\u0434\u0430 <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/21\/docs\/api\/java.base\/java\/util\/function\/BiConsumer.html#accept(T,U)\" rel=\"noopener noreferrer nofollow\">accept<\/a>, \u043f\u0440\u0438\u043d\u0438\u043c\u0430\u044e\u0449\u0438\u0439 \u043d\u0430 \u0432\u0445\u043e\u0434 \u0441\u0441\u044b\u043b\u043a\u0443 \u043d\u0430 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440 <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/21\/docs\/api\/java.base\/java\/util\/ArrayList.html\" rel=\"noopener noreferrer nofollow\">ArrayList<\/a> \u0438 \u043d\u0430 \u044d\u043b\u0435\u043c\u0435\u043d\u0442 <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/21\/docs\/api\/java.base\/java\/lang\/String.html\" rel=\"noopener noreferrer nofollow\">String<\/a> \u0438\u0437 \u043f\u043e\u0442\u043e\u043a\u0430, \u0441 \u043a\u043e\u0442\u043e\u0440\u044b\u043c \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u043a\u043e\u043b\u043b\u0435\u043a\u0442\u043e\u0440.<\/p>\n<p>\u0420\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/21\/docs\/api\/java.base\/java\/util\/function\/BiConsumer.html\" rel=\"noopener noreferrer nofollow\">BiConsumer<\/a> \u0432 \u0432\u0438\u0434\u0435 lambda-\u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u0432\u044b\u0433\u043b\u044f\u0434\u0438\u0442 \u0432\u043e\u0442 \u0442\u0430\u043a:<\/p>\n<pre><code class=\"java\">\/\/ Accumulator: Adds strings to the list skipping duplicated spaces (list, s) -&gt; {     if (!s.equals(\" \") || (!list.isEmpty() &amp;&amp; !list.getLast().equals(\" \"))) {         list.addLast(s);     } }<\/code><\/pre>\n<p>\u041d\u0430 \u0432\u0445\u043e\u0434 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u043f\u043e\u0441\u0442\u0443\u043f\u0430\u0435\u0442 \u0441\u0441\u044b\u043b\u043a\u0430 \u043d\u0430 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440 <code>list<\/code> (\u0441\u043e\u0437\u0434\u0430\u043d\u043d\u044b\u0439 \u0432\u044b\u0437\u043e\u0432\u043e\u043c <code>supplier<\/code> \u043e\u0431\u044a\u0435\u043a\u0442 \u043a\u043b\u0430\u0441\u0441\u0430 <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/21\/docs\/api\/java.base\/java\/util\/ArrayList.html\" rel=\"noopener noreferrer nofollow\">ArrayList<\/a>) \u0438 \u043d\u0430 \u043e\u0447\u0435\u0440\u0435\u0434\u043d\u043e\u0439 \u044d\u043b\u0435\u043c\u0435\u043d\u0442 \u0438\u0437 \u043f\u043e\u0442\u043e\u043a\u0430 &#8212; \u0441\u0442\u0440\u043e\u043a\u0443 <code>s<\/code>, \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0449\u0443\u044e \u0442\u043e\u0447\u043a\u0438-\u0442\u0438\u0440\u0435 \u043a\u043e\u0434\u0430 \u041c\u043e\u0440\u0437\u0435 \u0438\u043b\u0438 \u043f\u0440\u043e\u0431\u0435\u043b. \u0412 \u0430\u043a\u043a\u0443\u043c\u0443\u043b\u044f\u0442\u043e\u0440\u0435 \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u0430 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0430\u044f \u043b\u043e\u0433\u0438\u043a\u0430:<\/p>\n<ul>\n<li>\n<p>\u0415\u0441\u043b\u0438 \u0432\u0445\u043e\u0434\u043d\u0430\u044f \u0441\u0442\u0440\u043e\u043a\u0430 <code>s<\/code> \u043d\u0435 \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043f\u0440\u043e\u0431\u0435\u043b\u043e\u043c, \u0442\u043e \u043e\u043d\u0430 \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0432 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440 <code>list<\/code>.<\/p>\n<\/li>\n<li>\n<p>\u0415\u0441\u043b\u0438 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440 <code>list<\/code> \u043d\u0435 \u043f\u0443\u0441\u0442 \u0438 \u0435\u0433\u043e \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0439 \u044d\u043b\u0435\u043c\u0435\u043d\u0442 \u043d\u0435 \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0441\u0442\u0440\u043e\u043a\u043e\u0439-\u043f\u0440\u043e\u0431\u0435\u043b\u043e\u043c, \u0442\u043e \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u0435\u043c \u0432\u0445\u043e\u0434\u043d\u0443\u044e \u0441\u0442\u0440\u043e\u043a\u0443 <code>s<\/code> \u0432 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440 <code>list<\/code>.<\/p>\n<\/li>\n<\/ul>\n<p>\u042d\u0442\u0430 \u043b\u043e\u0433\u0438\u043a\u0430 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u0438\u0437\u0431\u0435\u0436\u0430\u0442\u044c \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0432 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u0438\u0445 \u043f\u0440\u043e\u0431\u0435\u043b\u043e\u0432 \u043f\u043e\u0434\u0440\u044f\u0434. \u041d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0441\u0442\u044c \u0442\u0430\u043a\u043e\u0433\u043e \u043f\u043e\u0434\u0445\u043e\u0434\u0430 \u0432\u043e\u0437\u043d\u0438\u043a\u0430\u0435\u0442 \u043f\u043e \u0442\u043e\u0439 \u043f\u0440\u0438\u0447\u0438\u043d\u0435, \u0447\u0442\u043e:<\/p>\n<ul>\n<li>\n<p>\u0418\u0441\u0445\u043e\u0434\u043d\u044b\u0439 \u0442\u0435\u043a\u0441\u0442 \u043c\u043e\u0436\u0435\u0442 \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0442\u044c \u043a\u0440\u0430\u0442\u043d\u044b\u0435 \u043f\u0440\u043e\u0431\u0435\u043b\u044b.<\/p>\n<\/li>\n<li>\n<p>\u0418\u0441\u0445\u043e\u0434\u043d\u044b\u0439 \u0442\u0435\u043a\u0441\u0442 \u043c\u043e\u0436\u0435\u0442 \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0442\u044c \u0441\u0438\u043c\u0432\u043e\u043b\u044b, \u0434\u043b\u044f \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0443 \u043d\u0430\u0441 \u043d\u0435\u0442 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0435\u0433\u043e \u043a\u043e\u0434\u0430 \u041c\u043e\u0440\u0437\u0435, \u0438 \u0432 \u044d\u0442\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u044f <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/21\/docs\/api\/java.base\/java\/util\/stream\/IntStream.html#mapToObj(java.util.function.IntFunction)\" rel=\"noopener noreferrer nofollow\">mapToObj<\/a> \u0432\u044b\u0434\u0430\u0451\u0442 \u043f\u0440\u043e\u0431\u0435\u043b \u0432 \u0432\u044b\u0445\u043e\u0434\u043d\u043e\u0439 \u043f\u043e\u0442\u043e\u043a \u0441\u0442\u0440\u043e\u043a.<\/p>\n<\/li>\n<\/ul>\n<p>\u0412 \u043a\u043e\u043d\u0435\u0447\u043d\u043e\u043c \u0441\u0447\u0451\u0442\u0435, \u043c\u043d\u0435 \u043f\u043e\u043a\u0430\u0437\u0430\u043b\u043e\u0441\u044c \u043f\u0440\u043e\u0449\u0435 \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u043b\u043e\u0433\u0438\u043a\u0443 \u0443\u0434\u0430\u043b\u0435\u043d\u0438\u044f \u043a\u0440\u0430\u0442\u043d\u044b\u0445 \u043f\u0440\u043e\u0431\u0435\u043b\u043e\u0432 \u043d\u0430 \u0443\u0440\u043e\u0432\u043d\u0435 \u043a\u043e\u043b\u043b\u0435\u043a\u0442\u043e\u0440\u0430, \u0447\u0435\u043c \u043a\u0430\u043a-\u0442\u043e \u0438\u043d\u0430\u0447\u0435.<\/p>\n<p><strong>\u0422\u0440\u0435\u0442\u0438\u0439 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440<\/strong> \u043c\u0435\u0442\u043e\u0434\u0430 <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/21\/docs\/api\/java.base\/java\/util\/stream\/Collector.html#of(java.util.function.Supplier,java.util.function.BiConsumer,java.util.function.BinaryOperator,java.util.function.Function,java.util.stream.Collector.Characteristics...)\" rel=\"noopener noreferrer nofollow\">of<\/a> \u043d\u0430\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f <code>combiner<\/code> \u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0432 \u043f\u0430\u0440\u0430\u043b\u043b\u0435\u043b\u044c\u043d\u043e\u043c \u0440\u0435\u0436\u0438\u043c\u0435 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u043f\u043e\u0442\u043e\u043a\u0430 \u0434\u043b\u044f \u043e\u0431\u044a\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u043e\u0432, \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u043d\u044b\u0445 \u0438\u0437 \u0440\u0430\u0437\u043d\u044b\u0445 threads. \u0423 \u043d\u0430\u0441 \u043f\u0430\u0440\u0430\u043b\u043b\u0435\u043b\u044c\u043d\u044b\u0435 \u043f\u043e\u0442\u043e\u043a\u0438 \u043d\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0442\u0441\u044f, \u043d\u043e \u043a\u043e\u0440\u0440\u0435\u043a\u0442\u043d\u0443\u044e \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044e <code>combiner<\/code> \u043d\u0443\u0436\u043d\u043e \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u0438\u0442\u044c. <code>combiner<\/code> \u0434\u043e\u043b\u0436\u0435\u043d \u0441\u0441\u044b\u043b\u0430\u0442\u044c\u0441\u044f \u043d\u0430 \u043e\u0431\u044a\u0435\u043a\u0442 \u0441 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u043e\u043c<\/p>\n<details class=\"spoiler\">\n<summary>BinaryOperator<\/summary>\n<div class=\"spoiler__content\">\n<p><a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/21\/docs\/api\/java.base\/java\/util\/function\/BinaryOperator.html\" rel=\"noopener noreferrer nofollow\">BinaryOperator<\/a> \u0432 \u0441\u043f\u0440\u0430\u0432\u043e\u0447\u043d\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u0435<\/p>\n<pre><code class=\"java\">\/**  * Represents an operation upon two operands of the same type, producing a result  * of the same type as the operands.  This is a specialization of  * {@link BiFunction} for the case where the operands and the result are all of  * the same type.  *  * &lt;p&gt;This is a &lt;a href=\"package-summary.html\"&gt;functional interface&lt;\/a&gt;  * whose functional method is {@link #apply(Object, Object)}.  *  * @param &lt;T&gt; the type of the operands and result of the operator  *  * @see BiFunction  * @see UnaryOperator  * @since 1.8  *\/ @FunctionalInterface public interface BinaryOperator&lt;T&gt; extends BiFunction&lt;T,T,T&gt; {     \/**      * Returns a {@link BinaryOperator} which returns the lesser of two elements      * according to the specified {@code Comparator}.      *      * @param &lt;T&gt; the type of the input arguments of the comparator      * @param comparator a {@code Comparator} for comparing the two values      * @return a {@code BinaryOperator} which returns the lesser of its operands,      *         according to the supplied {@code Comparator}      * @throws NullPointerException if the argument is null      *\/     public static &lt;T&gt; BinaryOperator&lt;T&gt; minBy(Comparator&lt;? super T&gt; comparator) {         Objects.requireNonNull(comparator);         return (a, b) -&gt; comparator.compare(a, b) &lt;= 0 ? a : b;     }      \/**      * Returns a {@link BinaryOperator} which returns the greater of two elements      * according to the specified {@code Comparator}.      *      * @param &lt;T&gt; the type of the input arguments of the comparator      * @param comparator a {@code Comparator} for comparing the two values      * @return a {@code BinaryOperator} which returns the greater of its operands,      *         according to the supplied {@code Comparator}      * @throws NullPointerException if the argument is null      *\/     public static &lt;T&gt; BinaryOperator&lt;T&gt; maxBy(Comparator&lt;? super T&gt; comparator) {         Objects.requireNonNull(comparator);         return (a, b) -&gt; comparator.compare(a, b) &gt;= 0 ? a : b;     } }<\/code><\/pre>\n<\/div>\n<\/details>\n<p>\u0412 \u044d\u0442\u043e\u043c \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0435 \u043d\u0435\u0442 \u043d\u0438\u0447\u0435\u0433\u043e, \u0447\u0442\u043e \u043c\u044b \u0434\u043e\u043b\u0436\u043d\u044b \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u0432 \u0441\u0432\u043e\u0451\u043c \u043a\u043e\u0434\u0435.  \u041d\u043e \u0441\u0430\u043c <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/21\/docs\/api\/java.base\/java\/util\/function\/BinaryOperator.html\" rel=\"noopener noreferrer nofollow\">BinaryOperator<\/a> \u0443\u043d\u0430\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u043d \u043e\u0442<\/p>\n<details class=\"spoiler\">\n<summary>BiFunction<\/summary>\n<div class=\"spoiler__content\">\n<p><a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/21\/docs\/api\/java.base\/java\/util\/function\/BiFunction.html\" rel=\"noopener noreferrer nofollow\">BiFunction<\/a> \u0432 \u0441\u043f\u0440\u0430\u0432\u043e\u0447\u043d\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u0435<\/p>\n<pre><code class=\"java\">\/**  * Represents a function that accepts two arguments and produces a result.  * This is the two-arity specialization of {@link Function}.  *  * &lt;p&gt;This is a &lt;a href=\"package-summary.html\"&gt;functional interface&lt;\/a&gt;  * whose functional method is {@link #apply(Object, Object)}.  *  * @param &lt;T&gt; the type of the first argument to the function  * @param &lt;U&gt; the type of the second argument to the function  * @param &lt;R&gt; the type of the result of the function  *  * @see Function  * @since 1.8  *\/ @FunctionalInterface public interface BiFunction&lt;T, U, R&gt; {      \/**      * Applies this function to the given arguments.      *      * @param t the first function argument      * @param u the second function argument      * @return the function result      *\/     R apply(T t, U u);      \/**      * Returns a composed function that first applies this function to      * its input, and then applies the {@code after} function to the result.      * If evaluation of either function throws an exception, it is relayed to      * the caller of the composed function.      *      * @param &lt;V&gt; the type of output of the {@code after} function, and of the      *           composed function      * @param after the function to apply after this function is applied      * @return a composed function that first applies this function and then      * applies the {@code after} function      * @throws NullPointerException if after is null      *\/     default &lt;V&gt; BiFunction&lt;T, U, V&gt; andThen(Function&lt;? super R, ? extends V&gt; after) {         Objects.requireNonNull(after);         return (T t, U u) -&gt; after.apply(apply(t, u));     } }<\/code><\/pre>\n<\/div>\n<\/details>\n<p>\u0412 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u043e\u0431\u044a\u044f\u0432\u043b\u0435\u043d \u043c\u0435\u0442\u043e\u0434 <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/21\/docs\/api\/java.base\/java\/util\/function\/BiFunction.html#apply(T,U)\" rel=\"noopener noreferrer nofollow\">apply<\/a>. \u041d\u0430\u0448\u0430 lambda-\u0444\u0443\u043d\u043a\u0446\u0438\u044f \u0434\u043e\u043b\u0436\u043d\u0430 \u0438\u043c\u043f\u043b\u0435\u043c\u0435\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u044d\u0442\u043e\u0442 \u043c\u0435\u0442\u043e\u0434. \u041a\u043e\u0434 \u0437\u0434\u0435\u0441\u044c \u043f\u0440\u043e\u0441\u0442 \u0438 \u043d\u0435\u0437\u0430\u0442\u0435\u0439\u043b\u0438\u0432:<\/p>\n<pre><code class=\"java\">\/\/ Combiner: Combines two lists (for parallel streams) (list1, list2) -&gt; {     list1.addAll(list2);     return list1; },<\/code><\/pre>\n<p>\u0414\u043e\u0431\u0430\u0432\u043b\u044f\u0435\u043c \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u044b \u0432\u0442\u043e\u0440\u043e\u0433\u043e \u0441\u043f\u0438\u0441\u043a\u0430 \u043a \u043f\u0435\u0440\u0432\u043e\u043c\u0443 \u0438 \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u043c \u043f\u0435\u0440\u0432\u044b\u0439 \u0441\u043f\u0438\u0441\u043e\u043a.<\/p>\n<p><strong>\u0427\u0435\u0442\u0432\u0451\u0440\u0442\u044b\u0439 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440<\/strong> \u043c\u0435\u0442\u043e\u0434\u0430 <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/21\/docs\/api\/java.base\/java\/util\/stream\/Collector.html#of(java.util.function.Supplier,java.util.function.BiConsumer,java.util.function.BinaryOperator,java.util.function.Function,java.util.stream.Collector.Characteristics...)\" rel=\"noopener noreferrer nofollow\">of<\/a>, <code>finisher<\/code>, \u0444\u043e\u0440\u043c\u0438\u0440\u0443\u0435\u0442 \u0438\u0442\u043e\u0433\u043e\u0432\u044b\u0439 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0440\u0430\u0431\u043e\u0442\u044b \u0432\u0441\u0435\u0433\u043e \u043a\u043e\u043b\u043b\u0435\u043a\u0442\u043e\u0440\u0430. \u0427\u0435\u0440\u0435\u0437 <code>finisher<\/code> \u0432 \u043c\u0435\u0442\u043e\u0434 <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/21\/docs\/api\/java.base\/java\/util\/stream\/Collector.html#of(java.util.function.Supplier,java.util.function.BiConsumer,java.util.function.BinaryOperator,java.util.function.Function,java.util.stream.Collector.Characteristics...)\" rel=\"noopener noreferrer nofollow\">of<\/a> \u043f\u0435\u0440\u0435\u0434\u0430\u0451\u0442\u0441\u044f \u043e\u0431\u044a\u0435\u043a\u0442 \u0441 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u043e\u043c<\/p>\n<details class=\"spoiler\">\n<summary>Function<\/summary>\n<div class=\"spoiler__content\">\n<p><a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/21\/docs\/api\/java.base\/java\/util\/function\/Function.html\" rel=\"noopener noreferrer nofollow\">Function<\/a> \u0432 \u0441\u043f\u0440\u0430\u0432\u043e\u0447\u043d\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u0435 \u043f\u043e<\/p>\n<pre><code class=\"java\">\/**  * Represents a function that accepts one argument and produces a result.  *  * &lt;p&gt;This is a &lt;a href=\"package-summary.html\"&gt;functional interface&lt;\/a&gt;  * whose functional method is {@link #apply(Object)}.  *  * @param &lt;T&gt; the type of the input to the function  * @param &lt;R&gt; the type of the result of the function  *  * @since 1.8  *\/ @FunctionalInterface public interface Function&lt;T, R&gt; {      \/**      * Applies this function to the given argument.      *      * @param t the function argument      * @return the function result      *\/     R apply(T t);      \/**      * Returns a composed function that first applies the {@code before}      * function to its input, and then applies this function to the result.      * If evaluation of either function throws an exception, it is relayed to      * the caller of the composed function.      *      * @param &lt;V&gt; the type of input to the {@code before} function, and to the      *           composed function      * @param before the function to apply before this function is applied      * @return a composed function that first applies the {@code before}      * function and then applies this function      * @throws NullPointerException if before is null      *      * @see #andThen(Function)      *\/     default &lt;V&gt; Function&lt;V, R&gt; compose(Function&lt;? super V, ? extends T&gt; before) {         Objects.requireNonNull(before);         return (V v) -&gt; apply(before.apply(v));     }      \/**      * Returns a composed function that first applies this function to      * its input, and then applies the {@code after} function to the result.      * If evaluation of either function throws an exception, it is relayed to      * the caller of the composed function.      *      * @param &lt;V&gt; the type of output of the {@code after} function, and of the      *           composed function      * @param after the function to apply after this function is applied      * @return a composed function that first applies this function and then      * applies the {@code after} function      * @throws NullPointerException if after is null      *      * @see #compose(Function)      *\/     default &lt;V&gt; Function&lt;T, V&gt; andThen(Function&lt;? super R, ? extends V&gt; after) {         Objects.requireNonNull(after);         return (T t) -&gt; after.apply(apply(t));     }      \/**      * Returns a function that always returns its input argument.      *      * @param &lt;T&gt; the type of the input and output objects to the function      * @return a function that always returns its input argument      *\/     static &lt;T&gt; Function&lt;T, T&gt; identity() {         return t -&gt; t;     } } <\/code><\/pre>\n<\/div>\n<\/details>\n<p>\u0418 \u043d\u0430\u043c \u043d\u0443\u0436\u043d\u043e \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u043c\u0435\u0442\u043e\u0434 <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/21\/docs\/api\/java.base\/java\/util\/function\/Function.html#apply(T)\" rel=\"noopener noreferrer nofollow\">apply<\/a> \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430 <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/21\/docs\/api\/java.base\/java\/util\/function\/Function.html\" rel=\"noopener noreferrer nofollow\">Function<\/a> \u0447\u0442\u043e\u0431\u044b \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u0442\u044c \u043f\u0435\u0440\u0435\u0434\u0430\u043d\u043d\u044b\u0439 \u0432 <code>finisher<\/code> \u0437\u0430\u043f\u043e\u043b\u043d\u0435\u043d\u043d\u044b\u0439 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440 <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/21\/docs\/api\/java.base\/java\/util\/ArrayList.html\" rel=\"noopener noreferrer nofollow\">ArrayList&lt;String&gt;<\/a> \u0432 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0438\u0440\u0443\u044e\u0449\u0443\u044e \u0441\u0442\u0440\u043e\u043a\u0443 <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/21\/docs\/api\/java.base\/java\/lang\/String.html\" rel=\"noopener noreferrer nofollow\">String<\/a>:<\/p>\n<pre><code class=\"java\">\/\/ Finisher: Joins the list elements into a single string list -&gt; {     if (!list.isEmpty()) {         int to = list.getLast().equals(\" \") ? list.size() - 1 : list.size();         return String.join(\"|\", list.subList(0, to));     }     return \"\"; }<\/code><\/pre>\n<p>\u0417\u0434\u0435\u0441\u044c \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u0442\u0441\u044f \u0432\u043e\u0442 \u0447\u0442\u043e: \u0438\u0437 \u0441\u0442\u0440\u043e\u043a \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u0430, \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0449\u0438\u0445 \u043a\u043e\u0434 \u041c\u043e\u0440\u0437\u0435 \u0438\u043b\u0438 \u043f\u0440\u043e\u0431\u0435\u043b, \u0444\u043e\u0440\u043c\u0438\u0440\u0443\u0435\u043c \u043e\u0434\u043d\u0443 \u0441\u0442\u0440\u043e\u043a\u0443, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u043a\u043e\u0434\u044b \u041c\u043e\u0440\u0437\u0435 \u0438 \u043f\u0440\u043e\u0431\u0435\u043b\u044b \u0440\u0430\u0437\u0434\u0435\u043b\u0435\u043d\u044b \u0441\u0438\u043c\u0432\u043e\u043b\u043e\u043c <code>|<\/code>. \u041f\u0435\u0440\u0435\u0434 \u044d\u0442\u0438\u043c \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435\u043c \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u0435\u043c, \u043d\u0435\u0442 \u043b\u0438 \u0432 \u043a\u043e\u043d\u0446\u0435 \u0441\u043f\u0438\u0441\u043a\u0430 \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u0445 \u0441\u0442\u0440\u043e\u043a \u0441\u0442\u0440\u043e\u043a\u0438-\u043f\u0440\u043e\u0431\u0435\u043b\u0430, \u0430 \u043f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u0442\u0430\u043a\u043e\u0439 \u043f\u0440\u043e\u0431\u0435\u043b \u043d\u0430 \u0432\u044b\u0445\u043e\u0434\u0435 \u043d\u0430\u043c \u043d\u0435 \u043d\u0443\u0436\u0435\u043d, \u043d\u0435 \u0432\u043a\u043b\u044e\u0447\u0430\u0435\u043c \u0435\u0433\u043e \u0432 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442.<\/p>\n<h4>\u041f\u043e\u0441\u043c\u043e\u0442\u0440\u0438\u043c, \u0447\u0442\u043e \u0443 \u043d\u0430\u0441 \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u0442\u0441\u044f<\/h4>\n<p>\u041f\u0440\u043e\u0441\u0442\u043e \u0441\u043e\u0437\u0434\u0430\u0451\u043c \u043e\u0431\u044a\u0435\u043a\u0442 \u043a\u043b\u0430\u0441\u0441\u0430 <code>MorseProcessor<\/code> \u0438 \u0432\u044b\u0437\u044b\u0432\u0430\u0435\u043c \u0435\u0433\u043e \u043c\u0435\u0442\u043e\u0434 <code>textToMorse<\/code>:<\/p>\n<pre><code class=\"java\">\/**  * Main class for the morse code transmitter.  *\/ public class Main {      \/**      * Main method      *      * @param args the arguments      *\/     public static void main(String[] args) {         \/\/ create a new MorseProcessor         MorseProcessor mp = new MorseProcessor();         \/\/ convert the text to Morse code         String morse = mp.textToMorse(\"Hello world\");         \/\/ print         System.out.println(\"Morse code: \" + morse);     } }<\/code><\/pre>\n<p>\u0412 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0435 \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u043c<\/p>\n<pre><code>Morse code: ....|.|.-..|.-..|---| |.--|---|.-.|.-..|-..<\/code><\/pre>\n<p>\u0421\u0438\u043c\u0432\u043e\u043b\u044b <code>|<\/code> \u0440\u0430\u0437\u0434\u0435\u043b\u044f\u044e\u0442 \u0431\u0443\u043a\u0432\u044b, \u043f\u0440\u043e\u0431\u0435\u043b \u043e\u0442\u0434\u0435\u043b\u044f\u0435\u0442 \u0434\u0440\u0443\u0433 \u043e\u0442 \u0434\u0440\u0443\u0433\u0430 \u0441\u043b\u043e\u0432\u0430. \u0420\u0430\u0437\u043d\u044b\u0435 \u0440\u0430\u0437\u0434\u0435\u043b\u0438\u0442\u0435\u043b\u0438 \u0444\u043e\u0440\u043c\u0438\u0440\u0443\u044e\u0442 \u043f\u0430\u0443\u0437\u044b \u0440\u0430\u0437\u043d\u043e\u0439 \u0434\u043b\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u043f\u0440\u0438 \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0435 \u0441\u0438\u0433\u043d\u0430\u043b\u0430 \u0432 \u043b\u0438\u043d\u0438\u044e \u0438\u043b\u0438 \u0432 \u044d\u0444\u0438\u0440.<\/p>\n<p>\u041d\u0430 \u043c\u043e\u0439 \u0432\u0437\u0433\u043b\u044f\u0434, \u043c\u0435\u0442\u043e\u0434 <code>textToMorse<\/code> \u043f\u043e\u043b\u0443\u0447\u0438\u043b\u0441\u044f \u043d\u0435 \u043e\u0447\u0435\u043d\u044c \u0447\u0438\u0442\u0430\u0435\u043c\u044b\u043c. \u0418 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0432\u0435\u043b\u0438\u043a\u043e\u0432\u0430\u0442. \u041a\u0430\u0436\u0435\u0442\u0441\u044f, \u0447\u0442\u043e \u0435\u0433\u043e \u0432\u0430\u0440\u0438\u0430\u043d\u0442 \u0432 \u0438\u043c\u043f\u0435\u0440\u0430\u0442\u0438\u0432\u043d\u043e\u043c \u0441\u0442\u0438\u043b\u0435, \u0441 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u0446\u0438\u043a\u043b\u0430, \u043a\u043e\u0440\u043e\u0447\u0435 \u0438 \u043f\u043e\u043d\u044f\u0442\u043d\u0435\u0435:<\/p>\n<pre><code class=\"java\">    \/**      * Convert text to morse code      *      * @param text the text to convert      * @return the morse code string, for example: \".-|...|.-.\"      *\/     String textToMorse(String text) {       ArrayList&lt;String&gt; acc = new ArrayList&lt;&gt;(text.length());       for (int c : text.toUpperCase().toCharArray()) {           String code;           if (c == ' ') { \/\/ if the character is a space               code = \" \";           } else {               \/\/ get the morse code for the character               code = morseCodes.get(c);               \/\/ code may be null               if (code == null) code = \" \";           }           \/\/ if `code` is not \" \" or the last String in accumulator is not \" \"...           if (!code.equals(\" \") || (!acc.isEmpty() &amp;&amp; !acc.getLast().equals(\" \"))) {               \/\/ ... add `code` to accumulator               acc.add(code);           }       }       if (acc.isEmpty()) return \"\";       int to = acc.getLast().equals(\" \") ? acc.size() - 1 : acc.size();       return String.join(\"|\", acc.subList(0, to));   }<\/code><\/pre>\n<p>\u041b\u0438\u0431\u043e \u044f \u043d\u0435 \u0443\u043c\u0435\u044e \u0433\u043e\u0442\u043e\u0432\u0438\u0442\u044c Stream API \ud83d\ude04.<\/p>\n<h4>\u0413\u0435\u043d\u0435\u0440\u0438\u0440\u0443\u0435\u043c \u0430\u043d\u0430\u043b\u043e\u0433\u043e\u0432\u044b\u0439 \u0441\u0438\u0433\u043d\u0430\u043b \u0434\u043b\u044f \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0438 \u043f\u043e \u0440\u0430\u0434\u0438\u043e \u0438\u043b\u0438 \u0447\u0435\u0440\u0435\u0437 \u043a\u0430\u043d\u0430\u043b \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u043d\u043e\u0439 \u0441\u0432\u044f\u0437\u0438<\/h4>\n<p>\u0414\u043b\u044f \u043d\u0430\u0447\u0430\u043b\u0430 \u0440\u0430\u0441\u0441\u043a\u0430\u0436\u0443 \u043e \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0431\u0430\u0437\u043e\u0432\u044b\u0445 \u043f\u043e\u043d\u044f\u0442\u0438\u044f\u0445, \u043a\u043e\u0442\u043e\u0440\u044b\u0435, \u0432 \u0441\u0438\u043b\u0443 \u0441\u043f\u0435\u0446\u0438\u0444\u0438\u0447\u043d\u043e\u0441\u0442\u0438 \u0438 \u043d\u0435-\u043c\u0435\u0439\u043d\u0441\u0442\u0440\u0438\u043c\u043d\u043e\u0441\u0442\u0438 \u044d\u0442\u043e\u0439 \u043e\u0431\u043b\u0430\u0441\u0442\u0438, \u043d\u0435 \u0432\u0441\u0435\u043c \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0441\u0442\u0430\u043c \u0438\u0437\u0432\u0435\u0441\u0442\u043d\u044b.<\/p>\n<p>\u041f\u0440\u0438 \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0435 \u043f\u043e \u0440\u0430\u0434\u0438\u043e\u0442\u0435\u043b\u0435\u0444\u043e\u043d\u043d\u043e\u043c\u0443 \u043a\u0430\u043d\u0430\u043b\u0443 \u0438\u043b\u0438 \u0447\u0435\u0440\u0435\u0437 \u043e\u0431\u044b\u0447\u043d\u0443\u044e \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u043d\u0443\u044e \u0441\u0432\u044f\u0437\u044c \u0442\u043e\u0447\u043a\u0438 \u0438 \u0442\u0438\u0440\u0435 \u0430\u0437\u0431\u0443\u043a\u0438 \u041c\u043e\u0440\u0437\u0435 \u0447\u0430\u0441\u0442\u043e \u043a\u043e\u0434\u0438\u0440\u0443\u044e\u0442\u0441\u044f \u0441\u0438\u0433\u043d\u0430\u043b\u043e\u043c &#171;\u0442\u043e\u043d\u0430\u043b\u044c\u043d\u043e\u0439 \u0447\u0430\u0441\u0442\u043e\u0442\u044b&#187;. \u0422\u043e \u0435\u0441\u0442\u044c \u0442\u0430\u043a\u0438\u043c, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u0435\u0442 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0430\u043c \u043f\u0440\u043e\u043f\u0443\u0441\u043a\u0430\u043d\u0438\u044f \u0441\u0432\u044f\u0437\u043d\u043e\u0433\u043e \u043e\u0431\u043e\u0440\u0443\u0434\u043e\u0432\u0430\u043d\u0438\u044f. \u041e\u0431\u044b\u0447\u043d\u043e \u044d\u0442\u043e \u0441\u0438\u0433\u043d\u0430\u043b \u0432 \u0434\u0438\u0430\u043f\u0430\u0437\u043e\u043d\u0435 \u043e\u0442 300 \u0434\u043e 3400 \u0413\u0446. \u0412\u043e\u0442 \u043e\u043d \u0443\u0436\u0435 \u043c\u043e\u0434\u0443\u043b\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u0442\u043e\u0447\u043a\u0430\u043c\u0438, \u0442\u0438\u0440\u0435 \u0438 \u043f\u0440\u043e\u0431\u0435\u043b\u0430\u043c\u0438, \u0438 \u043f\u043e\u0441\u0442\u0443\u043f\u0430\u0435\u0442 \u0432 \u043e\u0431\u043e\u0440\u0443\u0434\u043e\u0432\u0430\u043d\u0438\u0435 \u0441\u0432\u044f\u0437\u0438 \u0432\u043c\u0435\u0441\u0442\u043e \u0433\u043e\u043b\u043e\u0441\u0430. \u0412 \u0431<em>\u043e<\/em>\u043b\u044c\u0448\u0435\u0439 \u0441\u0442\u0435\u043f\u0435\u043d\u0438 \u0442\u0430\u043a\u043e\u0439 \u0441\u043f\u043e\u0441\u043e\u0431 \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0438 \u041c\u043e\u0440\u0437\u0435 \u0445\u0430\u0440\u0430\u043a\u0442\u0435\u0440\u0435\u043d \u0438\u043c\u0435\u043d\u043d\u043e \u0434\u043b\u044f \u043a\u0430\u043d\u0430\u043b\u043e\u0432, \u043f\u0440\u0435\u0434\u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u043d\u044b\u0445 \u0434\u043b\u044f \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u043d\u043e\u0439\/\u0433\u043e\u043b\u043e\u0441\u043e\u0432\u043e\u0439 \u0441\u0432\u044f\u0437\u0438. \u0414\u043b\u044f \u0447\u0438\u0441\u0442\u043e \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u043d\u044b\u0445 \u0440\u0430\u0434\u0438\u043e\u043a\u0430\u043d\u0430\u043b\u043e\u0432 \u043c\u043e\u0436\u0435\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u043c\u043e\u0434\u0443\u043b\u044f\u0446\u0438\u044f \u0440\u0430\u0434\u0438\u043e\u0447\u0430\u0441\u0442\u043e\u0442\u044b \u043f\u043e \u043f\u0440\u0438\u043d\u0446\u0438\u043f\u0443 \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f-\u0432\u044b\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f \u0440\u0430\u0434\u0438\u043e\u0438\u0437\u043b\u0443\u0447\u0435\u043d\u0438\u044f. \u0412 \u044d\u0442\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u043d\u0438\u043a\u0430\u043a\u043e\u0433\u043e &#171;\u043f\u0438\u043f-\u043f\u0438\u043f-\u043f\u0438\u043f&#187; \u043d\u0430 \u0447\u0430\u0441\u0442\u043e\u0442\u0435 \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0438 \u043c\u044b \u043f\u0440\u043e\u0441\u0442\u043e \u0442\u0430\u043a \u043d\u0435 \u0443\u0441\u043b\u044b\u0448\u0438\u043c \u0438 \u0442\u0443\u0442 \u043d\u0443\u0436\u0435\u043d \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u0439 \u043f\u0440\u0438\u0451\u043c\u043d\u0438\u043a.<\/p>\n<p>\u041c\u044b \u043d\u0430\u043f\u0438\u0448\u0435\u043c \u043a\u043e\u0434, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0433\u0435\u043d\u0435\u0440\u0438\u0440\u0443\u0435\u0442 \u0441\u0438\u0433\u043d\u0430\u043b \u0442\u0438\u043f\u0430 &#171;\u043f\u0438\u043f-\u043f\u0438\u043f-\u043f\u0438\u043f&#187; \u0432\u0440\u043e\u0434\u0435 <a href=\"https:\/\/en.wikipedia.org\/wiki\/File:Wikipedia-Morse.ogg\" rel=\"noopener noreferrer nofollow\">\u0442\u0430\u043a\u043e\u0433\u043e<\/a>:<\/p>\n<div class=\"embed_link\">\n<div class=\"embed__thumb\" style=\"background-image: url(&quot;undefined&quot;);\"><\/div>\n<div class=\"embed__caption\">\n<div class=\"embed__caption-title\"><span><\/span><\/div>\n<p><a href=\"https:\/\/upload.wikimedia.org\/wikipedia\/commons\/0\/04\/Wikipedia-Morse.ogg\" target=\"_blank\" rel=\"noopener noreferrer nofollow\" class=\"embed__caption-host\">upload.wikimedia.org<\/a><\/div>\n<\/div>\n<p><strong>\u041a\u0430\u043a \u0433\u0435\u043d\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0434\u0430\u043d\u043d\u044b\u0435 \u0434\u043b\u044f &#171;\u043f\u0438\u043f&#187;?<\/strong><\/p>\n<p>\u0414\u043b\u044f \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u0438 \u043c\u0430\u0441\u0441\u0438\u0432\u0430 \u0441\u044d\u043c\u043f\u043b\u043e\u0432, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0437\u0430\u0442\u0435\u043c \u0431\u0443\u0434\u0443\u0442 \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u044b \u0430\u0443\u0434\u0438\u043e\u0434\u0440\u0430\u0439\u0432\u0435\u0440\u0443, \u043d\u0443\u0436\u043d\u043e \u0437\u0430\u0440\u0430\u043d\u0435\u0435 \u0437\u043d\u0430\u0442\u044c \u0447\u0430\u0441\u0442\u043e\u0442\u0443 \u0434\u0438\u0441\u043a\u0440\u0435\u0442\u0438\u0437\u0430\u0446\u0438\u0438 \u0438 \u0440\u0430\u0437\u0440\u044f\u0434\u043d\u043e\u0441\u0442\u044c \u0442\u0440\u0435\u0431\u0443\u0435\u043c\u044b\u0445 \u0446\u0438\u0444\u0440\u043e\u0432\u044b\u0445 \u0434\u0430\u043d\u043d\u044b\u0445.<\/p>\n<p>\u0412 \u043d\u0430\u0448\u0435\u043c \u043f\u0440\u043e\u0435\u043a\u0442\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u043e\u0434\u043d\u0430 \u0438\u0437 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u044b\u0445 \u0447\u0430\u0441\u0442\u043e\u0442 \u0434\u0438\u0441\u043a\u0440\u0435\u0442\u0438\u0437\u0430\u0446\u0438\u0438 (SampleRate), \u0440\u0430\u0432\u043d\u0430\u044f \u043f\u043e\u043b\u043e\u0432\u0438\u043d\u0435 \u043f\u0440\u0438\u043d\u044f\u0442\u044b\u0445 \u0432 Audio CD 44100 \u0441\u044d\u043c\u043f\u043b\u043e\u0432\/\u0441, \u0430 \u0438\u043c\u0435\u043d\u043d\u043e<\/p>\n<p><img decoding=\"async\" class=\"formula\" source=\"SampleRate=22050\" alt=\"SampleRate=22050\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/9fc\/78d\/995\/9fc78d9957c15e0e3f998f71e7162d62.svg\" width=\"182\" height=\"20\" sizes=\"auto, (max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/9fc\/78d\/995\/9fc78d9957c15e0e3f998f71e7162d62.svg 780w,&#10;       https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/9fc\/78d\/995\/9fc78d9957c15e0e3f998f71e7162d62.svg 781w\" loading=\"lazy\" decode=\"async\"\/><\/p>\n<p>\u0441\u044d\u043c\u043f\u043b\u043e\u0432\/\u0441 \u0438 \u0440\u0430\u0437\u0440\u044f\u0434\u043d\u043e\u0441\u0442\u044c 1 \u0431\u0430\u0439\u0442 \u0441\u043e  \u0437\u043d\u0430\u043a\u043e\u043c \u043d\u0430 \u0441\u044d\u043c\u043f\u043b. \u0414\u043b\u044f \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u0438 \u0433\u0430\u0440\u043c\u043e\u043d\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e (\u0441\u0438\u043d\u0443\u0441\u043e\u0438\u0434\u0430\u043b\u044c\u043d\u043e\u0433\u043e) \u0441\u0438\u0433\u043d\u0430\u043b\u0430 \u0447\u0430\u0441\u0442\u043e\u0442\u043e\u0439 <img decoding=\"async\" class=\"formula inline\" source=\"f\" alt=\"f\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/8b5\/9b9\/78f\/8b59b978f472d15e02c21f209b37351f.svg\" width=\"11\" height=\"21\" sizes=\"auto, (max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/8b5\/9b9\/78f\/8b59b978f472d15e02c21f209b37351f.svg 780w,&#10;       https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/8b5\/9b9\/78f\/8b59b978f472d15e02c21f209b37351f.svg 781w\" loading=\"lazy\" decode=\"async\"\/> \u0433\u0435\u0440\u0446 \u043c\u044b \u0438\u0441\u0445\u043e\u0434\u0438\u043c \u0438\u0437 \u0442\u043e\u0433\u043e, \u0447\u0442\u043e \u043f\u043e\u043b\u043d\u044b\u0439 \u043f\u0435\u0440\u0438\u043e\u0434 \u0441\u0438\u043d\u0443\u0441\u043e\u0438\u0434\u044b \u0434\u043b\u0438\u0442\u0441\u044f <img decoding=\"async\" class=\"formula inline\" source=\"1\/f\" alt=\"1\/f\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/739\/be7\/dba\/739be7dba9f854774f19d534f412246f.svg\" width=\"30\" height=\"22\" sizes=\"auto, (max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/739\/be7\/dba\/739be7dba9f854774f19d534f412246f.svg 780w,&#10;       https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/739\/be7\/dba\/739be7dba9f854774f19d534f412246f.svg 781w\" loading=\"lazy\" decode=\"async\"\/> \u0441\u0435\u043a\u0443\u043d\u0434, \u0447\u0442\u043e \u0434\u0430\u0451\u0442<\/p>\n<p><img decoding=\"async\" class=\"formula\" source=\"SampleRate \\cdot (1\/f)=SampleRate\/f\" alt=\"SampleRate \\cdot (1\/f)=SampleRate\/f\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/891\/8f7\/2a9\/8918f72a940c0f2f349bc94a7d8aece3.svg\" width=\"320\" height=\"22\" sizes=\"auto, (max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/891\/8f7\/2a9\/8918f72a940c0f2f349bc94a7d8aece3.svg 780w,&#10;       https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/891\/8f7\/2a9\/8918f72a940c0f2f349bc94a7d8aece3.svg 781w\" loading=\"lazy\" decode=\"async\"\/><\/p>\n<p>\u0441\u044d\u043c\u043f\u043b\u043e\u0432 \u043d\u0430 \u043f\u043e\u043b\u043d\u044b\u0439 \u043f\u0435\u0440\u0438\u043e\u0434 \u0441\u0438\u043d\u0443\u0441\u043e\u0438\u0434\u044b.<\/p>\n<p>\u041d\u0443 \u0438 \u0443\u0433\u043e\u043b \u0432 \u0440\u0430\u0434\u0438\u0430\u043d\u0430\u0445 (\u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0435 \u0444\u0430\u0437\u044b \u0441\u0438\u0433\u043d\u0430\u043b\u0430) \u043c\u0435\u0436\u0434\u0443 \u0441\u043e\u0441\u0435\u0434\u043d\u0438\u043c\u0438 \u0441\u044d\u043c\u043f\u043b\u0430\u043c\u0438 \u0441\u043e\u0441\u0442\u0430\u0432\u0438\u0442<\/p>\n<p><img decoding=\"async\" class=\"formula\" source=\"angle = \\frac{2 \\cdot \\pi \\cdot f}{SampleRate}\" alt=\"angle = \\frac{2 \\cdot \\pi \\cdot f}{SampleRate}\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/e11\/e6e\/ac9\/e11e6eac9c0ea35ed49d87a2cfe4950e.svg\" width=\"187\" height=\"48\" sizes=\"auto, (max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/e11\/e6e\/ac9\/e11e6eac9c0ea35ed49d87a2cfe4950e.svg 780w,&#10;       https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/e11\/e6e\/ac9\/e11e6eac9c0ea35ed49d87a2cfe4950e.svg 781w\" loading=\"lazy\" decode=\"async\"\/><\/p>\n<p> \u0440\u0430\u0434\u0438\u0430\u043d.<\/p>\n<p>\u0412\u044b\u043f\u0438\u0432 \u043f\u0430\u0440\u0443 \u0447\u0430\u0448\u0435\u043a Java, \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u043c \u0432\u043e\u0442 \u0442\u0430\u043a\u0438\u0435 \u043c\u0435\u0442\u043e\u0434\u044b \u043a\u043b\u0430\u0441\u0441\u0430 <code>Transmitter<\/code>:<\/p>\n<pre><code class=\"java\">\/**  * Transmitter class for transmitting morse code to the audio system.  *\/ class Transmitter {      private static final int FREQ = 800; \/\/ Hertz     private static final int SAMPLE_RATE = 22050; \/\/ samples per second      \/**      * Get the number of samples for a given duration      *      * @param durationMilliseconds the duration in milliseconds      * @return the number of samples      *\/     private static int getNumOfSamples(float durationMilliseconds) {         return (int) Math.round(SAMPLE_RATE * durationMilliseconds \/ 1000.0);     }        \/**      * Generates a pause of the given duration      *      * @param durationMilliseconds the duration in milliseconds      * @param consumer             the consumer to receive the samples      *\/     private static void generatePause(float durationMilliseconds, IntConsumer consumer) {       int len = getNumOfSamples(durationMilliseconds);       for (int i = 0; i &lt; len; i++) {           consumer.accept(0);       }     }          \/**      * Generates sine wave samples and provides them to the consumer      * @param durationMilliseconds      * @param consumer      *\/     private static void generateSineWave(float durationMilliseconds, IntConsumer consumer) {         \/\/ get the number of samples         int len = getNumOfSamples(durationMilliseconds);         \/\/ align len to fit the wave period to avoid sound distortion at the end of the         \/\/ wave         len = len - (len % (SAMPLE_RATE \/ FREQ));         \/\/ calculate the phase delta for the sine wave         final double delta = 2 * Math.PI * FREQ \/ SAMPLE_RATE;         \/\/ initialize the angle         double angle = 0;         \/\/ generate the sine wave         for (int n = 0; n &lt; len; n++) {             \/\/ calculate the value of the sine wave sample             consumer.accept((int) (Byte.MAX_VALUE * Math.sin(angle)));             \/\/ increment the angle             angle += delta;         }     }<\/code><\/pre>\n<p>\u041c\u0435\u0442\u043e\u0434 <code>generateSineWave<\/code> \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u0442 \u0432 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0430\u0445 \u0442\u0440\u0435\u0431\u0443\u0435\u043c\u0443\u044e \u0434\u043b\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u0441\u0438\u0433\u043d\u0430\u043b\u0430 \u0432 \u043c\u0438\u043b\u043b\u0438\u0441\u0435\u043a\u0443\u043d\u0434\u0430\u0445 <code>durationMilliseconds<\/code> \u0438 \u043a\u043e\u043d\u0441\u044c\u044e\u043c\u0435\u0440\u0430 <code>consumer<\/code> \u0441 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u043e\u043c <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/21\/docs\/api\/java.base\/java\/util\/function\/IntConsumer.html\" rel=\"noopener noreferrer nofollow\">IntConsumer<\/a>.<\/p>\n<details class=\"spoiler\">\n<summary>IntConsumer<\/summary>\n<div class=\"spoiler__content\">\n<p><a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/21\/docs\/api\/java.base\/java\/util\/function\/IntConsumer.html\" rel=\"noopener noreferrer nofollow\">IntConsumer<\/a> \u0432 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u0438.<\/p>\n<pre><code class=\"java\">\/**  * Represents an operation that accepts a single {@code int}-valued argument and  * returns no result.  This is the primitive type specialization of  * {@link Consumer} for {@code int}.  Unlike most other functional interfaces,  * {@code IntConsumer} is expected to operate via side-effects.  *  * &lt;p&gt;This is a &lt;a href=\"package-summary.html\"&gt;functional interface&lt;\/a&gt;  * whose functional method is {@link #accept(int)}.  *  * @see Consumer  * @since 1.8  *\/ @FunctionalInterface public interface IntConsumer {      \/**      * Performs this operation on the given argument.      *      * @param value the input argument      *\/     void accept(int value);      \/**      * Returns a composed {@code IntConsumer} that performs, in sequence, this      * operation followed by the {@code after} operation. If performing either      * operation throws an exception, it is relayed to the caller of the      * composed operation.  If performing this operation throws an exception,      * the {@code after} operation will not be performed.      *      * @param after the operation to perform after this operation      * @return a composed {@code IntConsumer} that performs in sequence this      * operation followed by the {@code after} operation      * @throws NullPointerException if {@code after} is null      *\/     default IntConsumer andThen(IntConsumer after) {         Objects.requireNonNull(after);         return (int t) -&gt; { accept(t); after.accept(t); };     } }<\/code><\/pre>\n<\/div>\n<\/details>\n<p>\u0423\u0448\u0438 Stream API, \u0442\u043e\u0440\u0447\u0430\u0449\u0438\u0435 \u0438\u0437 <code>generateSineWave<\/code> \u0432\u0438\u0434\u043d\u044b \u043d\u0435\u0432\u043e\u043e\u0440\u0443\u0436\u0451\u043d\u043d\u044b\u043c \u0433\u043b\u0430\u0437\u043e\u043c. \u0412\u043e\u0442 \u044d\u0442\u043e\u043c\u0443 \u043a\u043e\u043d\u0441\u044c\u044e\u043c\u0435\u0440\u0443 \u043f\u0435\u0440\u0435\u0434\u0430\u0451\u0442\u0441\u044f \u043a\u0430\u0436\u0434\u044b\u0439 \u0440\u0430\u0441\u0441\u0447\u0438\u0442\u0430\u043d\u043d\u044b\u0439 \u0441\u044d\u043c\u043f\u043b \u0447\u0435\u0440\u0435\u0437 \u0432\u044b\u0437\u043e\u0432 <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/21\/docs\/api\/java.base\/java\/util\/function\/IntConsumer.html#accept(int)\" rel=\"noopener noreferrer nofollow\">consumer.accept<\/a>.<\/p>\n<p><code>generatePause<\/code> \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u043f\u0440\u043e\u0449\u0435: \u0432 <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/21\/docs\/api\/java.base\/java\/util\/function\/IntConsumer.html#accept(int)\" rel=\"noopener noreferrer nofollow\">consumer.accept<\/a> \u043f\u0435\u0440\u0435\u0434\u0430\u0451\u0442\u0441\u044f \u043d\u0443\u0436\u043d\u043e\u0435 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u043d\u0443\u043b\u0435\u0439 \u043f\u043e \u043e\u0434\u043d\u043e\u043c\u0443 \u0437\u0430 \u0432\u044b\u0437\u043e\u0432.<\/p>\n<p>\u041d\u0435\u0431\u043e\u043b\u044c\u0448\u0430\u044f \u043c\u0430\u0433\u0438\u044f \u0435\u0441\u0442\u044c \u0432 \u0440\u0430\u0441\u0447\u0451\u0442\u0435 \u0434\u043b\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u0442\u043e\u0447\u043a\u0438 (\u0432 \u043c\u0438\u043b\u043b\u0438\u0441\u0435\u043a\u0443\u043d\u0434\u0430\u0445) \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0430\u043d\u0438\u0438 \u0437\u0430\u0434\u0430\u043d\u043d\u043e\u0439 \u043a\u043e\u043d\u0441\u0442\u0430\u043d\u0442\u044b \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u0438 \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f Speed, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0438\u0437\u043c\u0435\u0440\u044f\u0435\u0442\u0441\u044f \u0432 Words per minute (WPM). \u0412\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u043c\u0435\u043d\u044f\u0442\u044c \u044d\u0442\u0443 \u043a\u043e\u043d\u0441\u0442\u0430\u043d\u0442\u0443 \u043a\u0430\u043a \u0445\u043e\u0442\u0438\u0442\u0435, \u0438\u0441\u0445\u043e\u0434\u043d\u043e\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u043e \u0432 20 wpm.<\/p>\n<blockquote>\n<p>\u041e\u0431\u044b\u0447\u043d\u0430\u044f \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u0430 \u0432 \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u0438\u0438 \u0437\u0430\u043a\u043b\u044e\u0447\u0430\u0435\u0442\u0441\u044f \u0432 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0438 \u0434\u0432\u0443\u0445 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0445 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u044b\u0445 \u0444\u0440\u0430\u0437 \u0434\u043b\u044f \u0438\u0437\u043c\u0435\u0440\u0435\u043d\u0438\u044f \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u0438 \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0438 \u0430\u0437\u0431\u0443\u043a\u0438 \u041c\u043e\u0440\u0437\u0435 \u0432 \u0441\u043b\u043e\u0432\u0430\u0445 \u0432 \u043c\u0438\u043d\u0443\u0442\u0443. \u0421\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u044b\u043c\u0438 \u0441\u043b\u043e\u0432\u0430\u043c\u0438 \u044f\u0432\u043b\u044f\u044e\u0442\u0441\u044f <strong>PARIS<\/strong> \u0438 <strong>CODEX<\/strong>. \u0412 \u0430\u0437\u0431\u0443\u043a\u0435 \u041c\u043e\u0440\u0437\u0435 <strong>PARIS<\/strong> \u0438\u043c\u0435\u0435\u0442 \u0434\u043b\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c 50 \u0442\u043e\u0447\u0435\u043a, \u0430 <strong>CODEX<\/strong> &#8212; 60.<\/p>\n<\/blockquote>\n<p>\u041d\u0430 \u043e\u0441\u043d\u043e\u0432\u0435 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u043e\u0433\u043e \u0441\u043b\u043e\u0432\u0430 \u0434\u043b\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c\u044e 50 \u0442\u043e\u0447\u0435\u043a, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440 &#171;PARIS&#187;, \u0434\u043b\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u043e\u0434\u043d\u043e\u0439 \u0442\u043e\u0447\u043a\u0438 \u0432 \u043c\u0438\u043b\u043b\u0438\u0441\u0435\u043a\u0443\u043d\u0434\u0430\u0445 \u043c\u043e\u0436\u043d\u043e \u0432\u044b\u0447\u0438\u0441\u043b\u0438\u0442\u044c \u043f\u043e \u0444\u043e\u0440\u043c\u0443\u043b\u0435:<\/p>\n<p><img decoding=\"async\" class=\"formula\" source=\"T=\\frac{1200}{Speed}\" alt=\"T=\\frac{1200}{Speed}\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/591\/7bb\/d60\/5917bbd60665bd7b255423049430b9b6.svg\" width=\"98\" height=\"47\" sizes=\"auto, (max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/591\/7bb\/d60\/5917bbd60665bd7b255423049430b9b6.svg 780w,&#10;       https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/591\/7bb\/d60\/5917bbd60665bd7b255423049430b9b6.svg 781w\" loading=\"lazy\" decode=\"async\"\/><\/p>\n<p>\u0433\u0434\u0435 Speed &#8212; \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u044c \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0432 wpm (\u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u044b\u0445 \u0441\u043b\u043e\u0432 \u0432 \u043c\u0438\u043d\u0443\u0442\u0443), 1200 &#8212; \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u043c\u0438\u043b\u043b\u0438\u0441\u0435\u043a\u0443\u043d\u0434 \u043d\u0430 \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u043e\u0434\u043d\u043e\u0439 \u0442\u043e\u0447\u043a\u0438 \u043f\u0440\u0438 \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u0438 1 wpm \u0438 \u0434\u043b\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u043e\u0433\u043e \u0441\u043b\u043e\u0432\u0430 50 \u0442\u043e\u0447\u0435\u043a.<\/p>\n<pre><code class=\"java\">\/*  * Based upon a 50 dot duration standard word such as PARIS, the time for one  * dot duration or one unit can  * be computed by the formula:  * dotDurationMilliseconds = 1200.0 \/ SPEED  * https:\/\/en.wikipedia.org\/wiki\/Morse_code  *\/ private static final float DOT_DURATION_MILLISECONDS = 1200.0f \/ SPEED; <\/code><\/pre>\n<p>\u0422\u0435\u043f\u0435\u0440\u044c \u0443 \u043d\u0430\u0441 \u0435\u0441\u0442\u044c \u0432\u0441\u0451, \u0447\u0442\u043e\u0431\u044b \u0441\u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043f\u043e\u043b\u043d\u044b\u0439 \u0446\u0438\u0444\u0440\u043e\u0432\u043e\u0439 \u043e\u0431\u0440\u0430\u0437 \u043d\u0430\u0448\u0435\u0439 \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u043c\u043c\u044b:<\/p>\n<pre><code class=\"java\">\/**  * Transmitter class for transmitting morse code to the audio system.  *\/ class Transmitter {      private static final int SPEED = 20; \/\/ words per minute     private static final int FREQ = 800; \/\/ Hertz     private static final int SAMPLE_RATE = 22050; \/\/ samples per second     \/*      * Based upon a 50 dot duration standard word such as PARIS, the time for one      * dot duration or one unit can      * be computed by the formula:      * dotDurationMilliseconds = 1200.0 \/ SPEED      * https:\/\/en.wikipedia.org\/wiki\/Morse_code      *\/     private static final float DOT_DURATION_MILLISECONDS = 1200.0f \/ SPEED;      . . .      \/**      * Generates sine wave samples and provides them to the consumer      * @param durationMilliseconds      * @param consumer      *\/     private static void generateSineWave(float durationMilliseconds, IntConsumer consumer) {         . . .     }        \/**      * Generates a pause of the given duration      * @param durationMilliseconds the duration in milliseconds      * @param consumer the consumer to receive the samples      *\/     private static void generatePause(float durationMilliseconds, IntConsumer consumer) {         . . .     }      \/**      * Generates the image of the Morse code for the given string which is a sequence of dots, dashes, pipes and spaces.      *      * @param morseEncoded the Morse encoded string      * @return the image of the Morse code for the given string      *\/     private byte[] generateSignalImage(String morseEncoded) {         \/\/ convert Morse encoded string to byte array         return morseEncoded.chars() \/\/ convert to stream of characters(=ints)             .mapMulti(                 (c, consumer) -&gt; {                     switch (c) {                         case '.':                             \/\/ generate the dot wave and the space wave (zeroes)                             generateSineWave(DOT_DURATION_MILLISECONDS, consumer);                             generatePause(DOT_DURATION_MILLISECONDS, consumer);                             break;                         case '-':                             \/\/ generate the dash wave and the space wave (zeroes)                             generateSineWave(3 * DOT_DURATION_MILLISECONDS, consumer);                             generatePause(DOT_DURATION_MILLISECONDS, consumer);                             break;                         case '|':                             \/\/ generate the space (zeroes) 2 times (+1 spaceWave comes from the previous dot or dash)                             generatePause(2 * DOT_DURATION_MILLISECONDS, consumer);                             break;                         case ' ':                             \/\/ generate the long space (zeroes) 6 times (+1 spaceWave comes from the previous dot or dash)                             generatePause(6 * DOT_DURATION_MILLISECONDS, consumer);                             break;                         default:                             throw new IllegalArgumentException(\"Unsupported symbol: \" + c);                      }                 }             )             .collect(                 () -&gt; {                     \/\/ the approximate buffer size                     final int approxBufferSize =                             (int) (4 * DOT_DURATION_MILLISECONDS * morseEncoded.length() * SAMPLE_RATE \/ 1000);                     return new ByteArrayOutputStream(approxBufferSize);                 },                 (buf, val) -&gt; {                     buf.write(val);                 },                 (buf1, buf2) -&gt; {                     buf1.writeBytes(buf2.toByteArray());                 }             )             .toByteArray();     }<\/code><\/pre>\n<p>\u0424\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0446\u0438\u0444\u0440\u043e\u0432\u043e\u0433\u043e \u043e\u0431\u0440\u0430\u0437\u0430 \u0441\u0438\u0433\u043d\u0430\u043b\u0430 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u0442 \u043c\u0435\u0442\u043e\u0434 <code>generateSignalImage<\/code>. \u0418\u0437 \u043d\u043e\u0432\u043e\u0433\u043e \u0437\u0434\u0435\u0441\u044c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/21\/docs\/api\/java.base\/java\/util\/stream\/IntStream.html#mapMulti(java.util.stream.IntStream.IntMapMultiConsumer)\" rel=\"noopener noreferrer nofollow\">IntStream.mapMulti<\/a>, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0432 \u043e\u0442\u0432\u0435\u0442 \u043d\u0430 \u043e\u0434\u043d\u043e \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0438\u0437 \u0432\u0445\u043e\u0434\u043d\u043e\u0433\u043e \u043f\u043e\u0442\u043e\u043a\u0430 \u043c\u043e\u0436\u0435\u0442 \u0432\u044b\u0434\u0430\u0442\u044c \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0439 \u0432 \u0432\u044b\u0445\u043e\u0434\u043d\u043e\u0439 \u043f\u043e\u0442\u043e\u043a.<\/p>\n<p>\u041f\u0440\u0438 \u0432\u044b\u0437\u043e\u0432\u0435 \u043d\u0430 \u043f\u043e\u0442\u043e\u043a\u0435 <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/21\/docs\/api\/java.base\/java\/util\/stream\/IntStream.html\" rel=\"noopener noreferrer nofollow\">IntStream<\/a> \u043c\u044b \u0434\u043e\u043b\u0436\u043d\u044b \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u043c\u0435\u0442\u043e\u0434\u0443 <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/21\/docs\/api\/java.base\/java\/util\/stream\/IntStream.html#mapMulti(java.util.stream.IntStream.IntMapMultiConsumer)\" rel=\"noopener noreferrer nofollow\">mapMulti<\/a> \u0443\u043d\u0430\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u043d\u043d\u044b\u0439 \u043e\u0442 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430 <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/21\/docs\/api\/java.base\/java\/util\/stream\/IntStream.IntMapMultiConsumer.html\" rel=\"noopener noreferrer nofollow\">IntMapMultiConsumer<\/a> \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a.<\/p>\n<details class=\"spoiler\">\n<summary>IntMapMultiConsumer<\/summary>\n<div class=\"spoiler__content\">\n<p>\u0414\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u044f \u043f\u043e <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/21\/docs\/api\/java.base\/java\/util\/stream\/IntStream.IntMapMultiConsumer.html\" rel=\"noopener noreferrer nofollow\">IntMapMultiConsumer<\/a><\/p>\n<pre><code class=\"java\">    \/**      * Represents an operation that accepts an {@code int}-valued argument      * and an IntConsumer, and returns no result. This functional interface is      * used by {@link IntStream#mapMulti(IntMapMultiConsumer) IntStream.mapMulti}      * to replace an int value with zero or more int values.      *      * &lt;p&gt;This is a &lt;a href=\"..\/function\/package-summary.html\"&gt;functional interface&lt;\/a&gt;      * whose functional method is {@link #accept(int, IntConsumer)}.      *      * @see IntStream#mapMulti(IntMapMultiConsumer)      *      * @since 16      *\/     @FunctionalInterface     interface IntMapMultiConsumer {          \/**          * Replaces the given {@code value} with zero or more values by feeding the mapped          * values to the {@code ic} consumer.          *          * @param value the int value coming from upstream          * @param ic an {@code IntConsumer} accepting the mapped values          *\/         void accept(int value, IntConsumer ic);     }<\/code><\/pre>\n<\/div>\n<\/details>\n<p>\u0418 \u044d\u0442\u043e \u0432\u0435\u0441\u044c\u043c\u0430 \u043f\u0440\u043e\u0441\u0442\u043e, \u0432\u043e\u0442 \u043d\u0443\u0436\u043d\u0430\u044f lambda-\u0444\u0443\u043d\u043a\u0446\u0438\u044f:<\/p>\n<pre><code class=\"java\">(c, consumer) -&gt; {     switch (c) {         case '.':             \/\/ generate the dot wave and the space wave (zeroes)             generateSineWave(DOT_DURATION_MILLISECONDS, consumer);             generatePause(DOT_DURATION_MILLISECONDS, consumer);             break;         case '-':             \/\/ generate the dash wave and the space wave (zeroes)             generateSineWave(3 * DOT_DURATION_MILLISECONDS, consumer);             generatePause(DOT_DURATION_MILLISECONDS, consumer);             break;         case '|':             \/\/ generate the space (zeroes) 2 times (+1 spaceWave comes from the previous dot or dash)             generatePause(2 * DOT_DURATION_MILLISECONDS, consumer);             break;         case ' ':             \/\/ generate the long space (zeroes) 6 times (+1 spaceWave comes from the previous dot or dash)             generatePause(6 * DOT_DURATION_MILLISECONDS, consumer);             break;         default:             throw new IllegalArgumentException(\"Unsupported symbol: \" + c);      } } <\/code><\/pre>\n<p>\u041f\u0430\u0440\u0430\u043c\u0435\u0442\u0440 <code>c<\/code> \u0438\u043c\u0435\u0435\u0442 \u0442\u0438\u043f <code>int<\/code> \u0438 \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u0442 \u044d\u043b\u0435\u043c\u0435\u043d\u0442 \u0438\u0437 \u0432\u0445\u043e\u0434\u043d\u043e\u0433\u043e \u043f\u043e\u0442\u043e\u043a\u0430, \u0430 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440 <code>consumer<\/code> \u0438\u043c\u0435\u0435\u0442 \u0442\u0438\u043f <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/21\/docs\/api\/java.base\/java\/util\/function\/IntConsumer.html\" rel=\"noopener noreferrer nofollow\">IntConsumer<\/a> \u0438 \u043d\u0430\u0448 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a \u0434\u043e\u043b\u0436\u0435\u043d \u0432\u044b\u0437\u0432\u0430\u0442\u044c \u0443 \u043d\u0435\u0433\u043e \u043c\u0435\u0442\u043e\u0434 <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/21\/docs\/api\/java.base\/java\/util\/function\/IntConsumer.html#accept(int)\" rel=\"noopener noreferrer nofollow\">void accept(int value)<\/a>, \u043a\u043e\u0442\u043e\u0440\u043e\u043c\u0443 \u043f\u0435\u0440\u0435\u0434\u0430\u0451\u0442\u0441\u044f \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 <code>int<\/code> \u0434\u043b\u044f \u0432\u044b\u0445\u043e\u0434\u043d\u043e\u0433\u043e \u043f\u043e\u0442\u043e\u043a\u0430 <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/21\/docs\/api\/java.base\/java\/util\/stream\/IntStream.html\" rel=\"noopener noreferrer nofollow\">IntStream<\/a>. \u0412\u044b\u0437\u044b\u0432\u0430\u0442\u044c <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/21\/docs\/api\/java.base\/java\/util\/function\/IntConsumer.html#accept(int)\" rel=\"noopener noreferrer nofollow\">void IntConsumer.accept(int value)<\/a> \u043d\u0430\u0434\u043e \u0441\u0442\u043e\u043b\u044c\u043a\u043e \u0440\u0430\u0437, \u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0439 <code>int<\/code> \u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u0432\u044b\u0434\u0430\u0442\u044c \u0432 \u0432\u044b\u0445\u043e\u0434\u043d\u043e\u0439 \u043f\u043e\u0442\u043e\u043a.<\/p>\n<p>\u0412\u0441\u044f \u043b\u043e\u0433\u0438\u043a\u0430 \u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0432\u044b\u0445\u043e\u0434\u043d\u043e\u0433\u043e \u043f\u043e\u0442\u043e\u043a\u0430 \u0440\u0430\u0437\u043c\u0435\u0449\u0435\u043d\u0430 \u0432 \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440\u0435 <code>switch<\/code> . \u0412 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u043e\u0442 \u0432\u0445\u043e\u0434\u043d\u043e\u0433\u043e \u0441\u0438\u043c\u0432\u043e\u043b\u0430 \u0432\u044b\u0431\u0438\u0440\u0430\u0435\u0442\u0441\u044f \u0432\u0438\u0434 \u0441\u0438\u0433\u043d\u0430\u043b\u0430 \u0438 \u0435\u0433\u043e \u0434\u043b\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c. \u0412\u0441\u0435 \u0433\u0435\u043d\u0435\u0440\u0438\u0440\u0443\u0435\u043c\u044b\u0435 \u0441\u044d\u043c\u043f\u043b\u044b \u0441\u043a\u0430\u0440\u043c\u043b\u0438\u0432\u0430\u044e\u0442\u0441\u044f <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/21\/docs\/api\/java.base\/java\/util\/function\/IntConsumer.html#accept(int)\" rel=\"noopener noreferrer nofollow\">void IntConsumer.accept(int value)<\/a> \u0432\u043d\u0443\u0442\u0440\u0438 \u043c\u0435\u0442\u043e\u0434\u043e\u0432 <code>generatePause<\/code> \u0438 <code>generateSineWave<\/code><em> <\/em>\u0431\u0435\u0437 \u043e\u0441\u043e\u0431\u043e\u0433\u043e \u0441\u0442\u0435\u0441\u043d\u0435\u043d\u0438\u044f.<\/p>\n<p>\u041d\u0430 \u0432\u044b\u0445\u043e\u0434\u043d\u043e\u043c <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/21\/docs\/api\/java.base\/java\/util\/stream\/IntStream.html\" rel=\"noopener noreferrer nofollow\">IntStream<\/a> \u0432\u044b\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u0441\u043f\u0435\u0446\u0438\u0444\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u0438\u043c\u0435\u043d\u043d\u043e \u0434\u043b\u044f <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/21\/docs\/api\/java.base\/java\/util\/stream\/IntStream.html\" rel=\"noopener noreferrer nofollow\">IntStream<\/a> \u0432\u0430\u0440\u0438\u0430\u043d\u0442 \u043c\u0435\u0442\u043e\u0434\u0430 <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/21\/docs\/api\/java.base\/java\/util\/stream\/IntStream.html#collect(java.util.function.Supplier,java.util.function.ObjIntConsumer,java.util.function.BiConsumer)\" rel=\"noopener noreferrer nofollow\">collect<\/a> \u0441 \u0442\u0440\u0435\u043c\u044f \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0430\u043c\u0438 \u0443\u0436\u0435 \u0437\u043d\u0430\u043a\u043e\u043c\u043e\u0433\u043e \u043d\u0430\u043c \u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f:<\/p>\n<pre><code class=\"java\">&lt;R&gt; R collect(Supplier&lt;R&gt; supplier,               ObjIntConsumer&lt;R&gt; accumulator,               BiConsumer&lt;R, R&gt; combiner);<\/code><\/pre>\n<ul>\n<li>\n<p><a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/21\/docs\/api\/java.base\/java\/util\/function\/Supplier.html\" rel=\"noopener noreferrer nofollow\">supplier<\/a> \u0441\u043e\u0437\u0434\u0430\u0451\u0442 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440 \u0434\u043b\u044f \u0441\u0431\u043e\u0440\u043a\u0438 \u0435\u0434\u0438\u043d\u043e\u0433\u043e \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0430<\/p>\n<\/li>\n<li>\n<p><a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/21\/docs\/api\/java.base\/java\/util\/function\/ObjIntConsumer.html\" rel=\"noopener noreferrer nofollow\">accumulator<\/a> \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u0442 \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043e\u0447\u0435\u0440\u0435\u0434\u043d\u043e\u0433\u043e \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u0432 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440<\/p>\n<\/li>\n<li>\n<p><a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/21\/docs\/api\/java.base\/java\/util\/function\/BiConsumer.html\" rel=\"noopener noreferrer nofollow\">combiner<\/a> \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u043f\u0440\u0438 \u043e\u0431\u044a\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0438 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u043e\u0432 \u0438\u0437 \u0440\u0430\u0437\u043d\u044b\u0445 threads \u0432 \u0440\u0435\u0436\u0438\u043c\u0435 parallel. \u041c\u044b \u0442\u0430\u043a\u043e\u0439 \u0440\u0435\u0436\u0438\u043c \u0432 \u043d\u0430\u0448\u0435\u043c \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0438 \u043d\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c.<\/p>\n<\/li>\n<\/ul>\n<p>\u0412\u0441\u0435 \u044d\u0442\u0438 \u0434\u0436\u0435\u043d\u0435\u0440\u0438\u043a-\u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u044b \u0438\u043c\u0435\u044e\u0442 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440 \u0442\u0438\u043f\u0430 R &#8212; \u0442\u0438\u043f \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0430 \u0440\u0430\u0431\u043e\u0442\u044b \u043a\u043e\u043b\u043b\u0435\u043a\u0442\u043e\u0440\u0430.<\/p>\n<p>\u0418\u0437 \u043d\u043e\u0432\u043e\u0433\u043e \u0437\u0434\u0435\u0441\u044c <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/21\/docs\/api\/java.base\/java\/util\/function\/ObjIntConsumer.html\" rel=\"noopener noreferrer nofollow\">ObjIntConsumer&lt;R&gt;<\/a>, \u043d\u043e \u043e\u043d \u0432\u0440\u044f\u0434 \u043b\u0438 \u0432\u044b\u0437\u043e\u0432\u0435\u0442 \u043d\u0435\u043f\u043e\u043d\u0438\u043c\u0430\u043d\u0438\u0435.<\/p>\n<details class=\"spoiler\">\n<summary>ObjIntConsumer<\/summary>\n<div class=\"spoiler__content\">\n<p><a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/21\/docs\/api\/java.base\/java\/util\/function\/ObjIntConsumer.html\" rel=\"noopener noreferrer nofollow\">\u0414\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u044f \u043f\u043e ObjIntConsumer<\/a><\/p>\n<pre><code class=\"java\">\/**  * Represents an operation that accepts an object-valued and a  * {@code int}-valued argument, and returns no result.  This is the  * {@code (reference, int)} specialization of {@link BiConsumer}.  * Unlike most other functional interfaces, {@code ObjIntConsumer} is  * expected to operate via side-effects.  *  * &lt;p&gt;This is a &lt;a href=\"package-summary.html\"&gt;functional interface&lt;\/a&gt;  * whose functional method is {@link #accept(Object, int)}.  *  * @param &lt;T&gt; the type of the object argument to the operation  *  * @see BiConsumer  * @since 1.8  *\/ @FunctionalInterface public interface ObjIntConsumer&lt;T&gt; {      \/**      * Performs this operation on the given arguments.      *      * @param t the first input argument      * @param value the second input argument      *\/     void accept(T t, int value); }<\/code><\/pre>\n<\/div>\n<\/details>\n<p>\u041f\u043e\u043a\u0430\u0436\u0443 \u0432 \u043e\u0434\u043d\u043e\u043c \u0431\u043b\u043e\u043a\u0435 \u043a\u0430\u043a \u0441\u0434\u0435\u043b\u0430\u043d\u044b \u0432\u0441\u0435 \u0442\u0440\u0438 \u0444\u0443\u043d\u043a\u0446\u0438\u0438:<\/p>\n<pre><code class=\"java\">  \/\/ Supplier: Creates a new ByteArrayOutputStream   () -&gt; {       \/\/ the approximate buffer size       final int approxBufferSize =               (int) (4 * DOT_DURATION_MILLISECONDS * morseEncoded.length() * SAMPLE_RATE \/ 1000);       return new ByteArrayOutputStream(approxBufferSize);   },    \/\/ Accumulator: Adds samples to the buffer   (buf, val) -&gt; {       buf.write(val);   },    \/\/ Combiner: Combines two buffers (for parallel streams)   (buf1, buf2) -&gt; {       buf1.writeBytes(buf2.toByteArray());   }<\/code><\/pre>\n<p>\u0412 <code>supplier<\/code> \u0441\u043e\u0437\u0434\u0430\u0451\u0442\u0441\u044f <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/21\/docs\/api\/java.base\/java\/io\/ByteArrayOutputStream.html\" rel=\"noopener noreferrer nofollow\">ByteArrayOutputStream<\/a> \u0441 \u043d\u0430\u0447\u0430\u043b\u044c\u043d\u044b\u043c \u0440\u0430\u0437\u043c\u0435\u0440\u043e\u043c \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0435\u0433\u043e \u0431\u0443\u0444\u0435\u0440\u0430 <code>approxBufferSize<\/code>. \u0417\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0441\u0447\u0438\u0442\u0430\u0435\u0442\u0441\u044f \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0430\u043d\u0438\u0438 \u043b\u0438\u0447\u043d\u043e\u0433\u043e <s>\u0436\u0438\u0437\u043d\u0435\u043d\u043d\u043e\u0433\u043e<\/s> \u044d\u043c\u043f\u0438\u0440\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u043e\u043f\u044b\u0442\u0430. \u041f\u0440\u0438 \u043d\u0435\u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e\u043c \u0440\u0430\u0437\u043c\u0435\u0440\u0435 \u0431\u0443\u0444\u0435\u0440 \u0440\u0430\u0441\u0448\u0438\u0440\u044f\u0435\u0442\u0441\u044f \u043f\u0443\u0442\u0451\u043c \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u043d\u043e\u0432\u043e\u0433\u043e \u0438 \u0437\u0430\u0431\u044b\u0432\u0430\u043d\u0438\u044f \u0441\u0442\u0430\u0440\u043e\u0433\u043e <code>byte[]<\/code>, \u0436\u0438\u0432\u0443\u0449\u0435\u0433\u043e \u0432\u043d\u0443\u0442\u0440\u0438 \u0431\u0443\u0444\u0435\u0440\u0430. \u0422\u043e\u0447\u043d\u043e \u043a\u0430\u043a \u0432 <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/21\/docs\/api\/java.base\/java\/util\/ArrayList.html\" rel=\"noopener noreferrer nofollow\">ArrayList<\/a>.<\/p>\n<p><code>accumulator<\/code> \u0441\u043e\u0432\u0435\u0440\u0448\u0435\u043d\u043d\u043e \u043f\u0440\u044f\u043c\u043e\u043b\u0438\u043d\u0435\u0439\u043d\u043e \u043f\u0438\u0448\u0435\u0442 \u043e\u0447\u0435\u0440\u0435\u0434\u043d\u043e\u0439 \u0431\u0430\u0439\u0442 \u0432 \u0431\u0443\u0444\u0435\u0440. \u0414\u0430, <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/21\/docs\/api\/java.base\/java\/io\/ByteArrayOutputStream.html#write(int)\" rel=\"noopener noreferrer nofollow\">write<\/a> \u043f\u0440\u0438\u043d\u0438\u043c\u0430\u0435\u0442 \u043d\u0430 \u0432\u0445\u043e\u0434 <code>int<\/code>, \u0430 \u0432 \u0431\u0443\u0444\u0435\u0440 \u043a\u043b\u0430\u0434\u0451\u0442 \u0442\u043e\u043b\u044c\u043a\u043e \u0431\u0430\u0439\u0442, \u0433\u043b\u044f\u043d\u044c\u0442\u0435 \u043f\u043e\u0434 \u0441\u043f\u043e\u0439\u043b\u0435\u0440, \u0435\u0441\u043b\u0438 \u043d\u0435 \u0432\u0435\u0440\u0438\u0442\u0435.<\/p>\n<details class=\"spoiler\">\n<summary>\u0412\u043e\u043e\u0431\u0449\u0435, \u0432 Java \u043f\u043e\u0447\u0442\u0438 \u0432\u0441\u0435\u0433\u0434\u0430 \u0442\u0430\u043a \u0441 write \u0438 read<\/summary>\n<div class=\"spoiler__content\">\n<pre><code class=\"java\">    \/**      * Writes the specified byte to this {@code ByteArrayOutputStream}.      *      * @param   b   the byte to be written.      *\/     @Override     public synchronized void write(int b) {         ensureCapacity(count + 1);         buf[count] = (byte) b;         count += 1;     }<\/code><\/pre>\n<\/div>\n<\/details>\n<p>\u0410 <code>combiner<\/code> \u0434\u043e\u0431\u0430\u0432\u0438\u0442 \u0432\u0442\u043e\u0440\u043e\u0439 \u043f\u0435\u0440\u0435\u0434\u0430\u043d\u043d\u044b\u0439 \u0431\u0443\u0444\u0435\u0440 \u0432 \u043f\u0435\u0440\u0432\u044b\u0439 \u0435\u0441\u043b\u0438 \u0435\u0433\u043e \u043f\u043e\u043f\u0440\u043e\u0441\u044f\u0442.<\/p>\n<p>\u0412 \u0438\u0442\u043e\u0433\u0435 <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/21\/docs\/api\/java.base\/java\/util\/stream\/IntStream.html#collect(java.util.function.Supplier,java.util.function.ObjIntConsumer,java.util.function.BiConsumer)\" rel=\"noopener noreferrer nofollow\">IntStream.collect<\/a> \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442 \u043d\u0430\u043c \u0437\u0430\u043f\u043e\u043b\u043d\u0435\u043d\u043d\u044b\u0439 <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/21\/docs\/api\/java.base\/java\/io\/ByteArrayOutputStream.html\" rel=\"noopener noreferrer nofollow\">ByteArrayOutputStream<\/a> \u043d\u0430 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u0442\u043e\u043b\u044c\u043a\u043e \u0438 \u043e\u0441\u0442\u0430\u0451\u0442\u0441\u044f, \u0447\u0442\u043e \u0432\u044b\u0437\u0432\u0430\u0442\u044c <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/21\/docs\/api\/java.base\/java\/io\/ByteArrayOutputStream.html#toByteArray()\" rel=\"noopener noreferrer nofollow\">toByteArray<\/a> \u0434\u043b\u044f \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u044f \u0434\u043e\u043b\u0433\u043e\u0436\u0434\u0430\u043d\u043d\u043e\u0433\u043e \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0430 \u0432 \u0432\u0438\u0434\u0435 \u043c\u0430\u0441\u0441\u0438\u0432\u0430 \u0431\u0430\u0439\u0442 <code>byte[]<\/code>, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043c\u044b \u0438 \u043e\u0442\u0434\u0430\u0434\u0438\u043c \u0430\u0443\u0434\u0438\u043e\u0441\u0438\u0441\u0442\u0435\u043c\u0435.<\/p>\n<h4>\u0410\u0443\u0434\u0438\u043e\u0441\u0438\u0441\u0442\u0435\u043c\u0430<\/h4>\n<p>\u042f \u043d\u0435 \u0437\u043d\u0430\u044e \u0434\u0440\u0443\u0433\u0438\u0445 \u0442\u0430\u043a\u0438\u0445 \u0441\u0442\u0440\u0430\u043d\u043d\u044b\u0445 \u043b\u044e\u0434\u0435\u0439, \u043a\u043e\u043c\u0443 \u043f\u043e\u043d\u0430\u0434\u043e\u0431\u0438\u043b\u043e\u0441\u044c \u0431\u044b \u043f\u0440\u043e\u0438\u0433\u0440\u044b\u0432\u0430\u0442\u044c \u043e\u0446\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0439 \u0437\u0432\u0443\u043a \u0432 \u043a\u043b\u0430\u0441\u0441\u0438\u0447\u0435\u0441\u043a\u043e\u0439 (\u043d\u0435 Android) Java. \u0415\u0441\u043b\u0438 \u0432\u0430\u043c \u0442\u043e\u0436\u0435 \u043f\u0440\u0438\u0445\u043e\u0434\u0438\u043b\u043e\u0441\u044c &#8212; \u043f\u0438\u0448\u0438\u0442\u0435 \u0432 \u043a\u043e\u043c\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u044f\u0445.<\/p>\n<p>\u041f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u0441\u0442\u0430\u0442\u044c\u044f \u043d\u0435 \u043f\u0440\u043e \u0430\u0443\u0434\u0438\u043e\u0441\u0438\u0441\u0442\u0435\u043c\u0443 Java \u0438 \u0443\u0436\u0435 \u043f\u043e\u043b\u0443\u0447\u0438\u043b\u0430\u0441\u044c \u0431\u043e\u043b\u044c\u0448\u043e\u0439, \u043f\u043e\u0437\u0432\u043e\u043b\u044e \u0441\u0435\u0431\u0435 \u0441\u0440\u0430\u0437\u0443 \u043f\u043e\u043a\u0430\u0437\u0430\u0442\u044c \u043a\u043e\u0434 \u0438 \u043a\u0440\u0430\u0442\u043a\u043e \u043e\u0431\u044a\u044f\u0441\u043d\u0438\u0442\u044c \u0447\u0442\u043e \u043e\u043d \u0434\u0435\u043b\u0430\u0435\u0442<\/p>\n<pre><code class=\"java\">\/\/ clip for playing the sound private Clip clip;  \/**  * Transmit the data to the audio system and wait for the clip to finish  *  * @param outputData the data to transmit  * @throws LineUnavailableException if the line is unavailable  * @throws IOException              if an I\/O error occurs  * @throws InterruptedException     if the thread is interrupted  *\/ private void transmitData(byte[] outputData) throws LineUnavailableException, IOException, InterruptedException {     if (outputData == null || outputData.length == 0)         return;     \/\/ if the clip is not null, stop and close it     if (clip != null) {         clip.stop();         clip.close();     }      \/\/ get the clip     clip = AudioSystem.getClip();      \/\/ object for synchronization     Object playSync = new Object();      \/\/ listener for the line event     LineListener listener = event -&gt; {         \/\/ if the event is a stop event         if (event.getType() == LineEvent.Type.STOP) {             \/\/ stop and close the clip             clip.stop();             clip.close();             clip = null;             logger.log(Level.INFO, \"Data has been transmitted.\");             \/\/ notify all the threads that are waiting for the clip to stop             synchronized (playSync) {                 playSync.notify();             }         }     };     \/\/ add the listener to the clip     clip.addLineListener(listener);      \/\/ create the audio format     AudioFormat af = new AudioFormat(             SAMPLE_RATE, \/\/ sample rate             8, \/\/ bits per sample             1, \/\/ channels             true, \/\/ signed             false); \/\/ big endian      \/\/ create the audio input stream     AudioInputStream ais = new AudioInputStream(             new ByteArrayInputStream(outputData), \/\/ input stream             af, \/\/ audio format             outputData.length); \/\/ length of the output data      \/\/ open the clip     clip.open(ais);     \/\/ log the start of the data transmitting     logger.log(Level.INFO, \"Start data transmitting...\");     \/\/ start the clip     clip.start();     \/\/ wait for the clip to stop     synchronized (playSync) {         \/\/ wait for the clip to finish         playSync.wait();     } }<\/code><\/pre>\n<p>\u0412\u0441\u044f \u0440\u0430\u0431\u043e\u0442\u0430 \u043f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u0430 \u0432\u043e\u043a\u0440\u0443\u0433 \u043e\u0431\u044a\u0435\u043a\u0442\u0430 \u043a\u043b\u0430\u0441\u0441\u0430 <a href=\"https:\/\/docs.oracle.com\/en\/java\/javase\/21\/docs\/api\/java.desktop\/javax\/sound\/sampled\/Clip.html\" rel=\"noopener noreferrer nofollow\">javax.sound.sampled.Clip<\/a>. \u0420\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u043e\u043d \u0430\u0441\u0438\u043d\u0445\u0440\u043e\u043d\u043d\u043e, \u043d\u043e \u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e \u0435\u0433\u043e \u0437\u0434\u0435\u0441\u044c \u0432 \u0441\u0438\u043d\u0445\u0440\u043e\u043d\u043d\u043e\u043c \u043e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u0438, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u043f\u0440\u0438\u0448\u043b\u043e\u0441\u044c \u043e\u0431\u043b\u043e\u0436\u0438\u0442\u044c \u044d\u0442\u043e\u0442 \u043a\u043e\u0434 <code>notify<\/code>\/<code>wait<\/code>. \u0421\u0430\u043c\u044b\u0435 \u0432\u0430\u0436\u043d\u044b\u0435 \u043c\u043e\u043c\u0435\u043d\u0442\u044b:<\/p>\n<ul>\n<li>\n<p>\u0421\u043e\u0437\u0434\u0430\u0442\u044c \u043e\u0431\u044a\u0435\u043a\u0442 \u043a\u043b\u0430\u0441\u0441\u0430 Clip<\/p>\n<\/li>\n<li>\n<p>\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0432 \u043d\u0435\u0433\u043e listener, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0431\u0443\u0434\u0435\u0442 \u0432\u044b\u0437\u044b\u0432\u0430\u0442\u044c\u0441\u044f \u0430\u0441\u0438\u043d\u0445\u0440\u043e\u043d\u043d\u043e \u043f\u0440\u0438 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0438 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f Clip<\/p>\n<\/li>\n<li>\n<p>\u041f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u0438\u0442\u044c AudioFormat \u0441 \u043d\u0443\u0436\u043d\u044b\u043c\u0438 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0430\u043c\u0438<\/p>\n<\/li>\n<li>\n<p>\u041e\u0442\u043a\u0440\u044b\u0442\u044c AudioInputStream \u0432 \u043a\u043e\u043d\u0441\u0442\u0440\u0443\u043a\u0442\u043e\u0440 \u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e \u043f\u0435\u0440\u0435\u0434\u0430\u0442\u044c \u0430\u0443\u0434\u0438\u043e\u0444\u043e\u0440\u043c\u0430\u0442 \u0438 InputStream \u0441 \u043e\u0446\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u043c \u0437\u0432\u0443\u043a\u043e\u043c<\/p>\n<\/li>\n<li>\n<p>\u0432\u044b\u0437\u0432\u0430\u0442\u044c open \u0443 \u043e\u0431\u044a\u0435\u043a\u0442\u0430 \u043a\u043b\u0430\u0441\u0441\u0430 Clip \u0438 \u043f\u0435\u0440\u0435\u0434\u0430\u0442\u044c \u0435\u043c\u0443 \u0441\u043e\u0437\u0434\u0430\u043d\u043d\u044b\u0439 \u0440\u0430\u043d\u0435\u0435 AudioInputStream<\/p>\n<\/li>\n<li>\n<p>\u0432\u044b\u0437\u0432\u0430\u0442\u044c start  \u0443 \u043e\u0431\u044a\u0435\u043a\u0442\u0430 \u043a\u043b\u0430\u0441\u0441\u0430 Clip<\/p>\n<\/li>\n<li>\n<p>\u0436\u0434\u0430\u0442\u044c \u0441\u0438\u0433\u043d\u0430\u043b\u0430 \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u0438\u044f \u043e\u0442 listener<\/p>\n<\/li>\n<\/ul>\n<h4>\u041d\u0443 \u0438, \u043a\u0430\u0436\u0435\u0442\u0441\u044f, \u0432\u043e\u0442 \u043e\u043d\u043e \u0443\u0436\u0435 \u0433\u043e\u0442\u043e\u0432\u043e \u0437\u0430\u043f\u0438\u043b\u0438\u043a\u0430\u0442\u044c<\/h4>\n<pre><code class=\"java\">\/**  * Transmit the data to the audio system and wait for the clip to stop  *  * @param morseEncoded the morse encoded string  *\/ void transmit(String morseEncoded) {     try {         \/\/ transmit the data         transmitData(generateSignalImage(morseEncoded));     } catch (LineUnavailableException | IOException | InterruptedException e) {         \/\/ log the error         logger.log(Level.SEVERE, \"Can't play sound\", e);         \/\/ throw a runtime exception         throw new RuntimeException(e);     } }<\/code><\/pre>\n<p>\u0414\u0430, \u043e\u043d\u043e \u043f\u0440\u043e\u0441\u0442\u043e \u0431\u0435\u0440\u0451\u0442 \u0441\u0442\u0440\u043e\u043a\u0443 \u043a\u043e\u0434\u043e\u0432 \u041c\u043e\u0440\u0437\u0435, \u0433\u0435\u043d\u0435\u0440\u0438\u0440\u0443\u0435\u0442 \u043c\u0430\u0441\u0441\u0438\u0432 \u0441\u044d\u043c\u043f\u043b\u043e\u0432 \u0438 \u043f\u0440\u043e\u0438\u0433\u0440\u044b\u0432\u0430\u0435\u0442 \u0438\u0445 \u0447\u0435\u0440\u0435\u0437 \u0430\u0443\u0434\u0438\u043e\u0441\u0438\u0441\u0442\u0435\u043c\u0443 Java. \u0414\u043b\u044f \u0437\u0430\u0432\u0435\u0440\u0448\u0451\u043d\u043d\u043e\u0441\u0442\u0438 \u043a\u0430\u0440\u0442\u0438\u043d\u044b \u0432\u043e\u0442 class Main:<\/p>\n<pre><code class=\"java\">\/**  * Main class for the morse code transmitter.  *\/ public class Main {      \/**      * Main method      *      * @param args the arguments      *\/     public static void main(String[] args) {         if (args.length == 0) {             System.out.println(\"Usage: add a text line to send, use \\\"your text\\\" to send the line with spaces\");             return;         }         \/\/ create a new MorseProcessor         MorseProcessor mp = new MorseProcessor();         \/\/ convert the text to morse code         String morse = mp.textToMorse(String.join(\" \", args));         \/\/ log the morse code         System.out.println(\"Morse code: \" + morse);         \/\/ create a new Transmitter         Transmitter transmitter = new Transmitter();         transmitter.transmit(morse);     } }<\/code><\/pre>\n<h2>\u041a \u0437\u0432\u0451\u0437\u0434\u0430\u043c<\/h2>\n<p>\u041f\u0435\u0440\u0432\u044b\u043c \u0441\u043b\u043e\u0432\u043e\u043c, \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u044c\u043d\u043e \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043d\u044b\u043c \u0432 \u0434\u0430\u043b\u044c\u043d\u0438\u0439 \u043a\u043e\u0441\u043c\u043e\u0441, \u0431\u044b\u043b\u043e \u0441\u043b\u043e\u0432\u043e <strong>\u041c\u0418\u0420<\/strong> (\u0440\u0438\u0441. 19). <em>\u041f\u043e\u043b\u0438\u0442\u043e\u0442\u0443 \u043c\u043e\u0436\u043d\u043e \u043f\u0440\u043e\u043f\u0443\u0441\u0442\u0438\u0442\u044c, \u0432\u0430\u0436\u043d\u043e\u0435 \u044f \u0432\u044b\u0434\u0435\u043b\u0438\u043b \u043a\u0440\u0430\u0441\u043d\u044b\u043c.<\/em><\/p>\n<figure class=\"full-width\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/8bf\/b70\/a43\/8bfb70a430093748c721a2477f267a7d.jpg\" alt=\"\u0420\u0438\u0441. 19. \u0421\u0442\u0440. 3 \u0436\u0443\u0440\u043d\u0430\u043b\u0430 \u00ab\u0420\u0430\u0434\u0438\u043e\u00bb \u2116\u20094 \u0437\u0430 1963 \u0433\u043e\u0434\" title=\"\u0420\u0438\u0441. 19. \u0421\u0442\u0440. 3 \u0436\u0443\u0440\u043d\u0430\u043b\u0430 \u00ab\u0420\u0430\u0434\u0438\u043e\u00bb \u2116\u20094 \u0437\u0430 1963 \u0433\u043e\u0434\" width=\"2500\" height=\"3191\" sizes=\"auto, (max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/r\/w780\/getpro\/habr\/upload_files\/8bf\/b70\/a43\/8bfb70a430093748c721a2477f267a7d.jpg 780w,&#10;       https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/8bf\/b70\/a43\/8bfb70a430093748c721a2477f267a7d.jpg 781w\" loading=\"lazy\" decode=\"async\"\/><\/p>\n<div><figcaption>\u0420\u0438\u0441. 19. <a href=\"https:\/\/archive.radio.ru\/web\/1963\/04\/004\/\" rel=\"noopener noreferrer nofollow\">\u0421\u0442\u0440. 3 \u0436\u0443\u0440\u043d\u0430\u043b\u0430 \u00ab\u0420\u0430\u0434\u0438\u043e\u00bb \u2116\u20094 \u0437\u0430 1963 \u0433\u043e\u0434<\/a><\/figcaption><\/div>\n<\/figure>\n<p>\u041f\u0435\u0440\u0435\u0434\u0430\u0447\u0430 \u043e\u0441\u0443\u0449\u0435\u0441\u0442\u0432\u043b\u0435\u043d\u0430 \u0447\u0435\u0440\u0435\u0437 \u0430\u043d\u0442\u0435\u043d\u043d\u044b \u043f\u043b\u0430\u043d\u0435\u0442\u0430\u0440\u043d\u043e\u0433\u043e \u0440\u0430\u0434\u0430\u0440\u0430\/\u0440\u0430\u0434\u0438\u043e\u0442\u0435\u043b\u0435\u0441\u043a\u043e\u043f\u0430 <a href=\"https:\/\/ru.wikipedia.org\/wiki\/%D0%90%D0%94%D0%A3-1000\" rel=\"noopener noreferrer nofollow\">\u0410\u0414\u0423-1000<\/a> \u0432 \u0415\u0432\u043f\u0430\u0442\u043e\u0440\u0438\u0438 (\u041a\u0440\u044b\u043c, \u0423\u043a\u0440\u0430\u0438\u043d\u0441\u043a\u0430\u044f \u0421\u0421\u0420) 19 \u043d\u043e\u044f\u0431\u0440\u044f 1962 \u0433. \u043f\u0435\u0440\u0435\u0434\u0430\u0442\u0447\u0438\u043a\u043e\u043c \u043c\u043e\u0449\u043d\u043e\u0441\u0442\u044c\u044e \u0434\u043e 250 \u041c\u0412\u0442 \u0432 <a href=\"https:\/\/ru.wikipedia.org\/wiki\/%D0%A1%D1%82%D0%B5%D1%80%D0%B0%D0%B4%D0%B8%D0%B0%D0%BD\" rel=\"noopener noreferrer nofollow\">\u0441\u0442\u0435\u0440\u0430\u0434\u0438\u0430\u043d<\/a> \u0432 \u0438\u043c\u043f\u0443\u043b\u044c\u0441\u043d\u043e\u043c \u0440\u0435\u0436\u0438\u043c\u0435.<\/p>\n<figure class=\"full-width\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/a8a\/3e5\/0fa\/a8a3e50facc1f5ec604163e9e85e4b5f.jpg\" alt=\"\u0420\u0438\u0441. 20. \u0410\u043d\u0442\u0435\u043d\u043d\u044b \u041f\u043b\u0430\u043d\u0435\u0442\u0430\u0440\u043d\u043e\u0433\u043e \u0440\u0430\u0434\u0430\u0440\u0430, \u0415\u0432\u043f\u0430\u0442\u043e\u0440\u0438\u044f.\" title=\"\u0420\u0438\u0441. 20. \u0410\u043d\u0442\u0435\u043d\u043d\u044b \u041f\u043b\u0430\u043d\u0435\u0442\u0430\u0440\u043d\u043e\u0433\u043e \u0440\u0430\u0434\u0430\u0440\u0430, \u0415\u0432\u043f\u0430\u0442\u043e\u0440\u0438\u044f.\" width=\"768\" height=\"1024\" sizes=\"auto, (max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/r\/w780\/getpro\/habr\/upload_files\/a8a\/3e5\/0fa\/a8a3e50facc1f5ec604163e9e85e4b5f.jpg 780w,&#10;       https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/a8a\/3e5\/0fa\/a8a3e50facc1f5ec604163e9e85e4b5f.jpg 781w\" loading=\"lazy\" decode=\"async\"\/><\/p>\n<div><figcaption><a href=\"https:\/\/en.wikipedia.org\/wiki\/Morse_Message_(1962)\" rel=\"noopener noreferrer nofollow\">\u0420\u0438\u0441. 20. \u0410\u043d\u0442\u0435\u043d\u043d\u044b \u041f\u043b\u0430\u043d\u0435\u0442\u0430\u0440\u043d\u043e\u0433\u043e \u0440\u0430\u0434\u0430\u0440\u0430, \u0415\u0432\u043f\u0430\u0442\u043e\u0440\u0438\u044f.<\/a><\/figcaption><\/div>\n<\/figure>\n<p>\u0420\u0430\u0441\u0448\u0438\u0440\u044f\u044f\u0441\u044c \u0432 \u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0441\u0442\u0432\u0435, \u0440\u0430\u0434\u0438\u043e\u043b\u0443\u0447 \u0442\u043e\u043b\u044c\u043a\u043e \u043c\u0430\u043b\u043e\u0439 \u0441\u0432\u043e\u0435\u0439 \u0447\u0430\u0441\u0442\u044c\u044e \u043f\u043e\u043f\u0430\u043b \u043d\u0430 \u0412\u0435\u043d\u0435\u0440\u0443. \u0411<em>\u043e<\/em>\u043b\u044c\u0448\u0430\u044f \u0447\u0430\u0441\u0442\u044c \u043b\u0443\u0447\u0430 \u043f\u0440\u043e\u043b\u0435\u0442\u0435\u043b\u0430 \u043c\u0438\u043c\u043e, \u043f\u043e \u0440\u0430\u0437\u043d\u044b\u0435 \u0441\u0442\u043e\u0440\u043e\u043d\u044b \u043e\u0442 \u043f\u043b\u0430\u043d\u0435\u0442\u044b, \u0438 \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0430\u0435\u0442 \u0434\u0432\u0438\u0433\u0430\u0442\u044c\u0441\u044f \u0441\u043e \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u044c\u044e \u0441\u0432\u0435\u0442\u0430 \u043f\u0440\u0435\u0434\u043f\u043e\u043b\u043e\u0436\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0432 \u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0438 \u0437\u0432\u0435\u0437\u0434\u044b <a href=\"http:\/\/simbad.cds.unistra.fr\/simbad\/sim-id?mescat.distance=on&amp;Ident=%402309514&amp;Name=HD+131336&amp;submit=display+selected+measurements#lab_meas\" rel=\"noopener noreferrer nofollow\">HD 131336<\/a> \u0432 \u0441\u043e\u0437\u0432\u0435\u0437\u0434\u0438\u0438 \u0412\u0435\u0441\u043e\u0432, \u043a\u043e\u0442\u043e\u0440\u0443\u044e \u0440\u0430\u0434\u0438\u043e\u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0430 \u0434\u043e\u0441\u0442\u0438\u0433\u043d\u0435\u0442 \u043f\u0440\u0438\u043c\u0435\u0440\u043d\u043e \u0447\u0435\u0440\u0435\u0437 1220 \u043b\u0435\u0442.<\/p>\n<figure class=\"full-width\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/207\/11d\/083\/20711d083180a9e8758d03ac5df2aa88.jpg\" alt=\"\u0420\u0438\u0441. 21. HD 131336 (\u0432 \u0446\u0435\u043d\u0442\u0440\u0435 \u0444\u043e\u0442\u043e\u0433\u0440\u0430\u0444\u0438\u0438), \u043f\u043e \u0434\u0430\u043d\u043d\u044b\u043c Strasbourg astronomical Data Center\" title=\"\u0420\u0438\u0441. 21. HD 131336 (\u0432 \u0446\u0435\u043d\u0442\u0440\u0435 \u0444\u043e\u0442\u043e\u0433\u0440\u0430\u0444\u0438\u0438), \u043f\u043e \u0434\u0430\u043d\u043d\u044b\u043c Strasbourg astronomical Data Center\" width=\"1874\" height=\"1060\" sizes=\"auto, (max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/r\/w780\/getpro\/habr\/upload_files\/207\/11d\/083\/20711d083180a9e8758d03ac5df2aa88.jpg 780w,&#10;       https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/207\/11d\/083\/20711d083180a9e8758d03ac5df2aa88.jpg 781w\" loading=\"lazy\" decode=\"async\"\/><\/p>\n<div><figcaption>\u0420\u0438\u0441. 21. HD 131336 (\u0432 \u0446\u0435\u043d\u0442\u0440\u0435 \u0444\u043e\u0442\u043e\u0433\u0440\u0430\u0444\u0438\u0438), \u043f\u043e \u0434\u0430\u043d\u043d\u044b\u043c <a href=\"https:\/\/simbad.cds.unistra.fr\/simbad\/sim-id?Ident=%402309514&amp;Name=HD%20131336\" rel=\"noopener noreferrer nofollow\">Strasbourg astronomical Data Center<\/a><\/figcaption><\/div>\n<\/figure>\n<h2>\u041a\u0438\u043d\u043e<\/h2>\n<p>\u041c\u0435\u043d\u044f \u043f\u0440\u043e\u0441\u0442\u043e \u043c\u0451\u0434\u043e\u043c \u043d\u0435 \u043a\u043e\u0440\u043c\u0438, \u0434\u0430\u0439 \u0441\u043d\u044f\u0442\u044c\u0441\u044f \u0432 \u043a\u0438\u043d\u043e. \u0418 \u0432 \u044d\u0442\u043e\u0442 \u0440\u0430\u0437 \u0443 \u043c\u0435\u043d\u044f \u0435\u0441\u0442\u044c \u0434\u043b\u044f \u0432\u0430\u0441 \u043a\u0438\u043d\u043e! \u041f\u043e\u043a\u0430 \u043d\u0435 \u043d\u0430\u043f\u0438\u0441\u0430\u043d \u0434\u0435\u043a\u043e\u0434\u0435\u0440, \u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043b \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u0442\u0430\u043a\u043e\u0432\u043e\u0433\u043e \u043c\u043e\u0431\u0438\u043b\u044c\u043d\u043e\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 <a href=\"https:\/\/play.google.com\/store\/apps\/details?id=com.ve3nea.morse_expert\" rel=\"noopener noreferrer nofollow\">Morse expert<\/a>, \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u0443\u043c\u0435\u0435\u0442 \u0434\u0435\u043a\u043e\u0434\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043c\u043e\u0440\u0437\u044f\u043d\u043a\u0443 &#171;\u043d\u0430 \u0441\u043b\u0443\u0445&#187; \u0447\u0435\u0440\u0435\u0437 \u043c\u0438\u043a\u0440\u043e\u0444\u043e\u043d. \u0421\u043c\u043e\u0442\u0440\u0438\u0442\u0435, \u0447\u0442\u043e \u0443 \u043c\u0435\u043d\u044f \u043f\u043e\u043b\u0443\u0447\u0438\u043b\u043e\u0441\u044c:<\/p>\n<div class=\"tm-iframe_temp\" data-src=\"https:\/\/embedd.srv.habr.com\/iframe\/6872d9c3e5790ff5c498f1ce\" data-style=\"\" id=\"6872d9c3e5790ff5c498f1ce\" width=\"\"><\/div>\n<p>\u041d\u0430 \u044d\u0442\u043e\u043c \u043f\u0435\u0440\u0432\u0443\u044e \u0447\u0430\u0441\u0442\u044c \u0441\u0442\u0430\u0442\u044c\u0438 \u0441\u0447\u0438\u0442\u0430\u044e \u0437\u0430\u0432\u0435\u0440\u0448\u0451\u043d\u043d\u043e\u0439, \u043d\u043e \u043d\u0435 \u0438\u0441\u0447\u0435\u0437\u0430\u044e, \u0430 \u0443\u0445\u043e\u0436\u0443 \u043f\u0438\u0441\u0430\u0442\u044c \u043a\u043e\u0434 \u0434\u043b\u044f \u0432\u0442\u043e\u0440\u043e\u0439 \u0447\u0430\u0441\u0442\u0438.\ud83d\udc4d<\/p>\n<p><a href=\"https:\/\/github.com\/galilov\/HabrMorse.git\" rel=\"noopener noreferrer nofollow\">\u0418\u0441\u0445\u043e\u0434\u043d\u0438\u043a \u043f\u0440\u043e\u0435\u043a\u0442\u0430 \u043d\u0430 GitHub<\/a>.<br \/><a href=\"https:\/\/royallib.com\/book\/klark_artur\/goloc_cherez_okean.html\" rel=\"noopener noreferrer nofollow\">\u041a\u043d\u0438\u0433\u0430 \u0410\u0440\u0442\u0443\u0440\u0430 \u041a\u043b\u0430\u0440\u043a\u0430 &#171;\u0413\u043e\u043b\u043e\u0441 \u0447\u0435\u0440\u0435\u0437 \u043e\u043a\u0435\u0430\u043d&#187;<\/a><\/p>\n<p>\u0421 \u0443\u0432\u0430\u0436\u0435\u043d\u0438\u0435\u043c,<br \/>\u0410. \u0413\u0430\u043b\u0438\u043b\u043e\u0432 \ud83d\ude00<\/p>\n<\/div>\n<\/div>\n<\/div>\n<p><!----><!----><\/div>\n<p><!----><!----><br \/> \u0441\u0441\u044b\u043b\u043a\u0430 \u043d\u0430 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b \u0441\u0442\u0430\u0442\u044c\u0438 <a href=\"https:\/\/habr.com\/ru\/articles\/923208\/\"> https:\/\/habr.com\/ru\/articles\/923208\/<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<div><!--[--><!--]--><\/div>\n<div id=\"post-content-body\">\n<div>\n<div class=\"article-formatted-body article-formatted-body article-formatted-body_version-2\">\n<div xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\">\n<figure class=\"full-width\"><\/figure>\n<p>\u0410\u0437\u0431\u0443\u043a\u0430 \u041c\u043e\u0440\u0437\u0435 \u2014  \u043e\u0434\u0438\u043d \u0438\u0437 \u0441\u0430\u043c\u044b\u0445 \u0441\u0442\u0430\u0440\u044b\u0445, \u043d\u043e \u043d\u0435 \u0443\u0445\u043e\u0434\u044f\u0449\u0438\u0445 \u043d\u0430 \u0437\u0430\u0441\u043b\u0443\u0436\u0435\u043d\u043d\u044b\u0439 \u043e\u0442\u0434\u044b\u0445 \u0442\u0435\u043b\u0435\u043a\u043e\u043c\u043c\u0443\u043d\u0438\u043a\u0430\u0446\u0438\u043e\u043d\u043d\u044b\u0445 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043e\u0432. \u041f\u0440\u0438 \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043a\u0435 \u0434\u0430\u043d\u043d\u043e\u0439 \u043f\u0443\u0431\u043b\u0438\u043a\u0430\u0446\u0438\u0438 \u044f \u043d\u0430\u0448\u0435\u043b <a href=\"https:\/\/search.itu.int\/history\/HistoryDigitalCollectionDocLibrary\/4.1.43.fr.200.pdf\" rel=\"noopener noreferrer nofollow\">\u041f\u0430\u0440\u0438\u0436\u0441\u043a\u0443\u044e \u043a\u043e\u043d\u0432\u0435\u043d\u0446\u0438\u044e \u043f\u043e \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u0438\u0438 \u043e\u0442 17 \u043c\u0430\u044f 1865 \u0433\u043e\u0434\u0430<\/a>, \u043a\u043e\u0442\u043e\u0440\u0443\u044e, \u043d\u0435\u0441\u043c\u043e\u0442\u0440\u044f \u043d\u0430 160-\u043b\u0435\u0442\u043d\u0438\u0439 \u044e\u0431\u0438\u043b\u0435\u0439, \u043d\u0435\u043b\u044c\u0437\u044f \u0441\u0447\u0438\u0442\u0430\u0442\u044c \u043f\u043e\u043b\u043d\u043e\u0441\u0442\u044c\u044e \u0443\u0441\u0442\u0430\u0440\u0435\u0432\u0448\u0435\u0439.<\/p>\n<details class=\"spoiler\">\n<summary>\u041a\u041e\u041d\u0412\u0415\u041d\u0426\u0418\u042f<\/summary>\n<div class=\"spoiler__content\">\n<figure class=\"full-width\">\n<div><figcaption>\u0420\u0438\u0441 1. \u041a\u043e\u043d\u0432\u0435\u043d\u0446\u0438\u044f, \u0440\u0435\u0434\u0430\u043a\u0446\u0438\u044f \u043e\u0442 17 \u043c\u0430\u044f 1865 \u0433.<\/figcaption><\/div>\n<\/figure>\n<p>\u041a\u043e\u043d\u0432\u0435\u043d\u0446\u0438\u044f <\/p>\n<p>\u0415\u0433\u043e \u0412\u0435\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0418\u043c\u043f\u0435\u0440\u0430\u0442\u043e\u0440 \u0410\u0432\u0441\u0442\u0440\u0438\u0438, \u041a\u043e\u0440\u043e\u043b\u044c \u0412\u0435\u043d\u0433\u0440\u0438\u0438 \u0438 \u0411\u043e\u0433\u0435\u043c\u0438\u0438, \u0415\u0433\u043e \u041a\u043e\u0440\u043e\u043b\u0435\u0432\u0441\u043a\u043e\u0435 \u0412\u044b\u0441\u043e\u0447\u0435\u0441\u0442\u0432\u043e \u0412\u0435\u043b\u0438\u043a\u0438\u0439 \u0413\u0435\u0440\u0446\u043e\u0433 \u0411\u0430\u0434\u0435\u043d\u0441\u043a\u0438\u0439, \u0415\u0433\u043e \u0412\u0435\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u041a\u043e\u0440\u043e\u043b\u044c \u0411\u0430\u0432\u0430\u0440\u0438\u0438, \u0415\u0433\u043e \u0412\u0435\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u041a\u043e\u0440\u043e\u043b\u044c \u0411\u0435\u043b\u044c\u0433\u0438\u0438, \u0415\u0433\u043e \u0412\u0435\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u041a\u043e\u0440\u043e\u043b\u044c \u0414\u0430\u043d\u0438\u0438, \u0415\u0451 \u0412\u0435\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u041a\u043e\u0440\u043e\u043b\u0435\u0432\u0430 \u0418\u0441\u043f\u0430\u043d\u0438\u0438, \u0415\u0433\u043e \u0412\u0435\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0418\u043c\u043f\u0435\u0440\u0430\u0442\u043e\u0440 \u0424\u0440\u0430\u043d\u0446\u0438\u0438, \u0415\u0433\u043e \u0412\u0435\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u041a\u043e\u0440\u043e\u043b\u044c \u042d\u043b\u043b\u0438\u043d\u043e\u0432 (\u0413\u0440\u0435\u0446\u0438\u0438), \u0421\u0432\u043e\u0431\u043e\u0434\u043d\u044b\u0439 \u0433\u043e\u0440\u043e\u0434 \u0413\u0430\u043c\u0431\u0443\u0440\u0433, \u0415\u0433\u043e \u0412\u0435\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u041a\u043e\u0440\u043e\u043b\u044c \u0413\u0430\u043d\u043d\u043e\u0432\u0435\u0440\u0430, \u0415\u0433\u043e \u0412\u0435\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u041a\u043e\u0440\u043e\u043b\u044c \u0418\u0442\u0430\u043b\u0438\u0438, \u0415\u0433\u043e \u0412\u0435\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u041a\u043e\u0440\u043e\u043b\u044c \u041d\u0438\u0434\u0435\u0440\u043b\u0430\u043d\u0434\u043e\u0432, \u0415\u0433\u043e \u0412\u0435\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u041a\u043e\u0440\u043e\u043b\u044c \u041f\u043e\u0440\u0442\u0443\u0433\u0430\u043b\u0438\u0438 \u0438 \u0410\u043b\u0433\u0430\u0440\u0432\u0435, \u0415\u0433\u043e \u0412\u0435\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u041a\u043e\u0440\u043e\u043b\u044c \u041f\u0440\u0443\u0441\u0441\u0438\u0438, \u0415\u0433\u043e \u0412\u0435\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0418\u043c\u043f\u0435\u0440\u0430\u0442\u043e\u0440 \u0432\u0441\u0435\u0445 \u0420\u0443\u0441\u0441\u043a\u0438\u0445, \u0415\u0433\u043e \u0412\u0435\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u041a\u043e\u0440\u043e\u043b\u044c \u0421\u0430\u043a\u0441\u043e\u043d\u0438\u0438, \u0415\u0433\u043e \u0412\u0435\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u041a\u043e\u0440\u043e\u043b\u044c \u0428\u0432\u0435\u0446\u0438\u0438 \u0438 \u041d\u043e\u0440\u0432\u0435\u0433\u0438\u0438, \u0428\u0432\u0435\u0439\u0446\u0430\u0440\u0441\u043a\u0430\u044f \u041a\u043e\u043d\u0444\u0435\u0434\u0435\u0440\u0430\u0446\u0438\u044f, \u0415\u0433\u043e \u0412\u0435\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0418\u043c\u043f\u0435\u0440\u0430\u0442\u043e\u0440 \u041e\u0441\u043c\u0430\u043d\u043e\u0432, \u0415\u0433\u043e \u0412\u0435\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u041a\u043e\u0440\u043e\u043b\u044c \u0412\u044e\u0440\u0442\u0435\u043c\u0431\u0435\u0440\u0433\u0430,<\/p>\n<p>\u0412\u0434\u043e\u0445\u043d\u043e\u0432\u043b\u0451\u043d\u043d\u044b\u0435 \u0441\u0442\u0440\u0435\u043c\u043b\u0435\u043d\u0438\u0435\u043c \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0438\u0442\u044c \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u043d\u044b\u043c \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u044f\u043c, \u043e\u0431\u043c\u0435\u043d\u0438\u0432\u0430\u0435\u043c\u044b\u043c \u043c\u0435\u0436\u0434\u0443 \u0438\u0445 \u0433\u043e\u0441\u0443\u0434\u0430\u0440\u0441\u0442\u0432\u0430\u043c\u0438, \u043f\u0440\u0435\u0438\u043c\u0443\u0449\u0435\u0441\u0442\u0432\u0430 \u043f\u0440\u043e\u0441\u0442\u043e\u0433\u043e \u0438 \u0441\u043d\u0438\u0436\u0435\u043d\u043d\u043e\u0433\u043e \u0442\u0430\u0440\u0438\u0444\u0430, <strong>\u0441\u0442\u0440\u0435\u043c\u044f\u0441\u044c \u0443\u043b\u0443\u0447\u0448\u0438\u0442\u044c \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0435 \u0443\u0441\u043b\u043e\u0432\u0438\u044f \u043c\u0435\u0436\u0434\u0443\u043d\u0430\u0440\u043e\u0434\u043d\u043e\u0439 \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u043d\u043e\u0439 \u0441\u0432\u044f\u0437\u0438<\/strong>, \u0438 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u043f\u043e\u0441\u0442\u043e\u044f\u043d\u043d\u043e\u0435 \u0441\u043e\u0433\u043b\u0430\u0448\u0435\u043d\u0438\u0435 \u043c\u0435\u0436\u0434\u0443 \u0438\u0445 \u0433\u043e\u0441\u0443\u0434\u0430\u0440\u0441\u0442\u0432\u0430\u043c\u0438 \u2014 \u043f\u0440\u0438 \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0438 \u0441\u0432\u043e\u0431\u043e\u0434\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0439 \u043f\u043e \u0432\u043e\u043f\u0440\u043e\u0441\u0430\u043c, \u043d\u0435 \u043a\u0430\u0441\u0430\u044e\u0449\u0438\u043c\u0441\u044f \u0432\u0441\u0435\u0439 \u0441\u043b\u0443\u0436\u0431\u044b \u0432 \u0446\u0435\u043b\u043e\u043c&#8230;<\/p>\n<\/div>\n<\/details>\n<h2>\u0412\u0440\u0435\u043c\u044f \u043f\u0435\u0440\u0432\u044b\u0445<\/h2>\n<p>\u041f\u0435\u0440\u0432\u044b\u0435 \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u044b \u043f\u043e \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0435 \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u043d\u044b\u0445 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0439 \u043f\u043e \u043f\u0440\u043e\u0432\u043e\u0434\u0430\u043c \u0434\u0435\u043b\u0430\u043b\u0438\u0441\u044c \u0441 \u043d\u0430\u0447\u0430\u043b\u0430 19 \u0432\u0435\u043a\u0430. \u041d\u0430\u0447\u0438\u043d\u0430\u044f \u0441 1832 \u0433\u043e\u0434\u0430 \u043c\u043d\u043e\u0433\u0438\u0435 \u0438\u0437\u043e\u0431\u0440\u0435\u0442\u0430\u0442\u0435\u043b\u0438 \u043f\u0440\u0435\u0434\u043b\u0430\u0433\u0430\u043b\u0438 \u0434\u0435\u0439\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0435 \u043c\u043e\u0434\u0435\u043b\u0438 \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u043d\u044b\u0445 \u0430\u043f\u043f\u0430\u0440\u0430\u0442\u043e\u0432: \u0441\u043d\u0430\u0447\u0430\u043b\u0430 \u0440\u043e\u0441\u0441\u0438\u0439\u0441\u043a\u0438\u0435 \u0443\u0447\u0435\u043d\u044b\u0435 \u043d\u0435\u043c\u0435\u0446\u043a\u043e\u0433\u043e \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0436\u0434\u0435\u043d\u0438\u044f <a href=\"https:\/\/ru.wikipedia.org\/wiki\/%D0%A8%D0%B8%D0%BB%D0%BB%D0%B8%D0%BD%D0%B3,_%D0%9F%D0%B0%D0%B2%D0%B5%D0%BB_%D0%9B%D1%8C%D0%B2%D0%BE%D0%B2%D0%B8%D1%87\" rel=\"noopener noreferrer nofollow\">\u041f. \u0412. \u0428\u0438\u043b\u043b\u0438\u043d\u0433<\/a> \u0438 <a href=\"https:\/\/ru.wikipedia.org\/wiki\/%D0%AF%D0%BA%D0%BE%D0%B1%D0%B8,_%D0%91%D0%BE%D1%80%D0%B8%D1%81_%D0%A1%D0%B5%D0%BC%D1%91%D0%BD%D0%BE%D0%B2%D0%B8%D1%87\" rel=\"noopener noreferrer nofollow\">\u0411. \u0421. \u042f\u043a\u043e\u0431\u0438<\/a>, \u0437\u0430\u0442\u0435\u043c \u0430\u043d\u0433\u043b\u0438\u0439\u0441\u043a\u0438\u0435 <a href=\"https:\/\/ru.wikipedia.org\/wiki\/%D0%9A%D1%83%D0%BA,_%D0%A3%D0%B8%D0%BB%D1%8C%D1%8F%D0%BC_%D0%A4%D0%BE%D1%82%D0%B5%D1%80%D0%B3%D0%B8%D0%BB%D0%BB\" rel=\"noopener noreferrer nofollow\">\u0423. \u0424. \u041a\u0443\u043a<\/a> \u0438 <a href=\"https:\/\/ru.wikipedia.org\/wiki\/%D0%A3%D0%B8%D1%82%D1%81%D1%82%D0%BE%D0%BD,_%D0%A7%D0%B0%D1%80%D0%BB%D1%8C%D0%B7\" rel=\"noopener noreferrer nofollow\">\u0427. \u0423\u0438\u0442\u0441\u0442\u043e\u043d<\/a>.<\/p>\n<p>\u0412 1843 \u0433\u043e\u0434\u0443 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0441\u0432\u043e\u0435\u0433\u043e \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u043d\u043e\u0433\u043e \u0430\u043f\u043f\u0430\u0440\u0430\u0442\u0430 \u0428\u0438\u043b\u043b\u0438\u043d\u0433 \u0438 \u042f\u043a\u043e\u0431\u0438 \u043f\u0435\u0440\u0435\u0434\u0430\u043b\u0438 \u043f\u0435\u0440\u0432\u0443\u044e \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u043c\u043c\u0443 \u043f\u043e \u043f\u0440\u043e\u0432\u043e\u0434\u0430\u043c \u043d\u0430 25 \u043a\u043c <a href=\"https:\/\/www.sut.ru\/bonchnews\/different\/18-10-2023-180-let-telegrafnoy-linii-sankt-peterburg---carskoe-selo\" rel=\"noopener noreferrer nofollow\">\u0438\u0437 \u041f\u0435\u0442\u0435\u0440\u0431\u0443\u0440\u0433\u0430 \u0432 \u0426\u0430\u0440\u0441\u043a\u043e\u0435 \u0421\u0435\u043b\u043e<\/a>. \u041e\u0434\u043d\u0430\u043a\u043e, \u043d\u0430\u0438\u0431\u043e\u043b\u0435\u0435 \u0443\u0434\u0430\u0447\u043d\u044b\u043c \u0438\u0437 \u0432\u0441\u0435\u0445 \u0441\u043e\u0437\u0434\u0430\u043d\u043d\u044b\u0445 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432 \u0434\u043b\u044f \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u0438\u0438 \u043e\u043a\u0430\u0437\u0430\u043b\u0441\u044f \u0430\u043f\u043f\u0430\u0440\u0430\u0442 \u041c\u043e\u0440\u0437\u0435, \u0434\u043e\u0436\u0438\u0432\u0448\u0438\u0439 \u0434\u043e \u043d\u0430\u0448\u0438\u0445 \u0434\u043d\u0435\u0439.<\/p>\n<details class=\"spoiler\">\n<summary>\u0421\u044d\u0301\u043c\u044e\u044d\u043b\u044c \u0424\u0438\u0301\u043d\u043b\u0438 \u0411\u0440\u0438\u0437 \u041c\u043e\u0301\u0440\u0437\u0435 (Samuel Finley Breese Morse)<\/summary>\n<div class=\"spoiler__content\">\n<p>\u0425\u0443\u0434\u043e\u0436\u043d\u0438\u043a, \u0438\u043d\u0436\u0435\u043d\u0435\u0440, \u0431\u0438\u0437\u043d\u0435\u0441\u043c\u0435\u043d, \u044e\u0440\u0438\u0441\u0442.<\/p>\n<figure class=\"full-width\">\n<div><figcaption><a href=\"https:\/\/time.com\/4307892\/samuel-morse-telegraph-history\/\" rel=\"noopener noreferrer nofollow\">\u0420\u0438\u0441 2. Samuel Finley Breese Morse, 1791-1872<\/a><\/figcaption><\/div>\n<\/figure>\n<p>\u041c\u043e\u0440\u0437\u0435 \u043d\u0430\u0447\u0438\u043d\u0430\u043b \u043a\u0430\u043a \u043f\u0440\u0438\u0437\u043d\u0430\u043d\u043d\u044b\u0439 \u043f\u043e\u0440\u0442\u0440\u0435\u0442\u0438\u0441\u0442 (\u043f\u0438\u0441\u0430\u043b, \u0441\u0440\u0435\u0434\u0438 \u043f\u0440\u043e\u0447\u0438\u0445, \u043f\u043e\u0440\u0442\u0440\u0435\u0442\u044b \u0414\u0436\u0435\u0439\u043c\u0441\u0430 \u041c\u043e\u043d\u0440\u043e \u0438 \u041b\u0430\u0444\u0430\u0439\u0435\u0442\u0430), \u0430\u043a\u0442\u0438\u0432\u043d\u043e \u043f\u0440\u043e\u0434\u0432\u0438\u0433\u0430\u043b \u0432 \u0421\u0428\u0410 <a href=\"https:\/\/ru.wikipedia.org\/wiki\/%D0%94%D0%B0%D0%B3%D0%B5%D1%80%D0%BE%D1%82%D0%B8%D0%BF%D0%B8%D1%8F\" rel=\"noopener noreferrer nofollow\">\u0434\u0430\u0433\u0435\u0440\u0440\u043e\u0442\u0438\u043f\u043d\u0443\u044e \u0444\u043e\u0442\u043e\u0433\u0440\u0430\u0444\u0438\u044e<\/a>.<\/p>\n<p>\u0412\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u044f\u0441\u044c \u0438\u0437 \u0415\u0432\u0440\u043e\u043f\u044b, \u0432 1832 \u0433\u043e\u0434\u0443, \u041c\u043e\u0440\u0437\u0435 \u0437\u0430\u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043e\u0432\u0430\u043b\u0441\u044f \u0438\u0434\u0435\u0435\u0439 \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u0430 \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0435 \u044d\u043b\u0435\u043a\u0442\u0440\u043e\u043c\u0430\u0433\u043d\u0435\u0442\u0438\u0437\u043c\u0430, \u0438 \u043f\u043e \u043f\u0440\u0438\u0435\u0437\u0434\u0443 \u0434\u043e\u043c\u043e\u0439 \u043d\u0430\u0447\u0430\u043b \u0440\u0430\u0431\u043e\u0442\u0443 \u043d\u0430\u0434 \u043f\u0440\u043e\u0442\u043e\u0442\u0438\u043f\u043e\u043c.<\/p>\n<p>\u041f\u043e\u0434\u043e\u0431\u043d\u044b\u0435 \u0438\u0434\u0435\u0438 \u043f\u0440\u0435\u0434\u043b\u0430\u0433\u0430\u043b\u0438\u0441\u044c \u0438 \u0440\u0430\u043d\u0435\u0435, \u043e\u0434\u043d\u0430\u043a\u043e \u041c\u043e\u0440\u0437\u0435 \u0443\u0441\u0435\u0440\u0434\u043d\u043e \u0440\u0430\u0431\u043e\u0442\u0430\u043b \u043d\u0430\u0434 \u043f\u0440\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0435\u0439 \u0441\u0432\u043e\u0435\u0433\u043e \u0430\u043f\u043f\u0430\u0440\u0430\u0442\u0430 \u0438 \u043f\u0440\u043e\u0432\u043e\u0434\u0438\u043b \u043f\u0443\u0431\u043b\u0438\u0447\u043d\u044b\u0435 \u0434\u0435\u043c\u043e\u043d\u0441\u0442\u0440\u0430\u0446\u0438\u0438 \u043d\u043e\u0432\u043e\u0439 \u0442\u0435\u0445\u043d\u0438\u043a\u0438 \u0441\u0432\u044f\u0437\u0438. \u0412 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0435 \u0435\u043c\u0443 \u0443\u0434\u0430\u043b\u043e\u0441\u044c \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u043e \u0443\u0441\u043e\u0432\u0435\u0440\u0448\u0435\u043d\u0441\u0442\u0432\u043e\u0432\u0430\u0442\u044c \u044d\u0442\u0443 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0443 \u0438 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0444\u0438\u043d\u0430\u043d\u0441\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u043e\u0442 \u041a\u043e\u043d\u0433\u0440\u0435\u0441\u0441\u0430 \u0434\u043b\u044f \u0440\u0430\u043d\u043d\u0435\u0433\u043e \u0432\u043d\u0435\u0434\u0440\u0435\u043d\u0438\u044f \u0441\u0432\u043e\u0435\u0439 \u0442\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u0438.<\/p>\n<p>\u0412 1844 \u0433\u043e\u0434\u0443 \u043e\u043d \u043f\u0440\u043e\u0432\u0451\u043b \u043f\u0435\u0440\u0432\u044b\u0439 \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u043d\u044b\u0439 \u0441\u0435\u0430\u043d\u0441 \u043c\u0435\u0436\u0434\u0443 \u0412\u0430\u0448\u0438\u043d\u0433\u0442\u043e\u043d\u043e\u043c \u0438 \u0411\u0430\u043b\u0442\u0438\u043c\u043e\u0440\u043e\u043c, \u043e\u0442\u0441\u0442\u043e\u044f\u0449\u0438\u043c\u0438 \u0434\u0440\u0443\u0433 \u043e\u0442 \u0434\u0440\u0443\u0433\u0430 \u043d\u0430 60 \u043a\u043c, \u043f\u0435\u0440\u0435\u0434\u0430\u0432 \u0444\u0440\u0430\u0437\u0443 &#171;What hath God wrought!&#187; (\u201c\u0427\u0442\u043e \u0441\u043e\u0442\u0432\u043e\u0440\u0438\u043b \u0411\u043e\u0433!\u201d*).<\/p>\n<p>\u041d\u0435\u0441\u043c\u043e\u0442\u0440\u044f \u043d\u0430 \u0432\u044b\u0434\u0430\u044e\u0449\u0438\u0439\u0441\u044f \u0443\u0441\u043f\u0435\u0445, \u041c\u043e\u0440\u0437\u0435 \u043f\u0440\u0438\u0448\u043b\u043e\u0441\u044c \u043e\u0442\u0441\u0442\u0430\u0438\u0432\u0430\u0442\u044c \u0441\u0432\u043e\u0438 \u043f\u0440\u0430\u0432\u0430 \u0447\u0435\u0440\u0435\u0437 \u0441\u0443\u0434\u0435\u0431\u043d\u044b\u0435 \u0438\u0441\u043a\u0438 \u0432 \u0442\u0435\u0447\u0435\u043d\u0438\u0435 \u043f\u043e\u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0445 \u0434\u0435\u0441\u044f\u0442\u0438\u043b\u0435\u0442\u0438\u0439 (\u043e\u0441\u043e\u0431\u0435\u043d\u043d\u043e \u0438\u0437\u0432\u0435\u0441\u0442\u0435\u043d \u0441\u043b\u0443\u0447\u0430\u0439 <a href=\"https:\/\/en.wikipedia.org\/wiki\/O%27Reilly_v._Morse\" rel=\"noopener noreferrer nofollow\">O&#8217;Reilly v. Morse<\/a>).<\/p>\n<p>\u041a \u043c\u043e\u043c\u0435\u043d\u0442\u0443 \u0441\u043c\u0435\u0440\u0442\u0438 \u041c\u043e\u0440\u0437\u0435 (1872 \u0433.) \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u0444 \u043e\u0445\u0432\u0430\u0442\u0438\u043b \u0432\u0441\u044e \u0415\u0432\u0440\u0430\u0437\u0438\u044e, \u0410\u043c\u0435\u0440\u0438\u043a\u0443 \u0438 \u0410\u0442\u043b\u0430\u043d\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u043e\u043a\u0435\u0430\u043d, \u0441\u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u0432 \u0438\u043d\u0444\u0440\u0430\u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0443, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u0438\u043b\u0430 \u043a\u043e\u043c\u043c\u0443\u043d\u0438\u043a\u0430\u0446\u0438\u0438, \u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0443, \u0431\u0438\u0437\u043d\u0435\u0441 \u0438 \u0436\u0443\u0440\u043d\u0430\u043b\u0438\u0441\u0442\u0438\u043a\u0443.<\/p>\n<p><a href=\"https:\/\/time.com\/4307892\/samuel-morse-telegraph-history\/\" rel=\"noopener noreferrer nofollow\"><em>\u041f\u043e \u0441\u0442\u0430\u0442\u044c\u0435 Time &#171;What the Digital Age Owes to the Inventor of Morse Code&#187;<\/em><\/a><\/p>\n<p><em>*) \u0412\u0430\u0440\u0438\u0430\u043d\u0442\u044b \u0440\u0443\u0441\u0441\u043a\u043e\u0433\u043e \u043f\u0435\u0440\u0435\u0432\u043e\u0434\u0430 <\/em><a href=\"https:\/\/bible.by\/verse\/4\/23\/23\/\" rel=\"noopener noreferrer nofollow\">https:\/\/bible.by\/verse\/4\/23\/23\/<\/a>, \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u044b \u043d\u0430 \u0430\u043d\u0433\u043b\u0438\u0439\u0441\u043a\u043e\u043c <a href=\"https:\/\/biblehub.com\/numbers\/23-23.htm\" rel=\"noopener noreferrer nofollow\">https:\/\/biblehub.com\/numbers\/23-23.htm<\/a><\/p>\n<\/div>\n<\/details>\n<h2>\u0421\u0438\u0441\u0442\u0435\u043c\u0430 \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u0438\u0438 \u041c\u043e\u0440\u0437\u0435<\/h2>\n<p>\u0421\u0438\u0441\u0442\u0435\u043c\u0430 \u041c\u043e\u0440\u0437\u0435 \u0441\u043e\u0441\u0442\u043e\u0438\u0442 \u0438\u0437 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u0438\u0445 \u043e\u0441\u043d\u043e\u0432\u043d\u044b\u0445 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u043e\u0432.<\/p>\n<h3>1. \u0422\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u043d\u044b\u0439 \u043a\u043b\u044e\u0447<\/h3>\n<p>\u041f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u043d\u043e\u0433\u043e \u043a\u043b\u044e\u0447\u0430 \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u044c\u043d\u043e \u043e\u0431\u0443\u0447\u0435\u043d\u043d\u044b\u0439 \u0447\u0435\u043b\u043e\u0432\u0435\u043a, \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u0438\u0441\u0442, \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u044f\u0435\u0442 \u0442\u0435\u043a\u0441\u0442\u044b \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u043c\u043c \u0447\u0438\u0442\u0430\u044f \u0438\u0445 \u0441 \u0431\u0443\u043c\u0430\u0433\u0438 \u0438\u043b\u0438 \u043f\u043e\u0434 \u0434\u0438\u043a\u0442\u043e\u0432\u043a\u0443, \u043f\u0435\u0440\u0435\u0432\u043e\u0434\u044f \u0431\u0443\u043a\u0432\u044b \u0432 <strong>\u0434\u043b\u0438\u043d\u043d\u044b\u0435 \u0438 \u043a\u043e\u0440\u043e\u0442\u043a\u0438\u0435 \u043d\u0430\u0436\u0430\u0442\u0438\u044f \u043a\u043b\u044e\u0447\u0430 <\/strong>\u2014<strong> \u0442\u0438\u0440\u0435 \u0438 \u0442\u043e\u0447\u043a\u0438<\/strong>.<\/p>\n<figure class=\"full-width\">\n<div><figcaption><a href=\"https:\/\/izi.travel\/ru\/c2c7-telegrafnyy-klyuch\/ru\" rel=\"noopener noreferrer nofollow\">\u0420\u0438\u0441 3. \u0422\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u043d\u044b\u0439 \u043a\u043b\u044e\u0447 \u041c\u043e\u0440\u0437\u0435<\/a><\/figcaption><\/div>\n<\/figure>\n<p>\u041a\u043b\u044e\u0447 \u0437\u0430\u043c\u044b\u043a\u0430\u0435\u0442 \u044d\u043b\u0435\u043a\u0442\u0440\u0438\u0447\u0435\u0441\u043a\u0443\u044e \u0446\u0435\u043f\u044c, \u0441\u043e\u0441\u0442\u043e\u044f\u0449\u0443\u044e \u0438\u0437 \u044d\u0442\u043e\u0433\u043e \u0441\u0430\u043c\u043e\u0433\u043e \u043a\u043b\u044e\u0447\u0430, \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u043d\u043e\u0433\u043e \u0430\u043f\u043f\u0430\u0440\u0430\u0442\u0430 <strong>\u043d\u0430 \u043f\u0440\u0438\u0435\u043c\u043d\u043e\u0439 \u0441\u0442\u043e\u0440\u043e\u043d\u0435<\/strong> \u0438 \u044d\u043b\u0435\u043a\u0442\u0440\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u0431\u0430\u0442\u0430\u0440\u0435\u0438, \u0441\u043e\u0437\u0434\u0430\u044e\u0449\u0435\u0439 \u0442\u043e\u043a \u043f\u0440\u0438 \u0437\u0430\u043c\u044b\u043a\u0430\u043d\u0438\u0438 \u0446\u0435\u043f\u0438 \u043a\u043b\u044e\u0447\u043e\u043c.<\/p>\n<figure class=\"full-width\">\n<div><figcaption><a href=\"https:\/\/megabook.ru\/media\/%D0%A2%D0%B5%D0%BB%D0%B5%D0%B3%D1%80%D0%B0%D1%84%D0%BD%D1%8B%D0%B9%20%D0%BA%D0%BB%D1%8E%D1%87%20%28%D1%81%D1%85%D0%B5%D0%BC%D0%B0%29\" rel=\"noopener noreferrer nofollow\">\u0420\u0438\u0441 4. \u0421\u0445\u0435\u043c\u0430 \u043f\u0440\u043e\u0441\u0442\u0435\u0439\u0448\u0435\u0433\u043e \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u043d\u043e\u0433\u043e \u043a\u043b\u044e\u0447\u0430: 1 \u2014 \u043f\u043e\u0434\u0441\u0442\u0430\u0432\u043a\u0430; 2 \u2014 \u0437\u0430\u0434\u043d\u0438\u0439 \u043a\u043e\u043d\u0442\u0430\u043a\u0442\u043d\u044b\u0439 \u0432\u0438\u043d\u0442; 3 \u2014 \u0440\u044b\u0447\u0430\u0433; 4 \u2014 \u0440\u0443\u043a\u043e\u044f\u0442\u043a\u0430 \u043a\u043b\u044e\u0447\u0430; 5 \u2014 \u043f\u0435\u0440\u0435\u0434\u043d\u0438\u0439 \u043a\u043e\u043d\u0442\u0430\u043a\u0442; 6 \u0438 6&#8242; \u2014 \u043f\u043b\u043e\u0441\u043a\u0438\u0435 \u0441\u0442\u0430\u043b\u044c\u043d\u044b\u0435 \u043a\u043e\u043d\u0442\u0430\u043a\u0442\u043d\u044b\u0435 \u043f\u0440\u0443\u0436\u0438\u043d\u044b \u0441 \u0441\u0435\u0440\u0435\u0431\u0440\u044f\u043d\u044b\u043c\u0438 \u043a\u043e\u043d\u0442\u0430\u043a\u0442\u043d\u044b\u043c\u0438 \u043d\u0430\u043f\u0430\u0439\u043a\u0430\u043c\u0438; 7 \u2014 \u043f\u0440\u0443\u0436\u0438\u043d\u044b.<\/a><\/figcaption><\/div>\n<\/figure>\n<blockquote>\n<p>\u041e\u0431\u0440\u0430\u0442\u0438\u0442\u0435 \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435: \u043f\u0440\u0438 \u043d\u0430\u0436\u0430\u0442\u0438\u0438 \u043a\u043b\u044e\u0447\u0430 \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442 \u0437\u0430\u043c\u044b\u043a\u0430\u043d\u0438\u0435 \u043a\u043e\u043d\u0442\u0430\u043a\u0442\u0430 \u043d\u0430 \u0440\u044b\u0447\u0430\u0433\u0435 (\u0440\u0438\u0441. 4, \u0434\u0435\u0442\u0430\u043b\u044c 3) \u0441 \u043a\u043e\u043d\u0442\u0430\u043a\u0442\u043e\u043c \u043f\u043e\u0434 \u0440\u0443\u043a\u043e\u044f\u0442\u043a\u043e\u0439 (\u0440\u0438\u0441. 4, \u043a\u043e\u043d\u0442\u0430\u043a\u0442 6). \u041f\u0440\u0438 \u043e\u0442\u043f\u0443\u0441\u043a\u0430\u043d\u0438\u0438 \u043a\u043b\u044e\u0447\u0430 \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442 \u0437\u0430\u043c\u044b\u043a\u0430\u043d\u0438\u0435 \u0434\u0440\u0443\u0433\u043e\u0433\u043e \u043a\u043e\u043d\u0442\u0430\u043a\u0442\u0430 \u043d\u0430 \u0440\u044b\u0447\u0430\u0433\u0435 \u0441 \u043a\u043e\u043d\u0442\u0430\u043a\u0442\u043e\u043c \u043d\u0430 \u0434\u0430\u043b\u044c\u043d\u0435\u0439 \u043e\u0442 \u0440\u0443\u043a\u043e\u044f\u0442\u043a\u0438 \u0441\u0442\u043e\u0440\u043e\u043d\u0435 \u043a\u043b\u044e\u0447\u0430 (\u0440\u0438\u0441. 4, \u043a\u043e\u043d\u0442\u0430\u043a\u0442 6&#8242;). \u0422\u043e \u0435\u0441\u0442\u044c, \u043a\u043b\u044e\u0447 \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f <strong>\u043f\u0435\u0440\u0435\u043a\u043b\u044e\u0447\u0430\u0442\u0435\u043b\u0435\u043c<\/strong> \u0441 \u043d\u043e\u0440\u043c\u0430\u043b\u044c\u043d\u043e-\u0440\u0430\u0437\u043e\u043c\u043a\u043d\u0443\u0442\u044b\u043c \u0438 \u043d\u043e\u0440\u043c\u0430\u043b\u044c\u043d\u043e-\u0437\u0430\u043c\u043a\u043d\u0443\u0442\u044b\u043c \u043a\u043e\u043d\u0442\u0430\u043a\u0442\u0430\u043c\u0438.<\/p>\n<p>\u0422\u0430\u043a\u0430\u044f \u0441\u0445\u0435\u043c\u0430 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u043f\u0435\u0440\u0435\u043a\u043b\u044e\u0447\u0430\u0442\u044c \u0430\u043f\u043f\u0430\u0440\u0430\u0442\u0443\u0440\u0443 \u0432 \u0440\u0435\u0436\u0438\u043c \u043f\u0440\u0438\u0451\u043c\u0430 \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u043c\u043c \u043a\u043e\u0433\u0434\u0430 \u043a\u043b\u044e\u0447 \u043d\u0435 \u043d\u0430\u0436\u0430\u0442.<\/p>\n<\/blockquote>\n<h3>2. \u0422\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u043d\u044b\u0439 \u0430\u043f\u043f\u0430\u0440\u0430\u0442<\/h3>\n<p>\u041d\u0430 \u043f\u0440\u0438\u0435\u043c\u043d\u043e\u0439 \u0441\u0442\u043e\u0440\u043e\u043d\u0435 \u0443\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u043b\u0441\u044f \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u043d\u044b\u0439 \u0430\u043f\u043f\u0430\u0440\u0430\u0442, \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c \u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e \u043f\u0440\u043e\u0442\u044f\u0433\u0438\u0432\u0430\u043b \u0431\u0443\u043c\u0430\u0436\u043d\u0443\u044e \u043b\u0435\u043d\u0442\u0443 \u0447\u0435\u0440\u0435\u0437 \u043f\u0438\u0448\u0443\u0449\u0438\u0439 \u0443\u0437\u0435\u043b, \u0441\u043e\u0441\u0442\u043e\u044f\u0449\u0438\u0439 \u0438\u0437 \u043f\u0435\u0440\u0435\u043c\u0435\u0449\u0430\u044e\u0449\u0435\u0433\u043e\u0441\u044f \u0432\u0432\u0435\u0440\u0445-\u0432\u043d\u0438\u0437 \u043f\u0440\u0438\u0436\u0438\u043c\u043d\u043e\u0433\u043e \u0440\u043e\u043b\u0438\u043a\u0430 \u0438 \u0433\u0440\u0438\u0444\u0435\u043b\u044f \u0438\u043b\u0438 \u0447\u0435\u0440\u043d\u0438\u043b\u044c\u043d\u0438\u0446\u044b \u0441 \u043f\u0435\u0440\u043e\u043c. \u041a\u043e\u0433\u0434\u0430 \u043f\u0440\u0438 \u0437\u0430\u043c\u044b\u043a\u0430\u043d\u0438\u0438 \u0446\u0435\u043f\u0438 \u0432 \u0430\u043f\u043f\u0430\u0440\u0430\u0442 \u043f\u043e\u0441\u0442\u0443\u043f\u0430\u043b \u044d\u043b\u0435\u043a\u0442\u0440\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u0441\u0438\u0433\u043d\u0430\u043b \u043e\u0442 \u0443\u0434\u0430\u043b\u0435\u043d\u043d\u043e\u0433\u043e \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u043d\u043e\u0433\u043e \u043a\u043b\u044e\u0447\u0430, \u0432\u043a\u043b\u044e\u0447\u0430\u043b\u0441\u044f \u043b\u0435\u043d\u0442\u043e\u043f\u0440\u043e\u0442\u044f\u0436\u043d\u044b\u0439 \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c, \u0440\u043e\u043b\u0438\u043a \u043f\u0440\u0438\u0436\u0438\u043c\u0430\u043b \u0434\u0432\u0438\u0436\u0443\u0449\u0443\u044e\u0441\u044f \u043b\u0435\u043d\u0442\u0443 \u043a \u043f\u0435\u0440\u0443, \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u043e\u0441\u0442\u0430\u0432\u043b\u044f\u043b\u043e \u043a\u043e\u0440\u043e\u0442\u043a\u0443\u044e (\u0442\u043e\u0447\u043a\u0430) \u0438\u043b\u0438 \u0431\u043e\u043b\u0435\u0435 \u0434\u043b\u0438\u043d\u043d\u0443\u044e (\u0442\u0438\u0440\u0435) \u0447\u0435\u0440\u0442\u043e\u0447\u043a\u0443.<\/p>\n<figure class=\"\">\n<div><figcaption><a href=\"https:\/\/izi.travel\/ru\/928b-telegrafnyy-apparat-sistemy-morze\/ru\" rel=\"noopener noreferrer nofollow\">\u0420\u0438\u0441 5. \u0422\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u043d\u044b\u0439 \u0430\u043f\u043f\u0430\u0440\u0430\u0442 \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u041c\u043e\u0440\u0437\u0435<\/a><\/figcaption><\/div>\n<\/figure>\n<h3>\u041c\u0435\u0445\u0430\u043d\u0438\u043a\u0430 \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u043d\u043e\u0433\u043e \u0430\u043f\u043f\u0430\u0440\u0430\u0442\u0430<\/h3>\n<p>\u0414\u043b\u044f \u0438\u0437\u0443\u0447\u0435\u043d\u0438\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u043f\u0435\u0440\u0432\u044b\u0445 \u0432\u0435\u0440\u0441\u0438\u0439 \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u043d\u044b\u0445 \u0430\u043f\u043f\u0430\u0440\u0430\u0442\u043e\u0432 \u041c\u043e\u0440\u0437\u0435 \u043e\u0431\u0440\u0430\u0442\u0438\u043c\u0441\u044f \u043a \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b\u044c\u043d\u043e\u043c\u0443 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0443, \u0434\u0430\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u043c\u0443 11 \u0430\u043f\u0440\u0435\u043b\u044f 1846 \u0433\u043e\u0434\u0430, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0434\u043e\u0441\u0442\u0443\u043f\u0435\u043d \u043e\u043d\u043b\u0430\u0439\u043d \u0432 <a href=\"https:\/\/www.docsteach.org\/documents\/document\/samuel-morses-telegraph\" rel=\"noopener noreferrer nofollow\">\u041d\u0430\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u043e\u043c \u0430\u0440\u0445\u0438\u0432\u0435 \u0421\u0428\u0410<\/a>.<\/p>\n<figure class=\"full-width\">\n<div><figcaption>\u0420\u0438\u0441 6. \u0422\u0435\u043b\u0435\u0433\u0440\u0430\u0444 \u041c\u043e\u0440\u0437\u0435<\/figcaption><\/div>\n<\/figure>\n<details class=\"spoiler\">\n<summary>\u0415\u0441\u043b\u0438 \u043f\u0440\u0438\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c\u0441\u044f \u0432\u043d\u0438\u043c\u0430\u0442\u0435\u043b\u044c\u043d\u0435\u0435, \u0442\u043e \u043c\u043e\u0436\u043d\u043e \u0437\u0430\u043c\u0435\u0442\u0438\u0442\u044c, \u0447\u0442\u043e \u043b\u0435\u043d\u0442\u043e\u043f\u0440\u043e\u0442\u044f\u0436\u043d\u044b\u0439 \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u0442 \u044d\u043d\u0435\u0440\u0433\u0438\u044e \u043e\u0442&#8230; \u0433\u0440\u0430\u0432\u0438\u0442\u0430\u0446\u0438\u0438<\/summary>\n<div class=\"spoiler__content\">\n<figure class=\"full-width\">\n<div><figcaption>\u0420\u0438\u0441 6.1. \u0413\u0440\u0430\u0432\u0438\u0442\u0430\u0446\u0438\u043e\u043d\u043d\u044b\u0439 \u043f\u0440\u0438\u0432\u043e\u0434 \u043b\u0435\u043d\u0442\u043e\u043f\u0440\u043e\u0442\u044f\u0436\u043d\u043e\u0433\u043e \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c\u0430.<\/figcaption><\/div>\n<\/figure>\n<\/div>\n<\/details>\n<p>\u041f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 \u043d\u0430\u0431\u043e\u0440\u0430 \u0448\u0435\u0441\u0442\u0435\u0440\u0435\u043d\u043e\u043a \u0438 &#171;\u043f\u0430\u0441\u0441\u0438\u043a\u043e\u0432&#187; \u0432\u0440\u0430\u0449\u0430\u044e\u0449\u0438\u0439 \u043c\u043e\u043c\u0435\u043d\u0442 \u043f\u0435\u0440\u0435\u0434\u0430\u0435\u0442\u0441\u044f \u043d\u0430 \u0432\u0430\u043b\u0438\u043a\u0438 <strong>e<\/strong> \u0438 <strong>d<\/strong>, \u0442\u044f\u043d\u0443\u0449\u0438\u0435 \u043b\u0435\u043d\u0442\u0443. \u0428\u0442\u043e\u043a <strong>m<\/strong>, \u0441\u0432\u044f\u0437\u0430\u043d\u043d\u044b\u0439 \u0441 \u0440\u044b\u0447\u0430\u0433\u043e\u043c <strong>F<\/strong>, \u043f\u0440\u0438 \u043e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0438\u0438 \u0442\u043e\u043a\u0430 \u0432 \u044d\u043b\u0435\u043a\u0442\u0440\u043e\u043c\u0430\u0433\u043d\u0438\u0442\u0435 <strong>E<\/strong> \u0434\u0430\u0432\u0438\u0442 \u043d\u0430 &#171;\u0442\u043e\u0440\u043c\u043e\u0437&#187; \u0438 \u043b\u0435\u043d\u0442\u0430 \u0438\u0437 \u0431\u0430\u0440\u0430\u0431\u0430\u043d\u0430 <strong>C<\/strong> \u043d\u0435 \u0432\u044b\u0442\u044f\u0433\u0438\u0432\u0430\u0435\u0442\u0441\u044f.<\/p>\n<p>\u041f\u0440\u0438 \u043f\u043e\u0434\u0430\u0447\u0435 \u0442\u043e\u043a\u0430 \u0432 \u044d\u043b\u0435\u043a\u0442\u0440\u043e\u043c\u0430\u0433\u043d\u0438\u0442, \u0448\u0442\u043e\u043a <strong>m<\/strong> \u043f\u043e\u0434\u043d\u0438\u043c\u0430\u0435\u0442\u0441\u044f \u0432\u0441\u043b\u0435\u0434 \u0437\u0430 \u0440\u044b\u0447\u0430\u0433\u043e\u043c <strong>F<\/strong> \u0438 \u0441\u043d\u0438\u043c\u0430\u0435\u0442 \u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u043a\u0443 \u0441 \u043b\u0435\u043d\u0442\u043e\u043f\u0440\u043e\u0442\u044f\u0436\u043d\u043e\u0433\u043e \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c\u0430. \u041b\u0435\u043d\u0442\u0430 \u043d\u0430\u0447\u0438\u043d\u0430\u0435\u0442 \u0432\u044b\u0442\u044f\u0433\u0438\u0432\u0430\u0442\u044c\u0441\u044f \u0438\u0437 \u0431\u0430\u0440\u0430\u0431\u0430\u043d\u0430 <strong>C<\/strong> \u0438 \u043f\u0440\u0438\u0436\u0438\u043c\u0430\u0435\u043c\u043e\u0435 \u043a \u043d\u0435\u0439 \u043f\u0435\u0440\u043e <strong>S<\/strong> \u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u043e\u0442\u043c\u0435\u0442\u043a\u0443.<\/p>\n<blockquote>\n<p>\u042f \u043d\u0435 \u0432\u043f\u043e\u043b\u043d\u0435 \u0443\u0432\u0435\u0440\u0435\u043d, \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043b\u0438 \u0441\u0430\u043c\u043e \u043f\u0435\u0440\u043e \u043f\u043e\u0434\u0432\u0438\u0436\u043d\u044b\u043c \u0432 \u044d\u0442\u043e\u0439 \u043a\u043e\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0438, \u0438\u043b\u0438 \u0431\u0443\u043c\u0430\u0436\u043d\u0430\u044f \u043b\u0435\u043d\u0442\u0430 \u043f\u0440\u0438\u0436\u0438\u043c\u0430\u0435\u0442\u0441\u044f \u043a \u043d\u0435\u043c\u0443 \u0440\u043e\u043b\u0438\u043a\u043e\u043c. \u0412\u043e\u0437\u043c\u043e\u0436\u043d\u043e, \u0427\u0438\u0442\u0430\u0442\u0435\u043b\u044c \u043b\u0443\u0447\u0448\u0435 \u0440\u0430\u0437\u0431\u0435\u0440\u0435\u0442\u0441\u044f \u0441 \u044d\u0442\u0438\u043c \u0432\u043e\u043f\u0440\u043e\u0441\u043e\u043c \u0438 \u043d\u0430\u043f\u0438\u0448\u0435\u0442 \u043e \u0441\u0432\u043e\u0438\u0445 \u043d\u0430\u0445\u043e\u0434\u043a\u0430\u0445 \u0432 \u043a\u043e\u043c\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u044f\u0445.<\/p>\n<\/blockquote>\n<p>\u0422\u0430\u043a\u043e\u0432, \u0432 \u043e\u0431\u0449\u0438\u0445 \u0447\u0435\u0440\u0442\u0430\u0445, \u043f\u0440\u0438\u043d\u0446\u0438\u043f \u0440\u0430\u0431\u043e\u0442\u044b \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u043d\u043e\u0433\u043e \u0430\u043f\u043f\u0430\u0440\u0430\u0442\u0430 \u041c\u043e\u0440\u0437\u0435.<\/p>\n<p>\u0418\u043d\u043e\u0433\u0434\u0430 \u0432\u043c\u0435\u0441\u0442\u043e \u043f\u043e\u043b\u043d\u043e\u0446\u0435\u043d\u043d\u043e\u0433\u043e \u0430\u043f\u043f\u0430\u0440\u0430\u0442\u0430 \u0441\u0442\u0430\u0432\u0438\u043b\u043e\u0441\u044c \u0431\u043e\u043b\u0435\u0435 \u043f\u0440\u043e\u0441\u0442\u043e\u0435 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e: \u0437\u0443\u043c\u043c\u0435\u0440 \u0438\u043b\u0438 \u0437\u0432\u043e\u043d\u043e\u043a, \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u0438\u0437\u0434\u0430\u0432\u0430\u043b\u043e \u0437\u0432\u0443\u043a \u043f\u0440\u0438 \u043f\u043e\u044f\u0432\u043b\u0435\u043d\u0438\u0438 \u0442\u043e\u043a\u0430 \u0432 \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u043d\u043e\u0439 \u0446\u0435\u043f\u0438. \u0412 \u044d\u0442\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u0437\u0430\u043f\u0438\u0441\u044c \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u043d\u043e\u0433\u043e \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u044f \u043d\u0430 \u0431\u0443\u043c\u0430\u0433\u0443 \u0434\u0435\u043b\u0430\u043b \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u0438\u0441\u0442, \u043f\u0440\u0438\u043d\u0438\u043c\u0430\u044f \u0442\u043e\u0447\u043a\u0438 \u0438 \u0442\u0438\u0440\u0435 \u043d\u0430 \u0441\u043b\u0443\u0445. \u041f\u043e\u0434\u043e\u0431\u043d\u0430\u044f \u043c\u0435\u0442\u043e\u0434\u0438\u043a\u0430 \u0448\u0438\u0440\u043e\u043a\u043e \u043f\u0440\u0438\u043c\u0435\u043d\u044f\u043b\u0430\u0441\u044c \u043f\u0440\u0438 \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0435 \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u043d\u044b\u0445 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0439 \u043f\u043e \u0440\u0430\u0434\u0438\u043e.<\/p>\n<h3>3. \u0411\u0430\u0442\u0430\u0440\u0435\u044f<\/h3>\n<p>\u0427\u0442\u043e\u0431\u044b \u043f\u043e \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u043d\u044b\u043c \u043f\u0440\u043e\u0432\u043e\u0434\u0430\u043c, \u043a\u043b\u044e\u0447\u0430\u043c \u0438 \u044d\u043b\u0435\u043a\u0442\u0440\u043e\u043c\u0430\u0433\u043d\u0438\u0442\u0430\u043c \u0448\u0435\u043b \u044d\u043b\u0435\u043a\u0442\u0440\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u0442\u043e\u043a, \u0432 \u0446\u0435\u043f\u0438 \u0434\u043e\u043b\u0436\u043d\u0430 \u0431\u044b\u0442\u044c \u0431\u0430\u0442\u0430\u0440\u0435\u044f. \u0412\u043e \u0432\u0442\u043e\u0440\u043e\u0439 \u043f\u043e\u043b\u043e\u0432\u0438\u043d\u0435 19 \u0432\u0435\u043a\u0430 \u0447\u0430\u0449\u0435 \u0432\u0441\u0435\u0433\u043e \u043f\u0440\u0438\u043c\u0435\u043d\u044f\u043b\u0438\u0441\u044c \u0441\u0431\u043e\u0440\u043a\u0438 \u0438\u0437 \u0433\u0430\u043b\u044c\u0432\u0430\u043d\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u043e\u0432 \u0414\u0430\u043d\u0438\u044d\u043b\u044f \u0438 \u0435\u0433\u043e \u0431\u043e\u043b\u0435\u0435 \u043f\u043e\u0437\u0434\u043d\u0438\u0445 \u043c\u043e\u0434\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0439 \u2014 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u043e\u0432 \u041a\u0430\u043b\u043b\u043e.<\/p>\n<figure class=\"full-width\">\n<div><figcaption>\u0420\u0438\u0441 7. \u042d\u043b\u0435\u043a\u0442\u0440\u043e\u0445\u0438\u043c\u0438\u0447\u0435\u0441\u043a\u043e\u0435 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430 \u0414\u0430\u043d\u0438\u0435\u043b\u044f (\u0441\u043b\u0435\u0432\u0430) \u0438 \u0435\u0433\u043e \u043a\u043e\u043d\u0441\u0442\u0440\u0443\u043a\u0442\u0438\u0432\u043d\u043e\u0435 \u0438\u0441\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 (\u0441\u043f\u0440\u0430\u0432\u0430)<\/figcaption><\/div>\n<\/figure>\n<p><a href=\"https:\/\/en.wikipedia.org\/wiki\/Galvanic_cell\" rel=\"noopener noreferrer nofollow\">\u0413\u0430\u043b\u044c\u0432\u0430\u043d\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u044d\u043b\u0435\u043c\u0435\u043d\u0442<\/a> \u0441\u043e\u0437\u0434\u0430\u0435\u0442 \u044d\u043b\u0435\u043a\u0442\u0440\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u0442\u043e\u043a \u0432\u043e \u0432\u043d\u0435\u0448\u043d\u0435\u0439 \u0446\u0435\u043f\u0438 \u0437\u0430 \u0441\u0447\u0435\u0442 \u043e\u043a\u0438\u0441\u043b\u0438\u0442\u0435\u043b\u044c\u043d\u043e-\u0432\u043e\u0441\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0445 \u0440\u0435\u0430\u043a\u0446\u0438\u0439, \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u044f\u0449\u0438\u0445 \u043d\u0430 \u0435\u0433\u043e \u044d\u043b\u0435\u043a\u0442\u0440\u043e\u0434\u0430\u0445. \u042d\u043b\u0435\u043c\u0435\u043d\u0442 \u0414\u0430\u043d\u0438\u044d\u043b\u044f \u0441\u043e\u0441\u0442\u043e\u0438\u0442 \u0438\u0437 \u0434\u0432\u0443\u0445 \u044d\u043b\u0435\u043a\u0442\u0440\u043e\u0434\u043e\u0432: \u043c\u0435\u0434\u043d\u043e\u0433\u043e \u043a\u0430\u0442\u043e\u0434\u0430 &#8212; &#171;\u043f\u043b\u044e\u0441\u0430&#187; \u0438 \u0446\u0438\u043d\u043a\u043e\u0432\u043e\u0433\u043e \u0430\u043d\u043e\u0434\u0430 \u2014 &#171;\u043c\u0438\u043d\u0443\u0441\u0430&#187;. \u041e\u0431\u0430 \u043f\u043e\u0433\u0440\u0443\u0436\u0435\u043d\u044b \u0432 \u0440\u0430\u0437\u043d\u044b\u0435 \u044d\u043b\u0435\u043a\u0442\u0440\u043e\u043b\u0438\u0442\u044b: \u043c\u0435\u0434\u044c &#8212; \u0432 \u0440\u0430\u0441\u0442\u0432\u043e\u0440 \u0441\u0443\u043b\u044c\u0444\u0430\u0442\u0430 \u043c\u0435\u0434\u0438 (\u043c\u0435\u0434\u043d\u043e\u0433\u043e \u043a\u0443\u043f\u043e\u0440\u043e\u0441\u0430), \u0430 \u0446\u0438\u043d\u043a \u2014 \u0432 \u0440\u0430\u0441\u0442\u0432\u043e\u0440 \u0441\u0443\u043b\u044c\u0444\u0430\u0442\u0430 \u0446\u0438\u043d\u043a\u0430. \u042d\u043b\u0435\u043a\u0442\u0440\u043e\u043b\u0438\u0442\u044b \u0440\u0430\u0437\u0434\u0435\u043b\u044f\u0435\u0442 \u043f\u043e\u0440\u0438\u0441\u0442\u0430\u044f \u043f\u0435\u0440\u0435\u0433\u043e\u0440\u043e\u0434\u043a\u0430, \u043f\u0440\u0435\u0434\u043e\u0442\u0432\u0440\u0430\u0449\u0430\u044e\u0449\u0430\u044f \u043f\u0435\u0440\u0435\u043c\u0435\u0448\u0438\u0432\u0430\u043d\u0438\u0435 \u0436\u0438\u0434\u043a\u043e\u0441\u0442\u0435\u0439, \u043d\u043e \u043f\u0440\u043e\u043f\u0443\u0441\u043a\u0430\u044e\u0449\u0430\u044f \u0438\u043e\u043d\u044b.<\/p>\n<p>\u041f\u043e\u043a\u0430 \u0432\u043d\u0435\u0448\u043d\u0430\u044f\u044f \u044d\u043b\u0435\u043a\u0442\u0440\u0438\u0447\u0435\u0441\u043a\u0430\u044f \u0446\u0435\u043f\u044c <strong>\u0440\u0430\u0437\u043e\u043c\u043a\u043d\u0443\u0442\u0430<\/strong>, \u043d\u0430 \u043f\u043e\u0432\u0435\u0440\u0445\u043d\u043e\u0441\u0442\u044f\u0445 \u043e\u0431\u043e\u0438\u0445 \u044d\u043b\u0435\u043a\u0442\u0440\u043e\u0434\u043e\u0432 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430 \u0414\u0430\u043d\u0438\u044d\u043b\u044f \u0443\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u0440\u0430\u0432\u043d\u043e\u0432\u0435\u0441\u0438\u0435 \u043c\u0435\u0436\u0434\u0443 \u043d\u0435\u0439\u0442\u0440\u0430\u043b\u044c\u043d\u044b\u043c\u0438 \u0430\u0442\u043e\u043c\u0430\u043c\u0438 \u043c\u0435\u0442\u0430\u043b\u043b\u0430 \u044d\u043b\u0435\u043a\u0442\u0440\u043e\u0434\u0430 \u0438 \u0438\u043e\u043d\u0430\u043c\u0438 \u044d\u0442\u043e\u0433\u043e \u0436\u0435 \u043c\u0435\u0442\u0430\u043b\u043b\u0430 \u0432 \u0440\u0430\u0441\u0442\u0432\u043e\u0440\u0435. \u041f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u0438\u043e\u043d\u044b \u043c\u0435\u0434\u0438 <strong>\u043d\u0435 \u043c\u043e\u0433\u0443\u0442<\/strong> \u043f\u0440\u043e\u043d\u0438\u043a\u043d\u0443\u0442\u044c \u043a \u0446\u0438\u043d\u043a\u043e\u0432\u043e\u043c\u0443 \u044d\u043b\u0435\u043a\u0442\u0440\u043e\u0434\u0443 \u0447\u0442\u043e\u0431\u044b \u043e\u043a\u0438\u0441\u043b\u0438\u0442\u044c \u0435\u0433\u043e \u043d\u0430\u043f\u0440\u044f\u043c\u0443\u044e:<\/p>\n<p>\u0440\u0435\u0430\u0433\u0435\u043d\u0442\u044b, \u0446\u0438\u043d\u043a \u0438 \u043c\u0435\u0434\u043d\u044b\u0439 \u043a\u0443\u043f\u043e\u0440\u043e\u0441, \u043d\u0435 \u0440\u0430\u0441\u0445\u043e\u0434\u0443\u044e\u0442\u0441\u044f.<\/p>\n<p>\u041a\u0430\u043a \u0442\u043e\u043b\u044c\u043a\u043e \u044d\u043b\u0435\u043a\u0442\u0440\u043e\u0434\u044b \u0441\u043e\u0435\u0434\u0438\u043d\u044f\u044e\u0442\u0441\u044f \u0447\u0435\u0440\u0435\u0437 \u0432\u043d\u0435\u0448\u043d\u044e\u044e \u044d\u043b\u0435\u043a\u0442\u0440\u0438\u0447\u0435\u0441\u043a\u0443\u044e \u0446\u0435\u043f\u044c, \u0442\u0430\u043a \u0432 \u0441\u0438\u043b\u0443 \u0431\u043e\u043b\u0435\u0435 \u043e\u0442\u0440\u0438\u0446\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0433\u043e \u043f\u043e\u0442\u0435\u043d\u0446\u0438\u0430\u043b\u0430 \u0446\u0438\u043d\u043a\u043e\u0432\u043e\u0433\u043e \u044d\u043b\u0435\u043a\u0442\u0440\u043e\u0434\u0430 \u043f\u043e \u043e\u0442\u043d\u043e\u0448\u0435\u043d\u0438\u044e \u043a \u043c\u0435\u0434\u043d\u043e\u043c\u0443 \u043f\u043e \u0446\u0435\u043f\u0438 \u043d\u0430\u0447\u0438\u043d\u0430\u0435\u0442 \u0442\u0435\u0447\u044c \u0442\u043e\u043a. \u042d\u043b\u0435\u043a\u0442\u0440\u043e\u043d\u044b \u043f\u0435\u0440\u0435\u043c\u0435\u0449\u0430\u044e\u0442\u0441\u044f \u043e\u0442 \u0446\u0438\u043d\u043a\u043e\u0432\u043e\u0433\u043e \u044d\u043b\u0435\u043a\u0442\u0440\u043e\u0434\u0430 \u043a \u043c\u0435\u0434\u043d\u043e\u043c\u0443 \u0447\u0435\u0440\u0435\u0437 \u0441\u043e\u0435\u0434\u0438\u043d\u0438\u0432\u0448\u0438\u0439 \u0438\u0445 \u043f\u0440\u043e\u0432\u043e\u0434\u043d\u0438\u043a .<\/p>\n<p>\u0423\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044f \u0440\u0435\u0430\u043a\u0446\u0438\u0439 \u0432 \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0449\u0435\u043c \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0435 \u0414\u0430\u043d\u0438\u044d\u043b\u044f \u0432\u044b\u0433\u043b\u044f\u0434\u044f\u0442 \u0442\u0430\u043a:<\/p>\n<ul>\n<li>\n<p>\u041d\u0430 \u043f\u043e\u0432\u0435\u0440\u0445\u043d\u043e\u0441\u0442\u0438 \u043c\u0435\u0434\u043d\u043e\u0433\u043e \u043a\u0430\u0442\u043e\u0434\u0430 \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442 \u0432\u043e\u0441\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435 \u043c\u0435\u0434\u0438 \u0438\u0437 \u0438\u043e\u043d\u043e\u0432, \u043f\u043b\u0430\u0432\u0430\u044e\u0449\u0438\u0445 \u0432 \u043e\u043a\u0440\u0443\u0436\u0430\u044e\u0449\u0435\u043c \u044d\u043b\u0435\u043a\u0442\u0440\u043e\u043b\u0438\u0442\u0435, \u0437\u0430 \u0441\u0447\u0451\u0442 \u044d\u043b\u0435\u043a\u0442\u0440\u043e\u043d\u043e\u0432, \u043f\u0440\u0438\u0445\u043e\u0434\u044f\u0449\u0438\u0445 \u043e\u0442 \u0446\u0438\u043d\u043a\u043e\u0432\u043e\u0433\u043e \u044d\u043b\u0435\u043a\u0442\u0440\u043e\u0434\u0430 \u043f\u043e \u043f\u0440\u043e\u0432\u043e\u0434\u0443 \u0438\u0437 \u0432\u043d\u0435\u0448\u043d\u0435\u0439 \u0446\u0435\u043f\u0438:<\/p>\n<\/li>\n<\/ul>\n<ul>\n<li>\n<p>\u041d\u0430 \u0446\u0438\u043d\u043a\u043e\u0432\u043e\u043c \u0430\u043d\u043e\u0434\u0435 \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442 \u043e\u043a\u0438\u0441\u043b\u0435\u043d\u0438\u0435 \u0446\u0438\u043d\u043a\u0430 \u0441 \u043f\u0435\u0440\u0435\u0445\u043e\u0434\u043e\u043c \u0435\u0433\u043e \u0438\u043e\u043d\u043e\u0432 \u0441 \u043f\u043e\u0432\u0435\u0440\u0445\u043d\u043e\u0441\u0442\u0438 \u043c\u0435\u0442\u0430\u043b\u043b\u0430 \u0432 \u043e\u043a\u0440\u0443\u0436\u0430\u044e\u0449\u0438\u0439 \u044d\u043b\u0435\u043a\u0442\u0440\u043e\u043b\u0438\u0442. \u042d\u043b\u0435\u043a\u0442\u0440\u043e\u043d\u044b \u0443\u0445\u043e\u0434\u044f\u0442 \u0432 \u043f\u0440\u043e\u0432\u043e\u0434 \u0432\u043d\u0435\u0448\u043d\u0435\u0439 \u0446\u0435\u043f\u0438:<\/p>\n<\/li>\n<\/ul>\n<p>\u0412 \u0445\u043e\u0434\u0435 \u0432\u044b\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u044d\u043b\u0435\u043a\u0442\u0440\u043e\u044d\u043d\u0435\u0440\u0433\u0438\u0438 \u0446\u0438\u043d\u043a\u043e\u0432\u044b\u0439 \u044d\u043b\u0435\u043a\u0442\u0440\u043e\u0434 \u043f\u043e\u0441\u0442\u0435\u043f\u0435\u043d\u043d\u043e \u0440\u0430\u0441\u0442\u0432\u043e\u0440\u044f\u0435\u0442\u0441\u044f, \u0430 \u043c\u0435\u0434\u043d\u044b\u0439, \u043d\u0430\u043e\u0431\u043e\u0440\u043e\u0442, \u0443\u0432\u0435\u043b\u0438\u0447\u0438\u0432\u0430\u0435\u0442 \u0441\u0432\u043e\u044e \u043c\u0430\u0441\u0441\u0443. \u0427\u0435\u0440\u0435\u0437 \u043f\u043e\u0440\u0438\u0441\u0442\u0443\u044e \u043f\u0435\u0440\u0435\u0433\u043e\u0440\u043e\u0434\u043a\u0443 \u043c\u0435\u0436\u0434\u0443 \u044d\u043b\u0435\u043a\u0442\u0440\u043e\u043b\u0438\u0442\u0430\u043c\u0438 \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442 \u043e\u0431\u043c\u0435\u043d \u0438\u043e\u043d\u0430\u043c\u0438 (\u0441\u043c. \u0440\u0438\u0441. 7 \u0441\u0445\u0435\u043c\u0430 \u0441\u043b\u0435\u0432\u0430).<\/p>\n<p>\u042d\u0414\u0421 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430 \u0414\u0430\u043d\u0438\u044d\u043b\u044f \u0441\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u043e\u043a\u043e\u043b\u043e 1 \u0432\u043e\u043b\u044c\u0442\u0430, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u0438\u0445 \u0441\u043e\u0435\u0434\u0438\u043d\u044f\u043b\u0438 \u0432 \u0431\u0430\u0442\u0430\u0440\u0435\u0438 \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e \u043f\u043e \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0434\u0435\u0441\u044f\u0442\u043a\u043e\u0432 \u0431\u0430\u043d\u043e\u043a.<\/p>\n<p>\u0421\u043f\u0440\u0430\u0432\u0430 \u043d\u0430 \u0440\u0438\u0441. 7 \u043f\u043e\u043a\u0430\u0437\u0430\u043d\u0430 \u0441\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u0430\u044f \u043a\u043e\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u044f \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430 \u0414\u0430\u043d\u0438\u044d\u043b\u044f, \u043a\u043e\u0442\u043e\u0440\u0443\u044e \u043c\u043e\u0436\u043d\u043e <a href=\"https:\/\/www.amazon.in\/mlabs-mLabs-Daniel-Cell\/dp\/B01H1H6JM2\" rel=\"noopener noreferrer nofollow\">\u043d\u0430\u0439\u0442\u0438 \u0432 \u043f\u0440\u043e\u0434\u0430\u0436\u0435<\/a> \u0438 \u043a\u0443\u043f\u0438\u0442\u044c \u0432 \u0445\u043e\u0431\u0431\u0438\u0439\u043d\u044b\u0445 \u0446\u0435\u043b\u044f\u0445. \u041a\u043e\u0440\u043f\u0443\u0441 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430 1 \u0441\u0434\u0435\u043b\u0430\u043d \u0438\u0437 \u043c\u0435\u0434\u0438 \u0438 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0432 \u0440\u043e\u043b\u0438 \u043a\u0430\u0442\u043e\u0434\u0430, \u043f\u043e\u0440\u0438\u0441\u0442\u044b\u0439 \u043a\u0435\u0440\u0430\u043c\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u0441\u0442\u0430\u043a\u0430\u043d\u0447\u0438\u043a 2 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u0442 \u0440\u043e\u043b\u044c \u0440\u0430\u0437\u0434\u0435\u043b\u0438\u0442\u0435\u043b\u044f \u044d\u043b\u0435\u043a\u0442\u0440\u043e\u043b\u0438\u0442\u043e\u0432. \u0412 \u0441\u0442\u0430\u043a\u0430\u043d\u0447\u0438\u043a \u043f\u043e\u043c\u0435\u0449\u0430\u0435\u0442\u0441\u044f \u0446\u0438\u043d\u043a\u043e\u0432\u044b\u0439 \u0430\u043d\u043e\u0434 3. \u042d\u043b\u0435\u043c\u0435\u043d\u0442 \u0437\u0430\u043f\u043e\u043b\u043d\u044f\u0435\u0442\u0441\u044f \u044d\u043b\u0435\u043a\u0442\u0440\u043e\u043b\u0438\u0442\u0430\u043c\u0438 \u0438 \u043f\u043e\u0441\u043b\u0435 \u044d\u0442\u043e\u0433\u043e \u0433\u043e\u0442\u043e\u0432 \u043a \u044d\u043a\u0441\u043f\u043b\u0443\u0430\u0442\u0430\u0446\u0438\u0438.<\/p>\n<h3>4. \u041b\u0438\u043d\u0438\u0438 \u0441\u0432\u044f\u0437\u0438<\/h3>\n<p>\u041e \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u043d\u044b\u0445 \u043f\u0440\u043e\u0432\u043e\u0434\u0430\u0445 \u043c\u043e\u0436\u043d\u043e \u043d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u0441\u043e\u0442\u043d\u0438 \u0441\u0442\u0440\u0430\u043d\u0438\u0446, \u043d\u043e \u0437\u0434\u0435\u0441\u044c \u044f \u043b\u0438\u0448\u044c \u043a\u0440\u0430\u0442\u043a\u043e \u0443\u043f\u043e\u043c\u044f\u043d\u0443 \u043e \u043d\u0438\u0445.<\/p>\n<p>\u0414\u043b\u044f \u043f\u0440\u043e\u043a\u043b\u0430\u0434\u043a\u0438 \u043d\u0430\u0437\u0435\u043c\u043d\u044b\u0445 \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u043d\u044b\u0445 \u043b\u0438\u043d\u0438\u0439 \u0441\u0442\u0430\u0432\u0438\u043b\u0438 \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u0435 \u0441\u0442\u043e\u043b\u0431\u044b. <\/p>\n<figure class=\"full-width\">\n<div><figcaption><a href=\"https:\/\/www.telegraphpoleappreciationsociety.org\/resting-in-peace\/\" rel=\"noopener noreferrer nofollow\">\u0422\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u043d\u044b\u0439 \u0441\u0442\u043e\u043b\u0431 \u0433\u0434\u0435-\u0442\u043e \u0432 \u0421\u0435\u0432\u0435\u0440\u043d\u043e\u043c \u0423\u044d\u043b\u044c\u0441\u0435<\/a><\/figcaption><\/div>\n<\/figure>\n<p>\u041f\u0440\u043e\u0432\u043e\u0434 \u0431\u044b\u043b \u043c\u0435\u0434\u043d\u044b\u0439 \u0438\u043b\u0438 \u043c\u0435\u0434\u043d\u043e-\u0441\u0442\u0430\u043b\u044c\u043d\u043e\u0439, \u043a\u043e\u0433\u0434\u0430 \u0434\u043b\u044f \u043f\u043e\u0432\u044b\u0448\u0435\u043d\u043d\u043e\u0439 \u043f\u0440\u043e\u0447\u043d\u043e\u0441\u0442\u0438 \u043c\u0435\u0434\u043d\u044b\u0435 \u0436\u0438\u043b\u044b \u043d\u0430\u0432\u0438\u0432\u0430\u044e\u0442 \u043d\u0430 \u0441\u0442\u0430\u043b\u044c\u043d\u0443\u044e \u043f\u0440\u043e\u0432\u043e\u043b\u043e\u043a\u0443-\u0441\u0435\u0440\u0434\u0446\u0435\u0432\u0438\u043d\u0443.<\/p>\n<p>\u0412 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u0438\u0437\u043e\u043b\u044f\u0446\u0438\u043e\u043d\u043d\u044b\u0445 \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b\u043e\u0432 \u0434\u043b\u044f \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u043d\u044b\u0445 \u043a\u0430\u0431\u0435\u043b\u0435\u0439 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043b\u0438\u0441\u044c <a href=\"https:\/\/ru.wikipedia.org\/wiki\/%D0%93%D1%83%D1%82%D1%82%D0%B0%D0%BF%D0%B5%D1%80%D1%87%D0%B0\" rel=\"noopener noreferrer nofollow\">\u0433\u0443\u0442\u0442\u0430\u043f\u0435\u0440\u0447\u0430<\/a>, <a href=\"https:\/\/ru.wikipedia.org\/wiki\/%D0%9F%D0%B5%D0%BD%D1%8C%D0%BA%D0%B0\" rel=\"noopener noreferrer nofollow\">\u043f\u0435\u043d\u044c\u043a\u0430<\/a>, <a href=\"https:\/\/ru.wikipedia.org\/wiki\/%D0%94%D0%B6%D1%83%D1%82_(%D0%B2%D0%BE%D0%BB%D0%BE%D0%BA%D0%BD%D0%BE)\" rel=\"noopener noreferrer nofollow\">\u0434\u0436\u0443\u0442<\/a>, <a href=\"https:\/\/ru.wikipedia.org\/wiki\/%D0%91%D0%B8%D1%82%D1%83%D0%BC\" rel=\"noopener noreferrer nofollow\">\u0431\u0438\u0442\u0443\u043c<\/a>.<\/p>\n<p>\u0421\u0430\u043c\u044b\u0435 \u044d\u043a\u0441\u0442\u0440\u0435\u043c\u0430\u043b\u044c\u043d\u044b\u0435 \u0438\u0441\u043f\u044b\u0442\u0430\u043d\u0438\u044f \u043b\u044e\u0434\u0435\u0439 \u0438 \u0442\u0435\u0445\u043d\u0438\u043a\u0438 \u0441\u043b\u0443\u0447\u0430\u043b\u0438\u0441\u044c \u043f\u0440\u0438 \u043f\u0440\u043e\u043a\u043b\u0430\u0434\u043a\u0435 \u043f\u0435\u0440\u0432\u044b\u0445 \u043f\u043e\u0434\u0432\u043e\u0434\u043d\u044b\u0445 \u043a\u0430\u0431\u0435\u043b\u0435\u0439 \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u0444\u043d\u043e\u0439 \u0441\u0432\u044f\u0437\u0438 \u0432 1850-60 \u0433\u043e\u0434\u0430\u0445. \u041e\u0431 \u044d\u0442\u0438\u0445 \u043f\u0440\u0435\u043e\u0434\u043e\u043b\u0435\u043d\u0438\u044f\u0445 \u0438 \u0434\u043e\u0441\u0442\u0438\u0436\u0435\u043d\u0438\u044f\u0445 \u043c\u043e\u0436\u043d\u043e \u043f\u0440\u043e\u0447\u0438\u0442\u0430\u0442\u044c \u0432 \u043a\u043d\u0438\u0433\u0435 \u0410\u0440\u0442\u0443\u0440\u0430 \u041a\u043b\u0430\u0440\u043a\u0430 &#171;\u0413\u043e\u043b\u043e\u0441 \u0447\u0435\u0440\u0435\u0437 \u043e\u043a\u0435\u0430\u043d&#187;, \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u043e\u0439 <a href=\"https:\/\/royallib.com\/book\/klark_artur\/goloc_cherez_okean.html\" rel=\"noopener noreferrer nofollow\">\u0437\u0434\u0435\u0441\u044c<\/a>. \u0412 \u043e\u0442\u043b\u0438\u0447\u0438\u0435 \u043e\u0442 \u0431\u043e\u043b\u044c\u0448\u0438\u043d\u0441\u0442\u0432\u0430 \u0434\u0440\u0443\u0433\u0438\u0445 \u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0434\u0435\u043d\u0438\u0439<\/p>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[],"tags":[],"class_list":["post-467512","post","type-post","status-publish","format-standard","hentry"],"_links":{"self":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/467512","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=467512"}],"version-history":[{"count":0,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/467512\/revisions"}],"wp:attachment":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=467512"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=467512"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=467512"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}