Библиографическое описание:

Масленкова В. А., Горячева К. Г., Пешкова Д. А., Арзяева Н. А., Васенина А. А., Фадеева А. С., Коваленко И. А., Бондарева Я. А., Молдыбаева А. И., Ширшикова М. Е. Задачи по программированию с продолжением на языке Паскаль // Молодой ученый. — 2016. — №30.1. — С. 43-46. — URL https://moluch.ru/archive/134/38693/ (дата обращения: 21.05.2018).



Приведём пример задач по программированию на языке Паскаль (с использованием линейных, циклических алгоритмов, генератором случайных чисел и счётчика).

«5» – 10 баллов

«4» – 7 баллов

«3» – 3 балла

Задачи

Балл

Задания 1 уровня. Формализовать постановку задачи. Представить алгоритм в виде блок-схемы. Составить список используемых переменных. Реализовать правила представления данных: констант, переменных, типы переменных. Присвоить значения переменным. Организовать ввод и вывод данных. Составить программу и исполнить ее вручную. Проверить работу программы на компьютере.

3 балла

Чиновник строит дачу с забором. Напишите программу вычисления количества досок для забора на заданном участке, если ширина доски равна 10 сантиметров, а длина прямоугольного участка земли равна X метров, ширина равна Y метров.


Решение:
program Project;
var
x, y, rez: real;
begin
{Вод значений с клавиатуры}
write('Wwedi dlinu X:'); readln(x);
write('Wwedi shirinu Y:'); readln(y);
{Вычисляем периметр участка}
rez:= 2*x + 2*y;
{Вычисляем нужное количество досок}
rez:= rez/0.1;
{Выводим результат на экран}
writeln('Chislo dosok = ', rez:0:2);
readln; {Задержка закрытия программы}
end.

Задания 2 уровня. Организовать цикл.

7 баллов

Чиновнику требуется закупить канцтовары для работы. Требуется определить, сколько можно приобрести ручек (по цене 1000 руб.), карандашей (500 руб.) и ластиков (200 руб.) на 100 000 рублей. При этом всего предметов должно быть 30.


Описание переменных:

Обозначим искомое количество ручек, карандашей и ластиков через переменные a , b и c соответственно.

Цены предметов: pa, pb, pc.

Количество предметов: qty.

Сумма покупки: sum.

Алгоритм решения задачи:

Составим систему уравнений.
Уравнение суммы покупки: 1000*a + 500*b + 200*c = 100 000
Уравнение количества предметов: a + b + c = 30

Заменим числа соответствующими переменными:
Уравнение суммы покупки: pa*a + pb*b + pc*c = sum
Уравнение количества предметов: a + b + c = qty

Чтобы перебрать все возможные варианты сочетания переменных a , b и с , надо использовать три цикла, вложенные друг в друга.
Если при каких-либо значениях a , b и c оба уравнения будут истинны, значит эти значения являются решением для системы уравнений.
Система уравнений может иметь несколько решений или не иметь ни одного.

var

a, b, c: byte;

pa, pb, pc: byte;

qty, sum: byte;

begin

qty := 30;

sum := 100000;

pa := 1000;

pb := 500;

pc := 200;

for a:=0 to (sum div pa) do

for b:=0 to (sum div pb) do

for c:=0 to (sum div pc) do

if (pa*a + pb*b + pc*c = sum) and

(a + b + c = qty) then

writeln (a:3,b:3,c:3);

readln;

end.

Задания 3 уровня. Использовать генератор случайных чисел. Цикл с счетчиком.

10 баллов

Чиновник, ежемесячно берёт взятки в размере Х рублей. Величина Х непостоянная и колеблется от 0 до 150000 рублей. Автомобиль BMW 3, который хочет купить на взятки чиновник, стоит 1700000 рублей. Напишите программу, которая вычислит, сколько месяцев потребуется чиновнику на сбор нужной суммы.



Решение:
program Project;
var
x: longint; {Размер взятки}
mes: integer; {Число месяцев}
begin
mes:= 0;
x:= 0;
{Организуем цикл, который завершится при сумме взяток
равной или больше 1700000}
Repeat
{Организуем случайные числа для величины Х}
randomize;
x:= x + random(150000);
writeln(x);
{Организуем счётчик месяцев}
mes:= mes + 1; {inc(mes)}
until x >= 1700000;
{Выводим результат на экран}
writeln('Mesjac = ', mes);
readln; {Задержка закрытия программы}
end.

Основные термины (генерируются автоматически): Уравнение количества предметов, Уравнение суммы покупки, языке Паскаль, ширина доски равна, участка земли равна, программу вычисления количества, варианты сочетания переменных, генератором случайных чисел, Приведём пример задач, искомое количество ручек, сбор нужной суммы, числа соответствующими переменными, правила представления данных, ширина равна, типы переменных, Количество предметов, Цены предметов, взятки чиновник, берёт взятки, постановку задачи.


Обсуждение

Социальные комментарии Cackle
Задать вопрос