Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
лекции программирование.doc
Скачиваний:
6
Добавлен:
29.11.2019
Размер:
1.01 Mб
Скачать

Ввод данных с клавиатуры

О бычно программист и пользователь – это разные люди. Не всегда программисту заранее известно, с какими числами придётся работать пользователю. Поэтому вместо присваивания часто используют другой способ занесения чисел в переменные: ввод с клавиатуры. Программист с помощью команды write (или writeln) задаёт пользователю вопрос, а его ответ ожидает с помощью команды readln. После этой команды в скобках указывается переменная, куда должен попасть ответ, введённый с клавиатуры пользователем.

О дной командой readln можно ввести и несколько значений. Переменные для этих значений нужно перечислить после readln в скобках через запятую. Пользователь, отвечая на вопрос, должен после каждого числа ставить пробел или нажимать клавишу <Enter>.

Примеры решения диалоговых задач

Пример 1. Какой процент составляет число a от числа b?

program procent;

var

a,b,p:real;

begin

write(’Введите a и b ’); readln(a,b);

p:=a/b*100;

writeln(a:3:1,’ составляет ’,p:3:1,’% от ’,b:3:1);

end.

Пример 2. Проводится соревнование по поеданию пирожков. За 10 минут Вася съел a пирожков, а Коля b пирожков. На командном первенстве они составили одну команду. За сколько минут эта команда съест с пирожков?

program edoki;

var

a,b,c,t,vv,vk,v:real;

begin

write(’Сколько пирожков съел Вася? ’); readln(a);

write(’Сколько пирожков съел Коля? ’); readln(b);

write(’Сколько пирожков должна съесть команда? ’);

readln(с);

vv:=a/10; {скорость Васи}

vk:=b/10; {скорость Коли}

v:=vv+vk; {общая скорость}

t:=c/v;

writeln(’Команда справится за ’,t:3:1,’ минут’);

end.

П

program cena;

var

cr,ck,n,sr,sk:integer;

c,s:real;

begin

writeln(’Введите цену 1 кг. пшеницы:’);

write(’- Рубли: ’); readln(cr);

write(’- Копейки: ’); readln(ck);

write(’Ск. кг. пш-цы надо купить? ’); readln(n);

c:=cr+ck/100; //Переводим копейки в доли рубля.

s:=c*n; //Стоимость всей пшеницы

sr:=trunc(s); //Целая часть стоимости - рубли

sk:=trunc(frac(s)*100); //Дробн.часть – доли рубля

writeln(’Вся пш. стоит ’,sr,’ руб. и ’,sk,’ коп.’);

end.

ример 3.
С клавиатуры вводится цена одного килограмма пшеницы в рублях и копейках. Программа должна рассчитать стоимость n килограммов пшеницы и тоже выразить её в рублях и копейках.

Пример 4. К введённому двузначному числу n дописать цифру k в начало и в конец и, прибавив к результату 100, напечатать получившееся число.

program dopisyvaem;

var

n,k,r:integer;

begin

write(’Введите двузначное число: ’); readln(n);

write(’Введите одну цифру: ’); readln(k);

r:=k*1000+k+n*10 + 100;

writeln(’Получилось ’,r);

readln;

end.

Линейные задачи для самостоятельной работы

Приведенные ниже задачи разделены на группы. В каждой группе решите задачу, номер которой совпадает с Вашим вариантом. Данные, которые заданы числом, считаются известными. Данные, обозначенные буквой, требуется ввести с клавиатуры.

Отчёт по работе (в печатном виде) состоит из таких частей:

1. заголовок (группа, Фио студента, тема, № варианта /задачи/, место для оценки, даты и подписи преподавателя); 2. условие; 3. объяснение решения; 4. схема алгоритма; 5. исходный текст программы; 6. результат работы программы (скопировать из окна вывода).