Re: [delphi-br] Incremento no For
Joao Morais escreveu: Fabrício | PrismaFive wrote: É possível fazer algum tipo de incremento no loop For? Gostaria de fazer loop no for de 2 em 2, ou 3 em 3. Em outras linguagens que utilizo é possível fazer tal procedimento. Não. Ou você faz o for com a quantidade de iterações e multiplica para pegar o valor atual, ou você usa um while com inc. Joao Morais No virus found in this incoming message. Checked by AVG. Version: 7.5.524 / Virus Database: 270.6.0/1604 - Release Date: 11/8/2008 05:50 Resolvido senhores. Solução foi usar um while incremento o controle em +2. Exemplo: while i 10 do begin [...] Inc(i, 2); [...] end; Obrigado a todos participantes. Um abraço Fabrício Veiga
Re: [delphi-br] Incremento no For
Dê uma olhada na documentação do FOR. ela é sua amiga! ;) *For* counter *=* start *To* end [*Step* step] * *Use STEP Evandro* * Fabrício | PrismaFive wrote: Resolvido senhores. Solução foi usar um while incremento o controle em +2. Exemplo: while i 10 do begin [...] Inc(i, 2); [...] end;
RE: [delphi-br] Incremento no For
Evandro, se fosse Turbo Pascal ou Pascal-Padrão, tudo bem! Mas o Object Pascal não aceita a cláusula STEP na sintaxe da estrutura FOR. Eu já inclusive comentei sobre isso, se não foi nesta lista foi em outra! Sds. To: delphi-br@yahoogrupos.com.br From: [EMAIL PROTECTED] Date: Fri, 15 Aug 2008 09:58:48 -0300 Subject: Re: [delphi-br] Incremento no For Dê uma olhada na documentação do FOR. ela é sua amiga! ;) *For* counter *=* start *To* end [*Step* step] * *Use STEP Evandro* * Fabrício | PrismaFive wrote: Resolvido senhores. Solução foi usar um while incremento o controle em +2. Exemplo: while i 10 do begin [...] Inc(i, 2); [...] end; _ Conheça o Windows Live Spaces, a rede de relacionamentos do Messenger! http://www.amigosdomessenger.com.br/
Re: [delphi-br] Incremento no For
Fabrício | PrismaFive wrote: É possível fazer algum tipo de incremento no loop For? Gostaria de fazer loop no for de 2 em 2, ou 3 em 3. Em outras linguagens que utilizo é possível fazer tal procedimento. Não. Ou você faz o for com a quantidade de iterações e multiplica para pegar o valor atual, ou você usa um while com inc. Joao Morais
Re: [delphi-br] Incremento incomum...
Acho que é isso: for qt:=1 to 100 {ou mais} do for letra:=65 to 90 { A to Z } do begin xst:=''; for qt1:=1 to qt do xst:=xst+chr(letra); showmessage('A sequencia é:'+xst); end; []s. - Original Message - From: Ricardo Lino To: delphi-br@yahoogrupos.com.br Sent: Friday, July 11, 2008 4:34 PM Subject: [delphi-br] Incremento incomum... Prezados, Gostaria primeiramente de pedir desculpas pelo assunto ter ficado tão vago, mas não tinha idéia de como resumir de outra maneira. Preciso desenvolver uma função para enumerar. Bom vou colocar um exemplo para ficar mais fácil de explicar e vocês poderem entender. Bom a função iria gerar um campo texto assim de A até Z quando chegar no Z ela recomeça com AA até ZZ e AAA até ZZZ assim por diante e de forma indefinida. Será que alguém já passou por isso? Tem alguma solução para esse problema? Ricardo Lino Tel: +55 (11) 5070-8585 E-mail: [EMAIL PROTECTED] www.batori.com.br [As partes desta mensagem que não continham texto foram removidas] [As partes desta mensagem que não continham texto foram removidas]
Re: [delphi-br] Incremento diferente
É só uma dica. Vamos supor que você tenha 2 edit´s. No primeiro você digita o mês/ano. No segundo você mostra o mês seguinte. ex: edit1 - 05/2004 , edit2 - 06/2004. No seu problema AB, sendo A o ano e B o mês. Como implementar: procedure TForm1.Edit1Exit(Sender: TObject); var l1 : char; l2 : char; n1 : shortint; n2 : shortint; begin l1 := edit1.text[1]; --- pega o primeiro caracter l2 := edit1.text[2]; --- pega o segundo caracter n1 := ord(l1); --- pega o codigo do caracter (A=65, Z=90) n2 := ord(l2); --- pega o codigo do caracter (A=65, Z=90) // aqui fiz a lógica para mês/ano descrita em cima edit2.text := char(n1) + char(n2); --- transforma o codigo em caracter Tente converter a lógica das letras para a lógica do mês/ano. Espero ter ajudado. - Original Message - From: Michel Kafury Pael [EMAIL PROTECTED] To: delphi-br@yahoogrupos.com.br Sent: Friday, January 07, 2005 1:45 AM Subject: [delphi-br] Incremento diferente Bom pessoal, vou postar um problema que numca vi. Em um edit a pessoa pode digitar AA, AB, AC até chegar a ZZ e eu tenho um botão para verificar: quando for AA muda para AB; quando for AB muda para AC e isso até ZZ. Não tenho idéia de como fazer. Michel -- FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM Para ver as mensagens antigas, acesse: http://br.groups.yahoo.com/group/delphi-br/messages Para falar com o moderador, envie um e-mail para: [EMAIL PROTECTED] ou [EMAIL PROTECTED] Links do Yahoo! Grupos -- FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM Para ver as mensagens antigas, acesse: http://br.groups.yahoo.com/group/delphi-br/messages Para falar com o moderador, envie um e-mail para: [EMAIL PROTECTED] ou [EMAIL PROTECTED] Links do Yahoo! Grupos * Para visitar o site do seu grupo na web, acesse: http://br.groups.yahoo.com/group/delphi-br/ * Para sair deste grupo, envie um e-mail para: [EMAIL PROTECTED] * O uso que você faz do Yahoo! Grupos está sujeito aos: http://br.yahoo.com/info/utos.html
Re: [delphi-br] Incremento diferente
Coloque 2 edit´s e teste. procedure TForm1.Edit1Exit(Sender: TObject); var l1 : char; l2 : char; n1 : shortint; n2 : shortint; begin l1 := edit1.text[1]; l2 := edit1.text[2]; n1 := ord(l1); n2 := ord(l2); inc(n2); if n2 90 then begin inc(n1); n2 := 65; end; edit2.text := char(n1) + char(n2); end; Espero ter ajudado. - Original Message - From: Michel Kafury Pael [EMAIL PROTECTED] To: delphi-br@yahoogrupos.com.br Sent: Friday, January 07, 2005 1:45 AM Subject: [delphi-br] Incremento diferente Bom pessoal, vou postar um problema que numca vi. Em um edit a pessoa pode digitar AA, AB, AC até chegar a ZZ e eu tenho um botão para verificar: quando for AA muda para AB; quando for AB muda para AC e isso até ZZ. Não tenho idéia de como fazer. Michel -- FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM Para ver as mensagens antigas, acesse: http://br.groups.yahoo.com/group/delphi-br/messages Para falar com o moderador, envie um e-mail para: [EMAIL PROTECTED] ou [EMAIL PROTECTED] Links do Yahoo! Grupos -- FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM Para ver as mensagens antigas, acesse: http://br.groups.yahoo.com/group/delphi-br/messages Para falar com o moderador, envie um e-mail para: [EMAIL PROTECTED] ou [EMAIL PROTECTED] Links do Yahoo! Grupos * Para visitar o site do seu grupo na web, acesse: http://br.groups.yahoo.com/group/delphi-br/ * Para sair deste grupo, envie um e-mail para: [EMAIL PROTECTED] * O uso que você faz do Yahoo! Grupos está sujeito aos: http://br.yahoo.com/info/utos.html
Re: [delphi-br] Incremento diferente
ola, tem varias maneiras de fazer esta coisa, 1 - seria declarar uma matriz tipo elementos['aa',ab','ac,' zz'] vai set trablho demais 2 - declarar 1 contante c1 := 'ABCDE...XYZ' paga com copy(edit1.text,2,1) pega a posicao na postante e icrementa de 1 se = z incremente incrementa a primeira letra e passa a 2 para A espera ter ajudado qq manda e-mail - [EMAIL PROTECTED] MSN - [EMAIL PROTECTED] Analista de Sistemas itamar roloff --- - Original Message - From: Michel Kafury Pael [EMAIL PROTECTED] To: delphi-br@yahoogrupos.com.br Sent: Friday, January 07, 2005 1:45 AM Subject: [delphi-br] Incremento diferente Bom pessoal, vou postar um problema que numca vi. Em um edit a pessoa pode digitar AA, AB, AC até chegar a ZZ e eu tenho um botão para verificar: quando for AA muda para AB; quando for AB muda para AC e isso até ZZ. Não tenho idéia de como fazer. Michel -- FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM Para ver as mensagens antigas, acesse: http://br.groups.yahoo.com/group/delphi-br/messages Para falar com o moderador, envie um e-mail para: [EMAIL PROTECTED] ou [EMAIL PROTECTED] Links do Yahoo! Grupos -- FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM Para ver as mensagens antigas, acesse: http://br.groups.yahoo.com/group/delphi-br/messages Para falar com o moderador, envie um e-mail para: [EMAIL PROTECTED] ou [EMAIL PROTECTED] Links do Yahoo! Grupos * Para visitar o site do seu grupo na web, acesse: http://br.groups.yahoo.com/group/delphi-br/ * Para sair deste grupo, envie um e-mail para: [EMAIL PROTECTED] * O uso que você faz do Yahoo! Grupos está sujeito aos: http://br.yahoo.com/info/utos.html
Re: [delphi-br] Incremento diferente
Cria uma string que contenha ABCDEZ Coloque um for dentro do outro: for i:=1 to length(string) do for j:=1 to length(string) do listbox1.itens.add(string[i]+string[j]); Eu não to com delphi na maquina, por isso não testei, mas acho que a ideia eh essa! On Fri, 7 Jan 2005 11:22:15 -0200, itamar [EMAIL PROTECTED] wrote: ola, tem varias maneiras de fazer esta coisa, 1 - seria declarar uma matriz tipo elementos['aa',ab','ac,' zz'] vai set trablho demais 2 - declarar 1 contante c1 := 'ABCDE...XYZ' paga com copy(edit1.text,2,1) pega a posicao na postante e icrementa de 1 se = z incremente incrementa a primeira letra e passa a 2 para A espera ter ajudado qq manda e-mail - [EMAIL PROTECTED] MSN - [EMAIL PROTECTED] Analista de Sistemas itamar roloff --- - Original Message - From: Michel Kafury Pael [EMAIL PROTECTED] To: delphi-br@yahoogrupos.com.br Sent: Friday, January 07, 2005 1:45 AM Subject: [delphi-br] Incremento diferente Bom pessoal, vou postar um problema que numca vi. Em um edit a pessoa pode digitar AA, AB, AC até chegar a ZZ e eu tenho um botão para verificar: quando for AA muda para AB; quando for AB muda para AC e isso até ZZ. Não tenho idéia de como fazer. Michel -- FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM Para ver as mensagens antigas, acesse: http://br.groups.yahoo.com/group/delphi-br/messages Para falar com o moderador, envie um e-mail para: [EMAIL PROTECTED] ou [EMAIL PROTECTED] Links do Yahoo! Grupos -- FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM Para ver as mensagens antigas, acesse: http://br.groups.yahoo.com/group/delphi-br/messages Para falar com o moderador, envie um e-mail para: [EMAIL PROTECTED] ou [EMAIL PROTECTED] Links do Yahoo! Grupos -- Luiz Eduardo D. de Araujo [EMAIL PROTECTED] - Rio de Janeiro - RJ - Brasil ICQ: 77662781 Yahoo! Messenger: luiz_eduardo_araujo - The Box Said: Requires MS Windows or Better. So I Installed Linux -- FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM Para ver as mensagens antigas, acesse: http://br.groups.yahoo.com/group/delphi-br/messages Para falar com o moderador, envie um e-mail para: [EMAIL PROTECTED] ou [EMAIL PROTECTED] Links do Yahoo! Grupos * Para visitar o site do seu grupo na web, acesse: http://br.groups.yahoo.com/group/delphi-br/ * Para sair deste grupo, envie um e-mail para: [EMAIL PROTECTED] * O uso que você faz do Yahoo! Grupos está sujeito aos: http://br.yahoo.com/info/utos.html
RE: [delphi-br] Incremento diferente
E aí Michel, Como vou precisar de algo assim e hoje to meio folgado, fiz uma funcao que converte um numero na sequencia que vc quer, eu considerei o seguinte: 1 -- A 2 -- B ... 26 -- Z 27 -- AB ... dessa forma vc pode usar um numero inteiro para guardar (ou gerar) a sequencia normalmente, e na hora de mostrar vc usa a funcao abaixo, nessa função vc passa o valor inteiro e ele te retorna o valor correspondente naquela sequencia, repare que da forma que foi feito vc pode apenas mudando a constante criar outros tipos de sequencia. espero que sirva flw, []'s Fabiano. function IntToSequencia(i : integer) : string; const s : string = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'; var tam, iDiv, iMod : integer; begin result := ''; tam := length(s); while i tam do begin iDiv := i div tam; iMod := i mod tam; if iMod = 0 then begin iDiv := iDiv - 1; iMod := tam; end; if iMod 0 then Result := s[iMod] + Result; i := iDiv; end; if i 0 then Result := s[i] + Result; end; From: Michel Kafury Pael [EMAIL PROTECTED] Reply-To: delphi-br@yahoogrupos.com.br To: delphi-br@yahoogrupos.com.br Subject: [delphi-br] Incremento diferente Date: Fri, 07 Jan 2005 03:45:27 - Bom pessoal, vou postar um problema que numca vi. Em um edit a pessoa pode digitar AA, AB, AC até chegar a ZZ e eu tenho um botão para verificar: quando for AA muda para AB; quando for AB muda para AC e isso até ZZ. Não tenho idéia de como fazer. Michel _ MSN Hotmail, o maior webmail do Brasil. http://www.hotmail.com -- FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM Para ver as mensagens antigas, acesse: http://br.groups.yahoo.com/group/delphi-br/messages Para falar com o moderador, envie um e-mail para: [EMAIL PROTECTED] ou [EMAIL PROTECTED] Links do Yahoo! Grupos * Para visitar o site do seu grupo na web, acesse: http://br.groups.yahoo.com/group/delphi-br/ * Para sair deste grupo, envie um e-mail para: [EMAIL PROTECTED] * O uso que você faz do Yahoo! Grupos está sujeito aos: http://br.yahoo.com/info/utos.html
RE: [delphi-br] Incremento diferente
Michel, não tinha lido direito o que vc queria, dá uma olhada nisso, acho que agora vai funcionar do jeito que vc quer crie um novo projeto, e no form coloque um edit e um button substitua todo o código da unit1 pelo código abaixo, associe o onclick do button ao evento onclick que está no código. ps. repare que foi incluido Math na clausula uses, e outra coisa quando chegar em ZZ ele irá pular para AAA blz []'s Fabiano. / unit Unit1; interface uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, Math; type TForm1 = class(TForm) Button1: TButton; Edit1: TEdit; procedure Button1Click(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.DFM} function SequenciaToInt(str:string):integer; const s : string = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'; var i, j, tam, iPot : integer; dPot : double; begin result := 0; tam := length(str); j := 0; for i := tam downto 1 do begin dPot := power(length(S),j); iPot := Trunc(dPot); j := j + 1; result := result + (pos(str[i],s) * iPot); end; end; function IntToSequencia(i : integer) : string; const s : string = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'; var tam, iDiv, iMod : integer; begin result := ''; tam := length(s); while i tam do begin iDiv := i div tam; iMod := i mod tam; if iMod = 0 then begin iDiv := iDiv - 1; iMod := tam; end; if iMod 0 then Result := s[iMod] + Result; i := iDiv; end; if i 0 then Result := s[i] + Result; end; procedure TForm1.Button1Click(Sender: TObject); begin Edit1.Text := IntToSequencia(SequenciaToInt(Edit1.Text)+1); end; end. // From: Fabiano Arndt [EMAIL PROTECTED] Reply-To: delphi-br@yahoogrupos.com.br To: delphi-br@yahoogrupos.com.br Subject: RE: [delphi-br] Incremento diferente Date: Fri, 07 Jan 2005 13:48:45 + E aí Michel, Como vou precisar de algo assim e hoje to meio folgado, fiz uma funcao que converte um numero na sequencia que vc quer, eu considerei o seguinte: 1 -- A 2 -- B ... 26 -- Z 27 -- AB ... dessa forma vc pode usar um numero inteiro para guardar (ou gerar) a sequencia normalmente, e na hora de mostrar vc usa a funcao abaixo, nessa função vc passa o valor inteiro e ele te retorna o valor correspondente naquela sequencia, repare que da forma que foi feito vc pode apenas mudando a constante criar outros tipos de sequencia. espero que sirva flw, []'s Fabiano. function IntToSequencia(i : integer) : string; const s : string = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'; var tam, iDiv, iMod : integer; begin result := ''; tam := length(s); while i tam do begin iDiv := i div tam; iMod := i mod tam; if iMod = 0 then begin iDiv := iDiv - 1; iMod := tam; end; if iMod 0 then Result := s[iMod] + Result; i := iDiv; end; if i 0 then Result := s[i] + Result; end; From: Michel Kafury Pael [EMAIL PROTECTED] Reply-To: delphi-br@yahoogrupos.com.br To: delphi-br@yahoogrupos.com.br Subject: [delphi-br] Incremento diferente Date: Fri, 07 Jan 2005 03:45:27 - Bom pessoal, vou postar um problema que numca vi. Em um edit a pessoa pode digitar AA, AB, AC até chegar a ZZ e eu tenho um botão para verificar: quando for AA muda para AB; quando for AB muda para AC e isso até ZZ. Não tenho idéia de como fazer. Michel _ MSN Hotmail, o maior webmail do Brasil. http://www.hotmail.com _ MSN Hotmail, o maior webmail do Brasil. http://www.hotmail.com -- FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM Para ver as mensagens antigas, acesse: http://br.groups.yahoo.com/group/delphi-br/messages Para falar com o moderador, envie um e-mail para: [EMAIL PROTECTED] ou [EMAIL PROTECTED] Links do Yahoo! Grupos * Para visitar o site do seu grupo na web, acesse: http://br.groups.yahoo.com/group/delphi-br/ * Para sair deste grupo, envie um e-mail para: [EMAIL PROTECTED] * O uso que você faz do Yahoo! Grupos está sujeito aos: http://br.yahoo.com/info/utos.html
Re: [delphi-br] Incremento
Este loop não necessário incrementar i:= i+1 , o delphi faz automatico.. Use assim for i := 0 to length(string) do begin if string = 'xx' then begin //Aqui vc coloca o que vc quer fazer end; Espero ter ajudado Wesley - Original Message - From: Márcio To: [EMAIL PROTECTED] Sent: Friday, September 10, 2004 9:27 AM Subject: [delphi-br] Incremento Olá pessoal, Alguem sabe como posso fazer pra incrementar a variavel de um laço: for i := 0 to length(string) do begin if string = 'xx' then i := i + 1; end; porem se for tentar fazer isso, o compilador do delphi nao permite, como poderia contornar esta situacao? Desde já agradeço a todos. Márcio [As partes desta mensagem que não continham texto foram removidas] -- FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM Para ver as mensagens antigas, acesse: http://br.groups.yahoo.com/group/delphi-br/messages Para falar com o moderador, envie um e-mail para: [EMAIL PROTECTED] ou [EMAIL PROTECTED] Yahoo! Grupos, um serviço oferecido por: -- Links do Yahoo! Grupos a.. Para visitar o site do seu grupo na web, acesse: http://br.groups.yahoo.com/group/delphi-br/ b.. Para sair deste grupo, envie um e-mail para: [EMAIL PROTECTED] c.. O uso que você faz do Yahoo! Grupos está sujeito aos Termos do Serviço do Yahoo!. [As partes desta mensagem que não continham texto foram removidas] -- FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM Para ver as mensagens antigas, acesse: http://br.groups.yahoo.com/group/delphi-br/messages Para falar com o moderador, envie um e-mail para: [EMAIL PROTECTED] ou [EMAIL PROTECTED] Links do Yahoo! Grupos * Para visitar o site do seu grupo na web, acesse: http://br.groups.yahoo.com/group/delphi-br/ * Para sair deste grupo, envie um e-mail para: [EMAIL PROTECTED] * O uso que você faz do Yahoo! Grupos está sujeito aos: http://br.yahoo.com/info/utos.html