Pular para o conteúdo principal

Postagem em destaque

BlackTDN :: LeetCode :: Comparando Implementações Harbour e TLPP para o Desafio Longest Palindromic Substring

_Créditos das imagens: ChatGPT_ ### LeetCode :: Comparando Implementações Harbour e TLPP para o Desafio Longest Palindromic Substring Resolver o problema do [Longest Palindromic Substring](https://leetcode.com/problems/longest-palindromic-substring/description/) é um exercício clássico de programação, que desafia desenvolvedores a encontrar a maior substring palindrômica dentro de uma string. Recentemente, exploramos soluções tanto em Harbour quanto em TLPP (Total Language Protheus Programming). Neste artigo, comparamos as implementações nessas duas linguagens, destacando suas semelhanças, diferenças e funcionalidades específicas. #### Implementações em Harbour ##### Versão 5.1 Essa solução utiliza a técnica de expansão a partir do centro do palíndromo. Cada caractere ou par de caracteres consecutivos é considerado um possível "centro". O algoritmo expande em ambas as direções enquanto os caracteres forem iguais, retornando o maior palíndromo encontrado. ##### Versão 5....

BlackTDN :: DNA Tech Editor xBase/SQL

DNA Tech Editor xBase/SQL 


 O Harbour permite criar, testar, e executar código xBase online. Ex.:


Senti falta de algo semelhante no Protheus. Então, decidi implementar algumas melhorias no DNA Tech Editor xBase/SQL . Por enquanto apenas para ser executado no smartclient, mas futuramente.... quem sabe!



***Exemplo de Código criado no DNA Tech Editor xBase/SQL 

```xBase


#pragma @__BeginText@
{
    "Includes" : "C:\\totvs\\includes;C:\\GitHub\\naldodj-tlpp\\include",
    "MainFunction" : "u_DNaEdtTst()"    
}
#pragma @__EndText@

#include "totvs.ch"

static Function __Teste(n) as variant
return(MsgInfo(n,ProcName()))

function u_DNaEdtTst() as variant

    local n,d:=10 as numeric
    __cInternet:=NIL
    for n:=1 to d
        __Teste(n)
    next n

    dna.tech.dirtools():BrowseFiles("Includes","c:\totvs\includes\","*.*")
   
return(nil)


```



...






***Um outro Exemplo de Código criado no DNA Tech Editor xBase/SQL 
```xBase
#pragma @__BeginText@
{
    "Includes" : "C:\\totvs\\includes;C:\\GitHub\\naldodj-tlpp\\include",
    "MainFunction" : "u_DNaEdtTst()"    
}
#pragma @__EndText@

#include "totvs.ch"

static function MyChangeQuery(cQuery)
    local nAT as numeric
    cQuery:=allTrim(cQuery)
    cQuery:=strTran(cQuery,"`","")
    nAT:=AT("SELECT",Upper(cQuery))
    cQuery:=subStr(cQuery,nAT)
    cQuery:=strTran(cQuery,";","")
    cQuery:=strTran(cQuery,chr(13),"")
    cQuery:=strTran(cQuery,chr(10),"")
    cQuery:=ChangeQuery(cQuery)
return(cQuery)

function u_DNaEdtTst() as variant

    local cQuery as character

    beginContent var cQuery
        SELECT SX5.X5_FILIAL
              ,SX5.X5_TABELA
              ,SX5.X5_DESCRI
          FROM SX5030 SX5
         WHERE SX5.D_E_L_E_T_=' '
    endContent
    
    cQuery:=strTran(cQuery,"SX5030",RetSQLName("SX5"))
    
    dna.tech.sqlTools():QueryFWMBrowse(MyChangeQuery(cQuery))
    
return(nil)
```





Mas a idéia básica é essa. Ainda está em desenvolvimento. 

Quer ter acesso a essa e a outras incríveis ferramentas desenvolvidas por este que vos escreve. Compartilhe com o Projeto "Eu sou Ninja (Abada Capoeira)" (BlackTDN :: Social :: Rifa Festival da Arte Capoeira Projeto Eu Sou Ninja) e tenha a chance de concorrer a todo código de minha biblioteca pessoal.

Comentários

Postagens mais visitadas