按字符数排序的最短代码,它将仅使用字母字符(大写和小写),数字,逗号,句点和问号输入字符串,并返回摩尔斯电码中字符串的表示形式.摩尔斯电码代码输出应包括一个短音(-ASCII 0x2D)用于长音(AKA'dah')和一个点(.,ASCII 0x2E)用于短蜂鸣音(AKA'dit').
每个字母应用空格(' 'ASCII 0x20)分隔,每个字应用正斜杠(/ASCII 0x2F)分隔.
摩尔斯电码表:
替代文字http://liranuna.com/junk/morse.gif
Input:
Hello world
Output:
.... . .-.. .-.. --- / .-- --- .-. .-.. -..
Run Code Online (Sandbox Code Playgroud)
Input:
Hello, Stackoverflow.
Output:
.... . .-.. .-.. --- --..-- / ... - .- -.-. -.- --- ...- . .-. ..-. .-.. --- .-- .-.-.-
Run Code Online (Sandbox Code Playgroud)
代码计数包括输入/输出(即完整程序).
按字符计数的最短代码,用于从输入字符串生成波形.
通过提升(第1行)较高字符并使(第1行)降低较低字符来生成波.相等的字符保持在同一行(没有提升或降级).
输入仅由小写字符和数字组成,字母被认为高于数字.
Input:
1234567890qwertyuiopasdfghjklzxcvbnm
Output:
z
l x v n
k c b m
j
h
g
y p s f
t u o a d
w r i
9 q e
8 0
7
6
5
4
3
2
1
Input:
31415926535897932384626433832795028841971693993751058209749445923078164062862
Output:
9 9 8 6 6
9 6 8 7 3 3 4 2 4 8 9 88
3 4 5 2 5 5 2 33 3 7 5 2 4 9 9 99 …Run Code Online (Sandbox Code Playgroud) 我的微控制器中有一个看门狗,如果它没有踢,将重置处理器.我的应用程序运行良好一段时间,但最终会重置,因为看门狗没有被踢.如果我单步执行该程序,它工作正常.
有什么方法可以调试它?
编辑:结论:我发现我的错误的方式是看门狗面包屑.
我正在使用具有高和低ISR向量的PIC.高矢量用于处理LED矩阵,低矢量用于处理定时器滴答.但我把两个ISR处理程序放在高位向量中.因此,当我禁用LED矩阵ISR并且计时器滴答ISR需要服务时,处理器将陷入低ISR以处理计时器滴答,但计时器滴答处理程序不在那里.
面包屑将我的搜索范围限制在处理led矩阵的功能中,特别是禁用LED矩阵中断.