
- •Языки и системы программирования Алгоритмы
- •Языки программирования
- •Область применения языков программирования
- •Сложность и эффективность языков программирования
- •Трансляторы
- •Характеристика с/п Pascal abc
- •Используемые в с/п Pascal abc «горячие клавиши»
- •Структура программы на Паскале
- •Сообщения об ошибках. Отладка программы.
- •Система подсказок.
- •Команды вывода данных на экран
- •Константы
- •Переменные
- •Арифметические выражения. Приоритет арифметических операций
- •Стандартные арифметические функции
- •Процедуры инкремента и декремента
- •Примеры решения линейных задач
- •Ввод данных с клавиатуры
- •Примеры решения диалоговых задач
- •Линейные задачи для самостоятельной работы
- •Лаб. 1. Линеаризовать выражение:
- •Лаб. 2. Линейные диалоговые задачи (на одно действие)
- •Лаб. 3. Диалоговые задачи на несколько действий
- •Ветвление
- •Логические выражения
- •Вложенное ветвление
- •Лаб. 4. Задачи на ветвление:
- •Лаб. 5. Задачи на ветвление с вычислениями:
- •Выбор варианта
- •Лаб. 6. Задачи на выбор варианта:
- •Как выбрать цикл?
- •Экстренные события в теле цикла
- •Лаб. 7. Числовые задачи с циклом For
- •Лаб. 8. Сюжетные задачи с циклом For
- •Лаб. 9. Задачи с условными циклами
- •Библиотека crt
- •Библиотека sounds
- •Лаб. 10. Задачи с использованием циклов и библиотек crt и sounds
- •Порядковые типы данных
- •Перечислимый тип данных
- •Символьный тип данных
- •Ограниченный (интервальный) тип данных
- •Лаб. 11. Задачи со строками
- •Массивы
- •Решение задач с массивами
- •Поиск минимального (максимального) элемента массива
- •Сортировка массива.
- •Двумерные и многомерные массивы
- •Лаб. 12. Задачи с одномерными массивами
- •Лаб. 13. Задачи с двумерными массивами
- •Множества
- •Файлы данных
- •Записи и базы данных
- •Библиотека GraphAbc
- •Действия с графическим окном:
- •Точечная графика
- •Графические примитивы
- •Текст в графическом окне
- •Использование готовых точечных рисунков
- •Вспомогательные алгоритмы
- •Рекурсия
- •Событийное программирование
- •Использование таймеров
- •Использование сторонней библиотеки ukeyb
Ввод данных с клавиатуры
О
бычно
программист и пользователь – это разные
люди. Не всегда программисту заранее
известно, с какими числами придётся
работать пользователю. Поэтому вместо
присваивания часто используют другой
способ занесения чисел в переменные:
ввод с клавиатуры. Программист с помощью
команды 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.
Пример 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. результат работы программы (скопировать из окна вывода).