Разница между операторами read и readln при вводе данных заключается в том, что после выполнения readln курсор переходит на новую строку, игнорируя всю оставшуюся информацию в прежней строке, а после выполнения read курсор остаётся в той же строке, и новая набивка данных для read или readln будет проходить в той же строке. 1
Таким образом, процедура ReadLn после завершения ввода выполняет перевод строки, а процедура Read читает данные подряд — без перевода строки. 3
При этом после нажатия клавиши «Enter» курсор в любом случае переходит на новую строчку, поэтому для однократного ввода значений переменных разницу между операторами read и readln заметить невозможно. 1
Также при использовании несколько раз read() вводимые данные можно разделять нажатием и кнопки Enter, и кнопки Tab и кнопки Space, а при вызове readln() данные разделяются только при нажатии Enter. 5