Página 1 de 1

Laços de repetição

Enviado: 27 Jan 2014 13:29
por wagnerjsc
Boa tarde !
Sou novo aqui no fórum e na programação, estou tendo dificuldade para criar um laço de repetição.
Gostaria se possível alguém me ajudar postando a sintaxe de laços for, do, dowhile .

desde já agradeço!

Wagnerjsc

Laços de repetição

Enviado: 27 Jan 2014 15:19
por Toledo
Olá Wagnerjsc, seja bem-vindo ao fórum!

Este exemplo que você quer é para compilar com o Clipper, Harbour ou MiniGui mesmo?

Exemplo Clipper ou Harbour:

Código: Selecionar todos

#include "Inkey.ch"

PROCEDURE Main()
LOCAL nKey
CLS
DO WHILE .T.
  nKey := Inkey(0)
  If nKey == K_ESC
   EXIT
  Endif
  Alert("Código da Tecla pressionada: "+str(nKey,3,0))
ENDDO
Return
Abraços,

Laços de repetição

Enviado: 27 Jan 2014 15:27
por wagnerjsc
Olá Toledo, Obrigado!

Os exemplos que preciso são para Harbour ou MiniGui mesmo.

Laços de repetição

Enviado: 27 Jan 2014 15:55
por alxsts
Olá!

Seja bem-vindo ao fórum!

Segue o link para o Norton Guide do Clipper 5.2. Veja os comandos DO WHILE... ENDDO e FOR ... NEXT, na seção "Statements"

A sintaxe vale tanto em Harbour quanto em xHarbour. Nessas duas linguagens existe um laço diferente, chamado FOR EACH ... NEXT.

Laços de repetição

Enviado: 27 Jan 2014 16:16
por wagnerjsc
Olá alxsts, Obrigado!

Vou da uma olhada sim, vlw pela ajuda!

abraço!

Laços de repetição

Enviado: 14 Abr 2014 17:19
por LUCAS MACHADO
Caro Toledo,
Estou migrando um sistema de Clipper 5.2 para xHarbour com Minigui. Em algumas funções preciso permitir a saída do Loop com a tecla ESC. No Clipper isto funciona perfeitamente. A mesma função no xHarbour não sai pelo ESC de jeito nenhum. Onde estou errando? Coloquei o include
#include "Inkey.ch" no início do programa.

Código: Selecionar todos

DO  WHILE  .T.
 
    IF  EOF()
        EXIT
    ENDIF

    WCC_DIA  =  CC_DIA
 
     IF  WCC_DIA > "15" 
        EXIT
    ENDIF

    IF  INKEY() = 27
        EXIT
    ENDIF

    DO  P7C0_IMP_LINHA

    SKIP
 
ENDDO

Laços de repetição

Enviado: 14 Abr 2014 17:25
por cruz_brasil
Olá Lucas,

Se entendi, vc esta percorrendo uma tabela...
Já tentou usar lastkey() ?

Código: Selecionar todos

IF LASTKEY()=27
   EXIT
ENDIF

Laços de repetição

Enviado: 14 Abr 2014 17:39
por Toledo
LUCAS MACHADO escreveu:Estou migrando um sistema de Clipper 5.2 para xHarbour com Minigui
Amigo, primeiramente é bom deixar bem claro se você está programando em MiniGui modo gráfico (for Windows) ou em modo console (igual ao Clipper).

Bom, se for em modo gráfico, então suas dúvidas devem ser postadas na seção MiniGui aqui do fórum.

Agora se for console, então não muda nada na programação, tem que funcionar igualzinho como no Clipper. Outra coisa, se for realmente modo console e está usando a IDE da MiniGui apenas para compilar, então você está programando em Harbour (apenas Harbour). Não é correto dizer xHarbour com MiniGui.

Abraços,

Laços de repetição

Enviado: 14 Abr 2014 18:48
por LUCAS MACHADO
Estou usando modo gráfico, no modo console funciona perfeitamente, mas no gráfico não consigo sair do loop.
Obrigado

Laços de repetição

Enviado: 14 Abr 2014 20:29
por Toledo
LUCAS MACHADO escreveu:Estou usando modo gráfico
Neste caso, como disse na mensagem anterior, poste suas dúvidas na seção MiniGui.

Abraços,