MATLAB, 74 바이트
c=input('');p=[1,1,5]/10;for i=c;fprintf('%s',i);p=p([2,3,1]);pause(p);end
설명:
with fprintf
보다 버전을 짧게 만들기 위해 꽤 오랜 시간을 disp()
사용했습니다 clc
. 돌파구는 pause
벡터를 인수로 사용할 수 있다는 것을 발견 / 기억했을 때 입니다.이 경우 첫 번째 값을 선택합니다. 이것은 카운터를 생략하는 것을 가능하게합니다.
c=input(''); % Take input as 'Hello'
p=[.1,.1,.5]; % The various pause times
for i=c; % For each of the characters in the input c
fprintf('%s',i); % Print the character i, without any trailing newline or whitespace
% No need to clear the screen, it will just append the new character
% after the existing ones
pause(p); % pause for p(1) seconds. If the input to pause is a vector,
% then it will choose the first value
p=p([2,3,1]); % Shift the pause times
end
내가 사용한 가장 짧은 시간 disp
은 81 바이트였습니다.
c=input('');p=[1,1,5]/10;for i=1:nnz(c),clc;disp(c(1:i));pause(p(mod(i,3)+1));end