MATLAB、74バイト
c=input('');p=[1,1,5]/10;for i=c;fprintf('%s',i);p=p([2,3,1]);pause(p);end
説明:
私は作るためにかなり時間が使用さ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