Advertisement
Guest User

Untitled

a guest
Jan 23rd, 2019
71
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 9.71 KB | None | 0 0
  1. BEGIN{
  2. print "Co chcesz zrobic? [Wpisz 1/2] "
  3. print "1. Przetlumacz na Alfabet Morse'a"
  4. print "2. Przetlumacz na jezyk polski z Alfabetu Morse'a"
  5. getline wybor
  6. switch(wybor)
  7. {
  8. case /1/:
  9. print "Podaj tekst, ktory ma zostac przetlumaczony na Alfabet Morse'a: "
  10. getline string
  11. result=""
  12. word=1
  13. for(i=1; i<=length(string); i++)
  14. {
  15.  
  16. symbol=substr(string, i, 1)
  17.  
  18. switch(symbol)
  19. {
  20. case /a/: case /A/:
  21. a = "._"
  22. break
  23. case /ą/: case /Ą/:
  24. a = "._._"
  25. break
  26. case /b/: case /B/:
  27. a = "_..."
  28. break
  29. case /c/: case /C/:
  30. a = "_._."
  31. break
  32. case /ć/: case /Ć/:
  33. a = "_._.."
  34. break
  35. case /d/: case /D/:
  36. a = "_.."
  37. break
  38. case /e/: case /E/:
  39. a = "."
  40. break
  41. case /ę/: case /Ę/:
  42. a = ".._.."
  43. break
  44. case /f/: case /F/:
  45. a = ".._."
  46. break
  47. case /g/: case /G/:
  48. a = "__.";
  49. case /h/: case /H/:
  50. a = "...."
  51. break
  52. case /i/: case /I/:
  53. a = ".."
  54. break
  55. case /j/: case /J/:
  56. a = ".___"
  57. break
  58. case /k/: case /K/:
  59. a = "_._"
  60. break
  61. case /l/: case /L/:
  62. a = "._.."
  63. break
  64. case /ł/: case /Ł/:
  65. a = "._.._"
  66. break
  67. case /m/: case /M/:
  68. a = "__"
  69. break
  70. case /n/: case /N/:
  71. a = "_."
  72. break
  73. case /ń/: case /Ń/:
  74. a = "__.__"
  75. break
  76. case /o/: case /O/:
  77. a = "___"
  78. break
  79. case /o/: case /O/:
  80. a = "___."
  81. break
  82. case /p/: case /P/:
  83. a = ".__."
  84. break
  85. case /q/: case /Q/:
  86. a = "__._"
  87. break
  88. case /r/: case /R/:
  89. a = "._."
  90. break
  91. case /s/: case /S/:
  92. a = "..."
  93. break
  94. case /ś/: case /Ś/:
  95. a = "..._..."
  96. break
  97. case /t/: case /T/:
  98. a = "_"
  99. break
  100. case /u/: case /U/:
  101. a = ".._"
  102. break
  103. case /v/: case /V/:
  104. a = "..._"
  105. break
  106. case /w/: case /W/:
  107. a = ".__"
  108. break
  109. case /x/: case /X/:
  110. a = "_.._"
  111. break
  112. case /y/: case /Y/:
  113. a = "_.__"
  114. break
  115. case /z/: case /Z/:
  116. a = "__.."
  117. break
  118. case /ż/: case /Ż/:
  119. a = "__.._."
  120. break
  121. case /ź/: case /Ź/:
  122. a = "__.._"
  123. break
  124. case /1/:
  125. a = ".____"
  126. break
  127. case /2/:
  128. a = "..___"
  129. break
  130. case /3/:
  131. a = "...__"
  132. break
  133. case /4/:
  134. a = "...._"
  135. break
  136. case /5/:
  137. a = "....."
  138. break
  139. case /6/:
  140. a = "_...."
  141. break
  142. case /7/:
  143. a = "__..."
  144. break
  145. case /8/:
  146. a = "___.."
  147. break
  148. case /9/:
  149. a = "____."
  150. break
  151. case /0/:
  152. a = "_____"
  153. break
  154. case / /:
  155. a = " | "
  156. break
  157. default:
  158. symbol = ""
  159. break
  160.  
  161. }
  162.  
  163. if(symbol==" ")
  164. {
  165. word++
  166. }
  167.  
  168. if(symbol=="")
  169. {
  170. print "Nieznany znak w słowie numer: " word
  171. exit
  172. }
  173.  
  174. result = result " " a
  175.  
  176. }
  177.  
  178. print result
  179. break
  180. case /2/ :
  181. print "Podaj tekst, ktory ma zostac przetlumaczony z Alfabetu Morse'a: [znaki oddziel ' ', a nowy wyraz ' | '"
  182. getline string
  183. result=""
  184. temp=""
  185. word=1
  186. for(i=1; i<=length(string); i++)
  187. {
  188.  
  189. symbol=substr(string, i, 1)
  190. temp = temp "" symbol
  191. temp2 = symbol
  192. if(symbol == " ")
  193. {
  194. switch(temp)
  195. {
  196. case /\.\.\._\.\.\./:
  197. a = "ś"
  198. break
  199. case /__\.\._\./:
  200. a = "ż"
  201. break
  202. case /__\.\._/:
  203. a = "ź"
  204. break
  205. case /\.____/:
  206. a = "1"
  207. break
  208. case /\.\.___/:
  209. a = "2"
  210. break
  211. case /\.\.\.__/:
  212. a = "3"
  213. break
  214. case /\.\.\.\._/:
  215. a = "4"
  216. break
  217. case /\.\.\.\.\./:
  218. a = "5"
  219. break
  220. case /_\.\.\.\./:
  221. a = "6"
  222. break
  223. case /__\.\.\./:
  224. a = "7"
  225. break
  226. case /___\.\./:
  227. a = "8"
  228. break
  229. case /____\./:
  230. a = "9"
  231. break
  232. case /_____/:
  233. a = "0"
  234. break
  235. case /\._\.\._/:
  236. a = "ł"
  237. break
  238. case /_\._\.\./:
  239. a = "ć"
  240. break
  241. case /\.\._\.\./:
  242. a = "ę"
  243. break
  244. case /__\.__/:
  245. a = "ń"
  246. break
  247. case /\._\._/:
  248. a = "ą"
  249. break
  250. case /_\.\.\./:
  251. a = "b"
  252. break
  253. case /_\.__/:
  254. a = "y"
  255. break
  256. case /__\.\./:
  257. a = "z"
  258. break
  259. case /_\._\./:
  260. a = "c"
  261. break
  262. case /\.\._\./:
  263. a = "f"
  264. break
  265. case /\.\.\.\./:
  266. a = "h"
  267. break
  268. case /\._\.\./:
  269. a = "l"
  270. break
  271. case /__\._/:
  272. a = "q"
  273. break
  274. case /___\./:
  275. a = "ó"
  276. break
  277. case /\.___/:
  278. a = "j"
  279. break
  280. case /_\.\._/:
  281. a = "x"
  282. break
  283. case /\.\.\._/:
  284. a = "v"
  285. break
  286. case /_\._/:
  287. a = "k"
  288. break
  289. case /___/:
  290. a = "o"
  291. break
  292. case /\.__\./:
  293. a = "p"
  294. break
  295. case /__\./:
  296. a = "g";
  297. break
  298. case /\._\./:
  299. a = "r"
  300. break
  301. case /\.\.\./:
  302. a = "s"
  303. break
  304. case /\.\._/:
  305. a = "u"
  306. break
  307. case /\.__/:
  308. a = "w"
  309. break
  310. case /__/:
  311. a = "m"
  312. break
  313. case /\.\./:
  314. a = "i"
  315. break
  316. case /_\./:
  317. a = "n"
  318. break
  319. case /\._/:
  320. a = "a"
  321. break
  322. case /_/:
  323. a = "t"
  324. break
  325. case /\./:
  326. a = "e"
  327. break
  328. case /|/:
  329. a = " "
  330. break
  331. default:
  332. a = "blad"
  333. break
  334.  
  335.  
  336. }
  337. }
  338. if(symbol==" ")
  339. {
  340. word++
  341. result = result "" a
  342. temp=""
  343. }
  344.  
  345. if(symbol=="blad")
  346. {
  347. print "Nieznany znak w słowie numer " word
  348. exit
  349. }
  350.  
  351. }
  352. print result
  353. break
  354. }
  355. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement