perez Posted November 28, 2009 at 08:54 PM Report Share #297944 Posted November 28, 2009 at 08:54 PM Boas, eu estava a escrever um algoritmo em pascal e a determinada altura (no fim quando estava a definir as teclas para repetir o programa) lembrei-me que já tinha visto em algum lado mas não sei fazer. Program demonstra; uses crt; var x:string[1]; Begin Repeat ClrScr; WriteLn('Escreva uma letra'); Read(x); WriteLn('Tu escreveste ',x); Readkey; WriteLn('Deseja repetir? (s/n)'); Read(a); <-| Until (a = 'n') End. (Algoritmo de demonstração) Na linha com a seta o user escreve 's' ou 'n' e dá enter para repetir o programa, o que eu queria saber é qual é a instrução para bastar ao user clicar na tecla e o programa repita, sem ter que clicar enter. Alguém me pode ajudar? Link to comment Share on other sites More sharing options...
ManelJaquim Posted November 28, 2009 at 09:18 PM Report Share #297948 Posted November 28, 2009 at 09:18 PM desculpa a demora mas tenho um problema com ciclos infinitos e perder o trabalho 0.o também sou do 10º ano =P deixo-te aqui um pequeno exemplo que fiz no Pzim Program Pzim ; var c: char; Begin repeat writeln ('Hello world'); writeln ('Deseja Repetir?'); repeat c := upcase(readkey); until (c = 'N') or (c = 'S'); until (c = 'N'); End. Link to comment Share on other sites More sharing options...
vasco16 Posted November 29, 2009 at 11:22 AM Report Share #297974 Posted November 29, 2009 at 11:22 AM Boas, eu estava a escrever um algoritmo em pascal e a determinada altura (no fim quando estava a definir as teclas para repetir o programa) lembrei-me que já tinha visto em algum lado mas não sei fazer. Program demonstra; uses crt; var x:string[1]; Begin Repeat ClrScr; WriteLn('Escreva uma letra'); Read(x); WriteLn('Tu escreveste ',x); Readkey; WriteLn('Deseja repetir? (s/n)'); Read(a); <-| Until (a = 'n') End. (Algoritmo de demonstração) Na linha com a seta o user escreve 's' ou 'n' e dá enter para repetir o programa, o que eu queria saber é qual é a instrução para bastar ao user clicar na tecla e o programa repita, sem ter que clicar enter. Alguém me pode ajudar? Tens a certeza que isso dá para fazer em pascal? Noutras linguagens sei que dá mas nessa acho que só com o Enter é que podes passar à instrução seguinte. Quer dizer.. a nao ser que definas o s ou o n como a tecla Enter.. mas nao sei ate q ponto é possivel.. Link to comment Share on other sites More sharing options...
perez Posted November 29, 2009 at 01:38 PM Author Report Share #297982 Posted November 29, 2009 at 01:38 PM desculpa a demora mas tenho um problema com ciclos infinitos e perder o trabalho 0.o também sou do 10º ano =P deixo-te aqui um pequeno exemplo que fiz no Pzim Program Pzim ; var c: char; Begin repeat writeln ('Hello world'); writeln ('Deseja Repetir?'); repeat c := upcase(readkey); until (c = 'N') or (c = 'S'); until (c = 'N'); End. dá erro :/ Vasco16, sim tenho, pois eu encontrei um tretis em pascal que no fim do jogo diz: clique 's' para sair ou 'n' para novo jogo, e não precisa dar enter Link to comment Share on other sites More sharing options...
ManelJaquim Posted November 29, 2009 at 05:09 PM Report Share #298001 Posted November 29, 2009 at 05:09 PM eu fiz no pascal pzim , la copila sem erro, sim tirei essa ideia a uns tempos de o tetris ... Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now