Полезное:
Как сделать разговор полезным и приятным
Как сделать объемную звезду своими руками
Как сделать то, что делать не хочется?
Как сделать погремушку
Как сделать так чтобы женщины сами знакомились с вами
Как сделать идею коммерческой
Как сделать хорошую растяжку ног?
Как сделать наш разум здоровым?
Как сделать, чтобы люди обманывали меньше
Вопрос 4. Как сделать так, чтобы вас уважали и ценили?
Как сделать лучше себе и другим людям
Как сделать свидание интересным?
Категории:
АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника
|
ПРОЦЕДУРЫ ВВОДА-ВЫВОДА
Для выполнения операций ввода-вывода служат 4 процедуры: Read, ReadLn, Write, WriteLn. Процедура чтения Read обеспечивает ввод числовых данных, символов, строк и т.д. для последующей их обработки программой. Формат: Read (X1,X2,…,Xn); где X1, X2, …, Xn – переменные допустимых типов. Значения X1,…,Xn набираются минимум через один пробел на клавиатуре пользователем и высвечиваются на экране. После ввода данных для одной процедуры Read нажимается клавиша ввода Enter. Значения переменных должны вводиться в строгом соответствии с синтаксисом языка. Если в программе имеется несколько процедур Read, данные для них вводятся потоком, т.е. после считывания значений переменных для одной процедуры Read данные для следующей процедуры Read набираются в той же строке, что и для предыдущей до окончания строки, затем происходит переход на следующую строку. Пример.
Процедура чтения ReadLn аналогична процедуре Read, единственное отличие заключается в том, что после считывания последнего в списке значения для одной процедуры ReadLn данные для следующей процедуры ReadLn будут считываться с начала новой строки. Заменим в предыдущем примере процедуры Read на процедуры ReadLn:
Процедура записи Write производит вывод числовых данных, символов, строк и булевских значений. Формат: Write (Y1,…,Yn); где Y1,…,Yn – выражения целочисленного, вещественного, символьного, строкового, булевского и др. типов. Форматы вывода: Процедура Значение Поток вывода Write (I); 134 134 Write (I:5); 134 _ _134 (Для вывода целого числа отводится 5 позиций. При выводе число автоматически прижимается к правому краю). Write (R); 715.342 _ _7.153420000E+02 Write (R:12); 46.78 4.678000E+01 (На вещественное число отводится 12 позиций). Write (R:6:2); 46.78 _46.78 (На вещественное число отводится 6 позиций, из них 2 знака после запятой. Число прижимается к правому краю). Write (CH); 'X' X Write (CH:4); 'X' _ _ _X Write (S); 'Привет!' Привет! Write (S:10); 'Привет!' _ _ _Привет! Write (B); True True Write (B:6); True _ _True Процедура записи WriteLn аналогична процедуре Write, но после вывода последнего в списке значения для текущей процедуры WriteLn происходит перевод курсора к началу следующей строки. Процедура WriteLn, записанная без параметров, вызывает перевод строки. Пример: Write ('A=',A:3); WriteLn ('_C=',C:3); WriteLn ('D=',D:6:2); Поток вывода A=_23_C=_34 D=_ _3.24
Пример. Вычислить значения функций f и g:
Написать две программы, использующие: · вещественные значения; · целочисленную арифметику (целочисленные данные, промежуточные и конечные результаты, операции целочисленной арифметики, константу MAXINT, диапазоны оператора выбора Case). Program example1; {Программирование ветвящихся вычислительных процессов} {использование вещественных значений } Uses Crt; Var x,y,f,g:Real; Begin Clrscr; {Очистка экрана} WriteLn('Введите значения x,y'); ReadLn (x,y); WriteLn ('При x=',x:5:2,' y=',y:5:2); If x+y<0 then Begin WriteLn ('x+y=',x+y:5:2,'<0'); f:=1/sqrt(x*x+y*y); g:=x-y; End Else If x+y<=5 then Begin WriteLn ('0<=x+y=',x+y:5:2,'<=5'); f:=2*x*y; g:=2*x+3; End Else Begin WriteLn ('x+y=',x+y:5:2,'>5'); f:=1/(x+y); g:=1/sqrt(x*x+1); end; WriteLn ('f=',f:6:4); WriteLn ('g=',g:6:4); ReadLn; {Задержка экрана} End.
Program example2; {Программирование ветвящихся вычислительных процессов} {использование целочисленной арифметики } Uses Crt; Var x,y,f,g:Integer; Begin Clrscr; {Очистка экрана} WriteLn('Введите значения x,y'); ReadLn (x,y); WriteLn ('При x=',x,' y=',y); Case x+y of -Maxint..-1: begin WriteLn ('x+y=',x+y,'<0'); f:=1 div round(sqrt(x*x+y*y)); g:=x-y; end; 0..5: begin WriteLn ('0<=x+y=',x+y,'<=5'); f:=2*x*y; g:=2*x+3; end; 6..Maxint: begin WriteLn ('x+y=',x+y,'>5'); f:=1 div (x+y); g:=1 div round (sqrt(x*x+1)); End end; WriteLn ('f=',f); WriteLn ('g=',g); ReadLn; {Задержка экрана} End.
|