 |
ActiveDelphi .: O site do programador Delphi! :.
|
| Exibir mensagem anterior :: Exibir próxima mensagem |
| Autor |
Mensagem |
anccj Novato

Registrado: Domingo, 4 de Setembro de 2005 Mensagens: 55
|
Enviada: Sex Mar 09, 2007 4:30 pm Assunto: ordem alfabetica |
|
|
ola colegas, como faco para ver se uma letra esta na ordem alfabetica, por exemplo a letra "T" quero saber se ela esta ocupando a posicao 20 do alfabeto.
obrigado |
|
| Voltar ao Topo |
|
 |
adriano_servitec Colaborador

Registrado: Sexta-Feira, 30 de Janeiro de 2004 Mensagens: 17618
|
Enviada: Sex Mar 09, 2007 5:00 pm Assunto: Re: ordem alfabetica |
|
|
| anccj escreveu: | ola colegas, como faco para ver se uma letra esta na ordem alfabetica, por exemplo a letra "T" quero saber se ela esta ocupando a posicao 20 do alfabeto.
obrigado | Olah, vc fez sequencial? tipo usou um autoincremento para sequenciar a ordem do alfabeto? se for faça + ou - assim
| Código: | procedure TForm1.Button1Click(Sender: TObject);
begin
query1.Close;
query1.SQL.Clear;
query1.SQL.Add('Select * From letras');
query1.SQL.Add('where upper(letras) like :pesquisa');
query1.ParamByName('pesquisa').asString:=ANSIUPPERCASE(Edit1.Text)+'%';
query1.Open;
showmessage('Essa letra está na ordem: '+' - '+ query1.fieldbyname('sequencia').asString);
end; |
Se nao for explique melhor a sua duvida amigo. _________________ Jogo seu smartphone? Acesse o link e confira.
https://play.google.com/store/apps/details?id=br.com.couldsys.rockdrum
https://play.google.com/store/apps/details?id=br.com.couldsys.drumsetfree |
|
| Voltar ao Topo |
|
 |
anccj Novato

Registrado: Domingo, 4 de Setembro de 2005 Mensagens: 55
|
Enviada: Sex Mar 09, 2007 5:11 pm Assunto: |
|
|
oi amigo, eu nao estou usando bd, minha aplicacao nao usa bd. eu quero é fazer o seguinte: tenho um edit e escrevo uma palavra nele "teste" por exemplo e qdo eu clicar num botao vou ter q mostrar num outro edit os numeros correspondentes das letras do alfabeto ou seja " 20 5 19 20 5 19" onde esses numeros sao os respectivos numeros das letras na ordem alfabetica.
conseguí explicar melhor? rsrsrs. |
|
| Voltar ao Topo |
|
 |
adriano_servitec Colaborador

Registrado: Sexta-Feira, 30 de Janeiro de 2004 Mensagens: 17618
|
Enviada: Sex Mar 09, 2007 10:08 pm Assunto: |
|
|
| anccj escreveu: | oi amigo, eu nao estou usando bd, minha aplicacao nao usa bd. eu quero é fazer o seguinte: tenho um edit e escrevo uma palavra nele "teste" por exemplo e qdo eu clicar num botao vou ter q mostrar num outro edit os numeros correspondentes das letras do alfabeto ou seja " 20 5 19 20 5 19" onde esses numeros sao os respectivos numeros das letras na ordem alfabetica.
conseguí explicar melhor? rsrsrs. | Olah bom eu nao consegui montar uma funcao exata para o seu problema, mais acho que vc vai ter que usar o const com array para fazer uma funçao que vc precisa.
Bom nesta primeira funcao o maximo que eu consegui foi digitar o numero da letra no edit1 e no edit 2 apareçer a letra referente ao numero que digitei.
Acho que olhando este codigo ja da pra ter alguma ideia ai
| Código: | function LetrasNum(iLetras: longint): string;
const
Letras: array[1..26] of string = ('a','b','c','d','e','f','g','h',
'i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z');
NumLetras: array[1..26] of integer = (1,2,3,4,5,6,7,8,9,10,11,12,13,
14,15,16,17,18,19,20,21,22,23,24,25,26);
var
i: integer;
begin
result := '';
for i := 26 downto 1 do
while (iLetras >= NumLetras[i]) do
begin
iLetras := iLetras - NumLetras[i];
result := result + Letras[i];
end;
end; |
Agora tentei tambem fazer assim (Acho que esta segunda funçao esta mais parecido com o que vc precisa)
| Código: | function mostranumletra(texto: string): string; stdcall;
const
letras = 'abcdefghijklmnopqrstuvwxyz';
numeros = '1234567891011121314151617181920212223242526';
var
x: Integer;
begin
for x := 1 to Length(texto) do
if Pos(texto[x], letras) <> 0 then
texto[x] := numeros[Pos(texto[x], letras)];
Result := texto;
end; |
Mais essa aqui funciona bem ateh na letra I
Ou seja se eu digitar no edit 1 a letra B por exemplo no edit2 vai mostrar 2.
Mais se eu digitar no edit1 a letra Z nao vai mostrar o numero 26.
Acho que falta dar uma melhorada no codigo para funcionar como vc precisa
Bom eu nao pude ajudar muito, soh deixeir meio caminho pra ver se vc consegue resolver ai amigo
Boa sorte.
Adriano. _________________ Jogo seu smartphone? Acesse o link e confira.
https://play.google.com/store/apps/details?id=br.com.couldsys.rockdrum
https://play.google.com/store/apps/details?id=br.com.couldsys.drumsetfree |
|
| Voltar ao Topo |
|
 |
|
|
Enviar Mensagens Novas: Proibido. Responder Tópicos Proibido Editar Mensagens: Proibido. Excluir Mensagens: Proibido. Votar em Enquetes: Proibido.
|
|