- •Постановка задачи
- •Методика решения задач с помощью языка программирования Pascal
- •Оформление отчёта по решению задачи средствами языка Pascal
- •Примеры выполнения заданий средствами языка Паскаль
- •1 Положительное, 1 отрицательное
- •0 Положительных, 2 отрицательных
- •Методика решения задач с помощью электронных таблиц ms Excel
- •2. Среднеассортиментную площадь деталей (столбец 7).
- •3. Подсчитать количество деталей, изготовленных из материала ик “Costo”.
- •4. Подсчитать общую площадь материала ик “Bravo”, используемого для производства обуви размера 225.
- •5. Определить, какая из деталей, язычок или подблочник, имеет большую среднеассортиментную площадь.
- •Защита контрольной работы
- •Задания к контрольной работе
Оформление отчёта по решению задачи средствами языка Pascal
Отчёт о решении задачи должен содержать:
полный текст задания;
краткую постановку задачи (входные, выходные данные; формулы для вычисления);
словесное описание алгоритма;
блок-схему вычислительного алгоритма, выполненную в соответствии с требованиями ГОСТ 19.701 — 90 (ИСО 5807 — 85);
исходный текст программы на языке Pascal;
результаты тестовых запусков.
Примеры выполнения заданий средствами языка Паскаль
Задание №1
Найти и вывести на экран время, которое потребуется для обхода К станков работнице, если известно, что при обслуживании ткацкого станка работница проходит А м., переход от одного станка к другому составляет В м., а средняя скорость движения составляет S км/час. Переход осуществляется только последовательно от станка к станку.
Постановка задачи
Входными данными являются:
количество станков (К);
длина ткацкого станка (А);
расстояние между станками (В);
средняя скорость движения (S).
Выходные данные:
время обхода станков (Т).
Переходов между станками на один меньше, чем самих станков, поэтому, чтобы вычислить суммарное расстояние переходов, нужно рассчитать по формуле (K-1)*В. Суммарную длину нужно рассчитать по формуле K*А. Полученное расстояние нужно поделить на тысячу, потому что средняя скорость движения работницы дана в км/час.
Полная формула вычисления времени обхода будет такой:
Т = ((K-1)*В + K*А)/(S*1000);
Словесное описание алгоритма.
Вывести на экран для пользователя сообщение о том, какие величины ему необходимо ввести.
Записать введённые пользователем значения в переменные К, А, В, S.
Вычислить значение времени обхода по формуле ((K-1)*В + K*А)/(S*1000) и записать его в переменную Т.
Вывести на экран значение переменной Т.
Программа на языке Pascal.
program Obs;
var
a,b,S,t,k:real;
begin
writeln(‘Введите К, А, В, S’);
read(k,a,b,S);
t:= ((K-1)*b + K*a)/(S*1000);
write(‘Время обслуживания -’,t,‘ ч.’);
end.
Блок-схема алгоритма
Результаты тестового запуска:
Введите К, А, В, S
10
2
10
2
Время обслуживания – 5.9000000000Е-01 ч.
Задание №2
Даны три целых, отличных от нуля числа: А, В. Найти количество положительных и количество отрицательных чисел в исходном наборе.
Постановка задачи
Входными данными являются три числа А и В.
Выходные данные: после выполнения программы на экране должно появиться два числа: количество положительных чисел и количество отрицательных чисел.
Имеется три возможных варианта:
0 положительных, 2 отрицательных (в случае если A<0 и B<0);
2 положительных, 0 отрицательных (в случае если A>0 и B>0);
1 положительное, 1 отрицательное (в случае если A>0 и B<0, или A<0 и B>0).
Словесное описание алгоритма.
Вывести на экран для пользователя сообщение о том, что нужно ввести два отличных от нуля числа.
Записать введённые пользователем значения в переменные А и В.
Если A<0 и B<0, то вывести на экран сообщение: “0 положительных, 2 отрицательных”.
В противном случае, если A>0 и B>0, то вывести на экран сообщение: “2 положительных, 0 отрицательных”.
В противном случае (если оба условия: A<0 и B<0, A>0 и B>0 не соответствуют истине) можно вывести на экран сообщение: “1 положительное, 1 отрицательное”, поскольку если исключены два из трёх вариантов, то оставшийся и является верным.
Программа на языке Pascal.
program AB;
var
A,B: integer;
begin
writeln(‘Введите два числа’)
read(A,B);
if (A<0)and (B<0) then
write(‘0 положительных, 2 отрицательных’)
else
if (A>0)and (B>0) then
write(‘2 положительных, 0 отрицательных’)
else
write(‘1 положительное, 1 отрицательное’)
end.
Блок-схема алгоритма
Результаты тестовых запусков:
Запуск №1:
Введите два числа
-1
3