13 - LISTA DE NOMES EM ORDEM ALFABÉTICA PROGRAMADO EM TEXTO ESTRUTURADO - Codesys

705 views2561 WordsCopy TextShare
Apaixonados por Mecatrônica e Automação
Neste vídeo mostro uma aplicação do laço de repetição FOR para o ordenamento de uma lista de nomes e...
Video Transcript:
e hoje eu vou então aqui no nosso exemplo 6 elevar um pouquinho a régua aí de dificuldade para mostrar é o poder que tem essa instrução cíclica for Então vamos lá situação problema é comum né na área de automação que a gente Trabalhe com listas sejam elas lista de clientes lista de receitas de produção lista de peças lista de fornecedores E aí é comum também né que essas listas elas apareçam de forma organizada a partir de um critério de ordenamento esse critério de ordenamento seja ordem que a lista vai vai aparecer ela tem vários critérios
pode ser ordem alfabética ordem de prioridade um registro mais antigo um registro mais novo Depende da situação e o desafio aqui vai ser justamente fazer o ordenamento de uma lista de nomes em ordem alfabética para fazer esse ordenamento alfabético primeiramente eu tenho que ter os nomes Então os nomes eu vou usar eles a partir de uma lista de nomes que é uma rei que é um vetor de string tá então eu fiz um arrai de Strings são 10 posições da posição zero a posição 9 e eu vou inicializar essa minha lista de 10 nomes com
nomes aleatórios Então essa minha lista original e ao final da minha instrução eu vou querer ter esse ordenamento aqui né então o Adão é o mais é o primeiro na hora de fonética Adão Ademar Ademir João José Juca Paulo Pedro Rafael Vitória então ao final Eu quero esse ordenamento Mas e aí como é que eu faço para fazer o seu ordenamento como é que eu vou resolver isso aqui o primeiro o primeiro passo né a gente tem que ver que instrução que eu vou usar para saber se uma palavra é está na ordem alfabética anterior
ou posterior que outra palavra né eu não consigo fazer toda string toda aliás todo o vetor ao mesmo tempo comparar todo o vetor ao mesmo tempo né isso não existe então eu tenho que comparar string com string Então se a gente procurar ali em ser mais mais ou em C né como é que eu faço para comparar Strings né a instrução chama-se strcompe STR cnp tá então você depois Pode procurar aí no Google e achar essa instrução então o STR como chama-se string completo então ele vai comparar né uma string com outra isso eu tô
falando de c ou C mais mais tá aqui o Nossa linguagem é texto estruturada eu vou chegar lá tá então como é que funciona essa comparação né então esse esse Hatch aqui eu seria variável de retorno ele receberia o resultado dessa comparação E aí eu teria o seguinte resultado se as duas Strings são iguais são idênticas O resultado vai ser zero se a primeira string né o STR é maior que a segunda string O resultado vai ser maior que maior que zero O que quer dizer uma string maior que a outra em asic eu já
vou explicar sobre isso tá e se o str1 é menor do que do que o str2 eu vou ter um valor menor que zero isso em relação à tabela mas o que que é a tabela Então olha só a tabela as que é uma tabela e você tem todos os caracteres digamos assim da da do nosso do nosso alfabeto mas não só do alfabeto eu tenho mais caracteres eu tenho todos os caracteres que é utilizado em computação não trabalharás que ela foi criada muito tempo atrás né então eu tenho o valor de cada elemento na
em decimal em hexa em octal né então por exemplo cada letra tem um valor numérico então a letra A maiúscula ela equivale ao valor 65 em decimal a letra B equivale ao número 66 ó a letra h é o 72 a letra A minúscula é o 97 o b minúsculo é 98 então quando a gente fala e aí vou dar um zoom aqui ó tá ou seja uma ordem alfabética se eu for colocar esses caracteres em ordem alfabética né eu tenho que pegar números menores ó o a vem antes do b que vem antes do
C então o valor menor e isso mais ou menos mais ou menos não isso serve também aqui nessa nessa que aqui em vez de estar comparando caracteres eu tô comparando toda a string Então olha só que legal ele já me retorna O valor da string toda né então isso é muito bom Então olha só se o str1 é menor em Ask do que o str2 Né o string 1 é menor que a string 2 eu vou ter um valor menor que zero e que é o que quer dizer a stream ser menor que a dois
ela aparecer antes Aqui é como se fosse o a apareceu antes do b só que é a string toda e não só o carácter E aí se a gente procurar uma função já pronta né nos grupos de de fóruns aí de programadores e tal ou eventualmente isso isso já tem pronto essas essas esses códigos né eu vou ter algo parecido com isso aqui uma função em ser tá E aí vejo ele coloca dois fora um dentro do outro né é usa um if para usar a instrução de comparação Então se né se o string Compre
da primeira da string de índice J comparado com a string de índice for igual a -1 ó é o menor lá menor que zero né menos um ele faz a troca de uma Strike passa para um valor auxiliar pega J coloca no lugar daí e o que tá no auxiliar coloca na J então ele faz uma troca entre Strings aqui então como é que eu fiz a função em texto estruturado tá então eu fiz da seguinte forma eu aqui eu tenho a declaração das variáveis Eu tenho um Array da lista de nomes né de 0
a 9 ou seja 10 posições Eu tenho um string temporário E aí eu fiz o quê eu coloquei um fora dentro do outro ó tá claro quando eu clicar no botão para fazer o ordenamento Né o botão ordem alfabética eu vou coloquei um fora dentro do outro só que aí pode milho eu não tenho string Compre que que eu fiz aqui tá eu usei um IFF E aí dentro do ifo fiz lista nomes J é menor que a lista nomes e eu usei esse menor aqui ó então eu pego a lista que tá lá no
nome que tá na posição e jogo para uma posição temporária o que tá no J eu jogo para o i e que eu tava Temporada eu passo para o J então eu faço essa troca que nem ele faz aqui então é muito bem eu vou mostrar funcionando primeiro depois eu vou explicar porque que funciona bom e agora eu vou mostrar então essa estrutura funcionando eu tenho aqui a declaração das variáveis que nem eu mostrei antes e aqui no programa basicamente eu tenho duas estruturas um botão que carrega os nomes estão todos os nomes aqui e
depois a estrutura de Quando aciona o botão de ordem para ordenar né Eu tenho um fórum dentro do outro e a condição do IFF aqui e aquela troca para ir trocando então o nome pelo outro aí então agora eu comecei do início vejo que o a string ele tá toda vazia tudo vazio então quando eu clicar no botão de carregar nomes aí sim eu carrego inicialmente Aquela minha sequência né que não está em ordem alfabética tá E aí depois agora quando eu clicar no botão de ordenar ele vai fazer toda a lógica de ordenar então
colocou em ordem Adão Ademar Ademir João José Juca Paulo Pedro Rafael e Vitória é o último é o último nome tá então é funciona super direitinho e agora eu vou mostrar no detalhe como é que funciona esse ordenamento usando um Ford dentro do outro então quando eu rodo de um fórum dentro do outro né então o que que acontece o quando ele entra aqui o i começa em zero e aí ele já entra no segundo fórum e o J veja que o J é i mais um Então se o e é zero o J Vai
ser 1 tá então quando ele rodar essa primeira comparação aqui eu vou estar comparando quem eu vou estar no primeiro eu chamei de ciclo aqui no primeiro ciclo né do i e do j então o Ivy zero e o J Vale 1 né então eu vou estar comparando quem aqui né através do IFF lista nomes J é menor que lista então eu vou estar comparando quem eu vou estar comprando esses dois nomes aqui ó J né o j1 então o nome é menor do que o nome vitória né E aí a primeira resposta é sim
né porque o Ademir é menor que o Vitória para o lado da tabela asking né então o Ademir ele tá antes do Vitória então na primeira rodada aqui isso aqui vai ser verdadeiro então o que que ele vai fazer ele vai pegar o nome Zi o ia zero então ele vai pegar o nome que tá no Vitória aqui ó na posição zero e vai jogar no temporário aí ele vai pegar o nome o lista nome j ou j1 É o Ademir e vai jogar na posição e que a posição Zero no lugar do Vitória Então
ele pegou o Vitória botou numa variável temporária pegou o adnipapo é um lugar do Vitória e depois pegou o valor temporário Vitória botou no J aqui que lá então ele vai fazer a troca do Ademir pelo Vitória e aí o resultado seria esse aqui ó aí ele vai vir para o segundo ciclo aí no segundo ciclo o J é que implementa né quando ele chegando aí de fora o Jota incrementa então o J passa 2 e o i vai manter zero vai fazer todos os JS aí depois que ele incremento I faça todos os Jotas
de novo então é assim que funciona então o i vai ser zero e o J vale 2 Então quem que é i j e zero e J2 tá aqui ó o i é o admir e o J é o Pedro tá então ele vai comparar o Pedro né que é o do J é menor que o Ademir Não não é o Pedro é maior porque o Pedro vem depois ao final do segundo ciclo vai continuar igual aonde está aí eu vou para o terceiro ciclo aí o J incrementa mais uma vez ele vai para três
e mantém zero Então quem que eu vou comparar agora o Ademir como o Adão e aí olha só que legal o Adão é menor do que o Ademir é o Adão vem antes que o Ademir E aí ele vai trocar o Ademir pelo Adão ó ele faz a troca ele bota o que tava no i que é zero que é o admiro ele joga por temporário pega o Adão joga na posição do ADM e o Ademir Joga lá no lugar do Adão então eu eu o Adão vai vir para a primeira posição e o Ademir
vai para o lugar do Adão vai acontecer isso aqui ó tá Então essa é a sequência E aí vamos seguir aqui ó então eu já tô no terceiro ciclo depois eu venho o quarto ciclo aí o i Continua em 0 e o J Vale 4 Quem que é o j o J é o João agora aí a pergunta é o João é menor que o Adão Não não é então ele vai manter na posição que tá não vai trocar e ele faz com todos ele vai comprar o Paulo cujo Adão o Rafael com Adão o
Juca e veja que eu não tenho nenhum No resto da sequência que é menor que o Adão né o Ademar até tá pertinho ali mas não é o Adão vem primeiro então ao final do nono ciclo eu vou ter essa situação aqui ou seja o primeiro a primeira o primeiro ciclo do J né que foi de 0 a 9 ele vai servir o quê para pegar a palavra mais de de menor ordem alfabética e colocar na posição o Adão ele conseguiu fazer isso né primeiro ciclo do J né do está valendo de 1 a 9
Valeu para botar o Adão na posição aí ó lembro que a posição que o a lista Inicial era essa ó Então esse primeiro os primeiros 9 ciclos o primeiro ciclo do J que eu chamo né você viu para colocar o Adão lá na primeira posição aí eu incremento o i né Aí eu incremento o item no ciclo tem essa situação aí eu vou para o próximo eu incremento o e ele sobe de ele sobe para um então aí o que que vai acontecer eu vou comparar o Vitória aqui ó com o Pedro depois o Vitória
com o Ademir aí e vai na Aldemir vai ir para aquela posição eu não vou não vou mostrar todo o passo a passo aqui mas na verdade ele vai comparar essa posição uma aqui do I né que é o que é o e valendo um agora com todos os outros e aí o menor nome vai vir para essa posição que é o Ademar então ao final do J va do da segunda vez que o J rodar né de 2 a 9 né ele vai ele vai ter essa situação a demora vai vir para essa posição
no próximo ciclo do do ir valendo dois e o J valendo de três a nove ó ele vai colocar o Ademir na posição aqui e ao final então é de todos os ciclos né os 45 ciclos que são feitos eu tenho essa situação aqui Ele ordenou toda a lista tá então Ele ordenou toda a lista Então cara É um negócio Fantástico isso né então você consegue ter um resultado aí é muito muito satisfatório então fazendo um resumo né eu vou ter um vetor de nomes né de 10 nomes eu vou carregar esses nomes aleatoriamente aqui
de uma vez né na vida real esses nomes eles podem vir de uma e hm vir de uma tabela né eu vou eu posso ir Digamos que seja meus clientes aqui então ele vai vai vindo cliente cada dia vem um a cada hora vem um enfim né então esses nomes eles vendem algum lugar e eles são armazenados na sequência que eles chegam nesse rei e aí se eu clicar lá no botão de ordem alfabética ele ele reordena e ordena o os nomes né usando justamente essa instrução aqui fazendo essa comparação né se se o nome
é menor que o outro e aí o resultado que eu tenho ele é verdadeiro se sim Se o nome vem antes um do outro através daquela daquele esquema da ordem alfabética que é que tem a ver com a tabela ácida que eu mostrei antes então espero que você tenha gostado dessa aula forte abraço e até a próxima [Música]
Related Videos
14 - Variáveis Retentivas e Variáveis Permanentes - Codesys
32:39
14 - Variáveis Retentivas e Variáveis Perm...
Apaixonados por Mecatrônica e Automação
1,480 views
Workshop - Texto Estruturado na Prática
1:41:26
Workshop - Texto Estruturado na Prática
clpfacil
2,062 views
LIVE COVERAGE: California wildfires
LIVE COVERAGE: California wildfires
FOX 11 Los Angeles
Deep Focus - Music For Studying | Improve Your Focus - Study Music
Deep Focus - Music For Studying | Improve ...
Greenred Productions - Relaxing Music
Texto estruturado: arrays e laço FOR
33:21
Texto estruturado: arrays e laço FOR
Rogerio M B
1,803 views
Man Insults Keanu Reeves on a First Class Flight – Instantly Regrets It When the Truth Is Reveal!
24:00
Man Insults Keanu Reeves on a First Class ...
Heroic Acts
2,703,939 views
US Army Sergeant Who Danced With Melania Trump Speaks Out
1:52
US Army Sergeant Who Danced With Melania T...
Inside Edition
4,683,003 views
Trump Signs Slew of Crazy Executive Orders, Gets Mad at Church & a Shocking Lie Witness News
15:11
Trump Signs Slew of Crazy Executive Orders...
Jimmy Kimmel Live
2,893,778 views
Dave Chappelle Stand-Up Monologue 2025 - SNL
17:02
Dave Chappelle Stand-Up Monologue 2025 - SNL
Saturday Night Live
9,558,908 views
Jazz Relaxing Music at Cozy Winter Coffee Shop Ambience for Work ⛄ Smooth Jazz Instrumental Music
11:54:56
Jazz Relaxing Music at Cozy Winter Coffee ...
Relax Jazz Cafe
144,739 views
Programação de CLP em Texto Estruturado (ST) - Cena 01: From A to B
15:38
Programação de CLP em Texto Estruturado (S...
Automação e Simulação
2,482 views
LIVE California fires: Hughes wildfire erupts, 10,000 acres 14% contained
LIVE California fires: Hughes wildfire eru...
LiveNOW from FOX
01 - Meu primeiro programa no Codesys - CLP do BÁSICO ao AVANÇADO - Codesys
12:02
01 - Meu primeiro programa no Codesys - CL...
Apaixonados por Mecatrônica e Automação
20,925 views
Productivity Music: Work Music for Concentration | ADHD Relief Music
Productivity Music: Work Music for Concent...
Greenred Productions - Relaxing Music
PLC Basics: Ladder Logic
26:20
PLC Basics: Ladder Logic
This is Automation
424,905 views
GOP Cowards Duck J6 Pardon Questions | Brave Bishop Budde | Hegseth's Drinking Problems
11:18
GOP Cowards Duck J6 Pardon Questions | Bra...
The Late Show with Stephen Colbert
1,077,227 views
[AO VIVO] [4] Programação em Texto Estruturado (ST) IEC61131-3
1:55:58
[AO VIVO] [4] Programação em Texto Estrutu...
PLC Pro BR
20,990 views
Codesys [022] - Borda de Subida e Descida na linguagem ST (texto estruturado)
10:12
Codesys [022] - Borda de Subida e Descida ...
PLC & Drives
1,732 views
The Art of Code - Dylan Beattie
1:00:49
The Art of Code - Dylan Beattie
NDC Conferences
4,790,771 views
Full interview: Rachel Maddow talks with the bishop who asked Trump directly to show mercy
9:26
Full interview: Rachel Maddow talks with t...
MSNBC
377,245 views
Copyright © 2025. Made with ♥ in London by YTScribe.com