Ir ao conteúdo
  • Cadastre-se

Pascal/Delphi Dados em uma mesma linha


Posts recomendados

Boa noite!

 

Como eu faço para inserir vários dados em uma mesma linha na hora que o algoritmo está rodando? 

 

Por exemplo, preciso que o usuário digite 5 números, mas não quero que fique saindo de uma linha para outra, mas que fique a instrução na mesma linha e o usuário digitando os dados nela. 

Link para o comentário
Compartilhar em outros sites

  • Membro VIP

Olá @Alan Matos Lourenço.

 

1 hora atrás, Alan Matos Lourenço disse:

Por exemplo, preciso que o usuário digite 5 números, mas não quero que fique saindo de uma linha para outra, mas que fique a instrução na mesma linha e o usuário digitando os dados nela. 

 

Vide comandos GotoXY(), ClrEol, ClrScr; WhereX, WhereY... podem ajudar.

 

No aguardo

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

Segue:

Begin 
  write('Digite a dimensão da matriz: ');
  readln(n);
  writeln('');    
  writeln('');
  writeln('');
  
  for i:= 1 to n do
  begin
    for j:=1 to n do
    begin                                                                   
      gotoxy(1,4);
      write('Digite o valor de A [', i, ',', j, ']: ');   
      read(a[i,j]); 
    end;
  end;
End.

 

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

  • Membro VIP

Olá @Alan Matos Lourenço.

 

1) READ X READLN

6 horas atrás, Alan Matos Lourenço disse:

read(a[i,j]);

 

Resumidamente seria: não use read, use apenas readln. Mais sobre o tem, favor acessar tópico abaixo:

 

 

 

2) LIMPEZA DADO ANTERIOR

Pelo que eu vi, ao terminar de ler um número e voltar para ler o próximo, o número digitado ainda permanecerá na tela. Para "corrigir" isso, verifique o funcionamento do ClrEol. Pode ser útil.

 

 

No aguardo.

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

@Simon Viegas Eu nunca tinha notado a diferença entre Read e Readln no Pascalzim, por isso às vezes usava o read, mas agora vou usar só o Readln mesmo. 

 

Segue trecho do código com as mudanças: 

Begin
  write('Digite a dimensão da matriz: ');
  readln(n);
  writeln;    
  writeln;
  writeln;
  
  for i:= 1 to n do
  begin
    for j:=1 to n do
    begin                                                                   
      gotoxy(1,4);
      clreol;
      write('Digite o valor de A [', i, ',', j, ']: ');   
      readln(a[i,j]); 
    end;
  end;
End.

 

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...