Персональная страничка
| ||
Предыдущий раздел:
Следующий раздел:
Приведенная в предыдущем разделе программа запишет в некоторую область памяти число 2, однако внешне это никак не проявится. Нормальная программа должна уметь получать информацию от пользователя и сообщать ему результаты своей работы.
В простейшем случае вывод информации осуществляется процедурами write и writeln. В обоих случаях выводится текст или значения переменных. Отличие этих двух процедур в том, что последовательные вызовы write будут печатать информацию в одной строке, а writeln после каждого вызова переводит курсор на следующую строку. Примеры вызова процедур вывода:
writeln('Hello');
Печатается слово “Hello”.
writeln(x);
Напечатается значение переменной x.
x:=2; writeln('x = ', x);
В одну строчку напечатается строка «x = » и значение переменной x, то есть в результате будет напечатано «x = 2».
x:=2; y:=3; writeln(x, y);
В одну строчку напечатаются значения переменных x и y, то есть «23».
writeln(x, ' ', y);
Между значениями x и y будет располагаться пробел.
writeln(x); writeln(y);
Значения x и y будут напечатаны на разных строках.
writeln(2*x+y);
Будет напечатано значение выражения 2*x+y.
writeln;
Вызов writeln без параметров приводит к переходу на новую строку. Несколько таких вызовов подряд вставят в выводимый текст несколько пустых строк.
Общее правило таково: write и writeln могут печатать значения переменных и произвольные текстовые строки. При этом текстовые строки должны быть взяты в кавычки. Одной процедурой можно вывести несколько значений переменных и строк текста, перечислив выводимые элементы через запятую.
Ввод информации осуществляется с помощью процедуры
readln(<список переменных>);
которая позволяет ввести с клавиатуры значения нескольких переменных. Например:
readln(x);
Выполнение программы приостановится, пока пользователь не введет значения переменной x и не нажмет Enter.
readln(x, y, z);
Программа ожидает ввода значений трех переменных. После каждого ввода следует жать Enter.
write('x = '); readln(x);
Курсор будет мигать не на пустой строке, а на строке содержащей приглашение вида «x = ».
readln;
В отсутствии параметров процедура просто приостанавливает выполнение программы до нажатия пользователем клвиши Enter.
Используем наши новые знания, написав программу, запрашивающую у пользователя два числа и печатающую их сумму.
program Summa; var x, y: integer; begin write('x = '); {Вывод текста 'x = '} readln(x); {Ввод значения переменной x пользователем программы} write('y = '); {Вывод текста 'y = '} readln(y); {Ввод значения переменной y пользователем программы} writeln('Summa = ', x+y); {Печать результата} end.
Следующий раздел:
Предыдущий раздел:
1 writeln(‘Hello’);
Печатается слово “Hello”.
где оно печатается?
Зависит от того, в какой среде программирования пишешь. Если PascalABC, то снизу будет «Окно вывода». Там все и будет печататься.
Почему в списке ошибок (PascalABC) печатает — Неизвестное имя ‘readIn’. Что я сделала не так.
Я скопировала из приведенного в уроке примера readIn и все заработало, что это может быть?
ReadLn от Read Line (читать строку). А у тебя через I написано.
Спасибо, Тарас Викторович. Всё достаточно понятно написано)
я еще только начинающий с маленькой буквы, начинал учить много разных книг, но когда начинались «дебри» бросал их, т.к. становилось много чего не понятно. Но в голове что-то все же откладывалось и теперь читать и учить ваши уроки совсем не трудно.))Надеюсь так будет до самого последнего урока.
Только я на FreePascal тренируюсь, как-то он выглядит более серьезно чтоли, да и АВС все по-русски и я думаю лучше не расслабляться, т.к. ДАЛЬШЕ русского будет гораздо меньше и можно будет застопориться в нек. моментах..
Спасибо за приятный отзыв )
Если будет непонятно, спрашивай.
Тарас Викторович, помогите я все сделал как и вы написали но у меня появилась эта ошибка-Program1.pas(1) : Встречено ‘1’, а ожидался раздел описаний или begin
Покажи текст программы.
где ошибка?
program lesson_programmer;
var
x:=integer;
y:=real;
a:=real;
begin
writeln(‘x=’,x);
x:=1789;
writeln(‘y=’,y);
y:=72365.645;
a:=x+y*(y+x)/x-y;
writeln(‘a=’,a);
end.
x: integer;
вместо
x:=integer;
Тарас, спасибо
место write надо писать writeln, а то выбивает ошибку
написал так
program Summa;
var
x,y: integer;
begin
writeln(‘x= ‘);
x:=3;
writeln(‘y= ‘);
y:=5;
writeln(‘Summa= ‘,x+y);
end.
выдало так
x=
y=
Summa= 8
я правильно сделал?
не пойму зачем прописывать строку readln ??????
1.
Сначала необходимо присвоить значение переменной (x:=3;), а после выводить значение в консоль (writeln(‘x= ‘);).
В Вашем случае, печатает(выводится в консоль значение переменной до присвоения, то есть ничего)
2.
readln(x); — позволяет не вводить данные вручную, как-то x:=3;, а запрашивать значение у пользователя. Т.е. делает программу универсальной.
Несколько изменненный пример автора
——————————————————-
program Summa;
var
x, y: integer;
begin
write(‘Введите первое слагаемое, x = ‘);
readln(x); {Считывание программмой введеной пользователем информации в память для дальнейшей обработки}
write(‘Введите второе слагаемое, y = ‘);
readln(y); {Считывание программмой введеной пользователем информации в память для дальнейшей обработки}
writeln(‘Summa = ‘, x+y); {Печать результата}
end.
program Summa
var
x, y: integer;
begin
write(‘x=9’);
readln(x);
write(‘y=7’);
readln(y);
writeln(‘Summa=’, x+y);
end. Почему выдает внизу Program1.pas(2) : Встречено ‘var’, а ожидалось ‘;’
Сергей. После Summa нет ;.
program delenie;
var
x,y: integer; {присваивание типа переменной целая}
z: real; {присваивание типа переменной вещественная}
begin
write (‘x=’); {вывод на экран текста ‘x=’}
read (x); {ввод значения переменной x пользователем}
write (‘y=’); {вывод на экран текста ‘y=’}
read(y); {ввод значения переменной y пользователем}
z:=x/y; {операция с переменными}
writeln(‘z=’,z); {вывод на экран значение переменной z}
end.
получилось с первого раза, что я делаю не так :(
Program Lab2
Const a=12.56; (описание постоянных параметров)
Var z,a,y: real; (описание постоянных параметров)
begin
write(‘Введите z=’); (ввод параметра z с клавиатуры)
readLn(z);
d:=cos*(a+3)/39;
if z>1.6 then y:=z^0.3+0.5*d (расчет параметра y)
else if z<=1.6 then y:=d/z+(z+a)^3;
writeLn(‘y=’, y);
end.
Подскажите пожалуйста что не так???????
Program Lab2
Const a=12.56; (описание постоянных параметров)
Var z,a,y: real; (описание постоянных параметров)
begin
write(‘Введите z=’); (ввод параметра z с клавиатуры)
readLn(z);
d:=cos*(a+3)/39;
if z>1.6 then y:=z^0.3+0.5*d (расчет параметра y)
else if z<=1.6 then y:=d/z+(z+a)^3;
writeLn(‘y=’, y);
end.
Подскажите пожалуйста что не так???????
//почему когда я нажимаю снизу в окне для ввода s , то у меня выбывает ошибка?
program a1;
var
s:integer;
begin
write(‘введите целое число’ );
readln(s);
writeln(‘последняя цифра это’,s mod 10) ;
end.