Автор работы: Пользователь скрыл имя, 27 Июня 2012 в 21:02, контрольная работа
Решение задачи:
Для заданной функции f(х) = 1/4*х2*(х - 4)2 вывести на экран все значения функции, меньше некоторого числа К на отрезке [а, в] с шагом ΔХ =h. Средствами Pascal.
Министерство транспорта Российской Федерации
Федеральное агентство железнодорожного транспорта
Государственное образовательное учреждение высшего профессионального образования
Самарский государственный университет путей сообщения
Кафедра «Информатика»
Контрольная работа № 1
по дисциплине «Информатика»
Выполнил: ______________
Шифр: _________________
Проверил: ______________
Самара 2010 г.
Условие задачи
Для заданной функции f(х) = 1/4*х2*(х - 4)2 вывести на экран все значения функции, меньше некоторого числа К на отрезке [а, в] с шагом ΔХ =h.
Постановка задачи
1. Для ввода данных, параметров функции, определяем переменные вещественного типа A, B, H, K.
2. В качестве аргумента и значения функции используем переменные вещественного типа Х и Y соответственно.
3. Поскольку цикл на базе оператора FOR имеет фиксированный шаг приращения, равный 1 или –1, то в программе будем использовать цикл с предусловием на базе оператора WHILE.
4. В теле цикла организуем приращение аргумента Х на величину H, вычисление функции, вывод результата расчёта в соответствии с условием задачи и установку флага Res при наличии результата вычислений. Для влага наличия результата определим переменную логического типа Res со значением по умолчанию “False” (ЛОЖЬ).
5. По окончанию цикла вычислений анализируем флаг наличия результата Res, при значении Res=False выводим соответствующее сообщение на экран и организуем цикл ожидания нажатия любой клавиши, чтобы не произошло выхода из программы по её окончанию.
Блок-схема алгоритма программы
Листинг программы на языке Pascal
{-----------------------------
{ЗАДАНИЕ: Вычислить f(X)= 1/4*SQR(X)*SQR(X-4) и вывести все f(x) < K }
{-----------------------------
uses crt; {Подключение текстового модуля}
{Определение переменных}
var
A,B,H,K,Y,X: real; {Переменные вещественного типа}
Res: boolean;
begin
{Установка текстового видеорежима 80х25}
textMode(3);
clrscr;
{Заголовок с заданием}
Writeln('ЗАДАНИЕ:');
Writeln('--------');
Writeln('Вывести все f(X) < K, где');
Writeln(' - f(X)= 1/4*SQR(X)*SQR(X-4);');
Writeln(' - X = [A,B];');
Writeln(' - dX = H.');
Writeln;
{Ввод данных}
Writeln('ВВОД ДАННЫХ:');
Writeln('-----------');
Write('Параметр A = ');
Readln(A);
Write('Параметр B = ');
Readln(B);
Write('Параметр H = ');
Readln(H);
Write('Параметр K = ');
Readln(K);
Writeln;
{Цикл вывода результат вычислений}
Res:=False;
Writeln('Результаты вычислений:');
Writeln('---------------------
while A<=B do
begin
X:=A;
Y:=1/4*SQR(x)*SQR(x-4);
A:=A+H;
If Y < K then
begin;
Res:=True;
Writeln(Y:12:4);
end;
end;
{Если нет ни одного результата}
If Res=False then Writeln('По заданным параметрам результата нет!');
{Ожидание нажатия клавиши}
repeat until keypressed;
end.
Результаты работы программы (пример 1)
Входные данные | ||||||||
A | B | H | K |
| ||||
1 | 10 | 1 | 500 | |||||
Цикл вычислений (результаты на момент окончания вычислений) | ||||||||
A | B | H | K | X | Y | Y < K | Вывод на экран | Res |
2 | 10 | 1 | 500 | 1 | 2,2500 | TRUE | ДА | TRUE |
3 | 10 | 1 | 500 | 2 | 4,0000 | TRUE | ДА | TRUE |
4 | 10 | 1 | 500 | 3 | 2,2500 | TRUE | ДА | TRUE |
5 | 10 | 1 | 500 | 4 | 0,0000 | TRUE | ДА | TRUE |
6 | 10 | 1 | 500 | 5 | 6,2500 | TRUE | ДА | TRUE |
7 | 10 | 1 | 500 | 6 | 36,0000 | TRUE | ДА | TRUE |
8 | 10 | 1 | 500 | 7 | 110,2500 | TRUE | ДА | TRUE |
9 | 10 | 1 | 500 | 8 | 256,0000 | TRUE | ДА | TRUE |
10 | 10 | 1 | 500 | 9 | 506,2500 | FALSE |
| TRUE |
11 | 10 | 1 | 500 | 10 | 900,0000 | FALSE |
| TRUE |
Пример работы программы (пример 1)
Результаты работы программы (пример 2)
Входные данные | ||||||||
A | B | H | K |
| ||||
1 | 2 | 1 | 0 | |||||
Цикл вычислений (результаты на момент окончания вычислений) | ||||||||
A | B | H | K | X | Y | Y < K | Вывод на экран | Res |
2 | 2 | 1 | 0 | 1 | 2,2500 | FALSE | НЕТ | FALSE |
3 | 2 | 1 | 0 | 2 | 4,0000 | FALSE | НЕТ | FALSE |
Пример работы программы (пример 2)
Список литературы
1. Леонтьев В.П. Новейшая энциклопедия персонального компьютера
2007. – М.: ОЛМА Медиа Групп, 2007. – 896 с.
2. Семакин И.Г., Залогова Л.А. и др. Информатика и информационно – коммуникационные технологии. Базовый курс. 3-е изд. – М.: БИНОМ. 2007. – 176 с.
Министерство транспорта Российской Федерации
Федеральное агентство железнодорожного транспорта
Государственное образовательное учреждение высшего профессионального образования
Самарский государственный университет путей сообщения
Кафедра «Информатика»
Контрольная работа № 2
по дисциплине «Информатика»
Выполнил: ______________
Шифр: _________________
Проверил: ______________
Самара 2010 г.
Условие задачи
Для заданной функции f(х) = 1/4*х2*(х - 4)2 вывести на экран все значения функции, меньше некоторого числа К на отрезке [а, в] с
шагом ΔХ =h.
Выполнение задания
1. Оформим внешний вид задачи на листе EXCEL согласно рисунку 1:
Рисунок 1. Внешний вид задачи
2. В ячейки B6, B7, B8 и B9 впишем параметры задачи A, B, H и K соответственно.
3. В ячейке B14 ставим знак «=» и записываем формулу:
ЕСЛИ(B6<=$B$7;$B$6;"КОНЕЦ")
В качестве базовой функции этой ячейки использована функция ЕСЛИ, которая имеет следующий формат: ЕСЛИ(логическое выражение; значение если ИСТИНА; значение если ЛОЖЬ). Ссылка на ячейку вида B6 является относительной, то есть при копировании формулы, содержащей такую ссылку, из одной ячейки в другую, значение ссылки будет автоматически изменено. Ссылка на ячейку вида $B$7 является абсолютной, то есть при копировании формулы, содержащей такую ссылку, из одной ячейки в другую, значение ссылки изменено не будет.
Согласно этой формуле, ячейка примет значение параметра A, если A<=B. В противном случае данная ячейка будет содержать слово “КОНЕЦ”.
4. В ячейке C14 ставим знак «=» и записываем формулу:
ЕСЛИ(B14="КОНЕЦ";"";1/4*
Согласно этой формуле, ячейка будет пустой, если содержимое прилегающей слева ячейки - это слово “КОНЕЦ”. Если прилегающая слева ячейка не содержит слово “КОНЕЦ”, то происходит вычисление функции по условию задачи.
5. В ячейке D14 ставим знак «=» и записываем формулу:
ЕСЛИ(C14="";"";ЕСЛИ(C14<$B$9;
Согласно этой формуле, ячейка будет пустой, если прилегающая слева ячейка также пуста. В противном случае согласно условию задачи проводим сравнение результата вычислений со значением параметра K и, если результат меньше K, то отображаем результат в ячейке. В ином случае содержимое ячейки будет пустым.
6. В ячейке B15 ставим знак «=» и записываем формулу:
ЕСЛИ(ИЛИ(B14="";B14="КОНЕЦ");"
В этой формуле будем использовать дополнительно функцию ИЛИ.
Согласно этой формуле, ячейка будет пустой, если содержимое прилегающей сверху ячейки - это слово “КОНЕЦ” или “” (пустое значение). Иначе проводим сравнение суммы, состоящей из значения вышестоящей ячейки и параметра приращения H, со значением параметра B. При этом, если X+H<=B, то отображаем новое значение X=X+H, иначе помещаем в ячейку слово “КОНЕЦ”.
Информация о работе Контрольная по информатике на языке Pascal