Студопедия

КАТЕГОРИИ:

АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция

Текст программы на языке Паскаль




Program Example_3;

Var x, y, min, max : real;

Begin

write(‘Введите x = ‘);

read(x);

write(‘Введите y = ‘);

read(y);

min := 2*(x + y);

max := x * y / 2;

if x<y then begin x:=min; y:=max end

else if x>y then begin y:=min; x:=max end;

writeln(‘Результат: x = ‘, x:4:2, ‘ y = ‘, y:4:2);

readln

end.

Данные для тестирования

1) Для   x = 5, y = 3 ð  min = 2*(5+3) = 16; max = 5 * 3 / 2 = 7.5;

Результат:  x = 7.5 y = 16

2) Для x = 3, y = 5 ð min = 2*(3+5) = 16; max = 3 * 5 / 2 = 7.5;

Результат:  x = 16 y = 7.5

3) Для x = 3, y = 3 ð Результат:  x = 3 y = 3

 

Пример 2.2.   Даны два действительных числа x, y. Определить, принадлежит ли точка с  координатами  x, y заштрихованной области.

Математическая модель задачи

Из рисунка можно определить, что заштрихованная область ограничена тремя прямыми: y = 0, y = -x – 1, y = x – 1. Границы также принадлежат этой области.

Тогда, чтобы точка с координатами (х, у) принадлежала заштрихованной области, необходимо, чтобы одновременно выполнялись три условия:

У ≤ 0

y ≥ x -1 ;

y ≥ -x - 1.

Блок-схема алгоритма

Текст программы на языке Паскаль

Program Example_4;

Var  x, y : real;

Begin

writeln;

write(‘Введите x = ‘);

read(x);

write(‘Введите y = ‘);

read(y);

if (y <= 0)  and  (y >= x – 1)  and  (y >= -x – 1)

then writeln(‘Точка принадлежит заштрихованной области’)

else writeln(‘Точка не  принадлежит заштрихованной области’);

readln

end.

Данные для тестирования

1) Для x = -0.3, y = -0.6 ð Точка принадлежит заштрихованной области;

2) Для x = -0.3, y = -1 ð Точка  не принадлежит заштрихованной области;

3) Для x = 0.6, y = -0.3 ð Точка принадлежит заштрихованной области;

4) Для x = 0.3, y = 1 ð Точка  не принадлежит заштрихованной области;

 

Пример 2.3. Дано действительное число  a. Для функции f(x), график которой представлен на рисунке, вычислить значение  f(a).

Математическая модель задачи

Опишем на математическом языке представленную на графике функцию:

1   при   x < -2

f(x) =     - х - 1   при   -2 <= x < 0

х - 1     в остальных случаях

Блок-схема алгоритма

Текст программы на языке Паскаль

Program Example_5;

Var  a, f : real;

Begin

writeln;

write(‘Введите a = ‘);

read(a);

if a < -2 then f := 1

else if a < 0 then f := -x -1

else f := x – 1;

writeln(‘Результат: f(‘, a:3:2, ‘) = ‘, f:4:2);

readln

end.

Данные для тестирования

1) Для a = -4     ð    Результат:   f(-4.00) = 1.00

2) Для a = -1.3 ð     Результат:   f(-1.30) = 0.30

3) Для a = 2.7 ð Результат:   f(2.70) = 1.70

 

ПРОСТЕЙШИЕ ЦИКЛЫ

При решении задач этой темы используются алгоритмы, имеющие циклическую структуру. В зависимости от последовательности рассмотрения материала (операторов цикла), предполагается, что для реализации решения на языке Паскаль могут использоваться оператор цикла с предусловием while  или оператор цикла с постусловием  repeat.

Пример 3.1. Даны натуральные числа  А, В. Найти наименьшее общее кратное этих двух чисел.

Математическая модель задачи

Наименьшим общим кратным двух чисел является наименьшее число, которое делится нацело, т.е. без остатка, на оба этих числа. Таким числом может оказаться одно из заданных чисел – то, которое больше.

Введём переменную R – наименьшее общее кратное.

Для сокращения числа проверок, вначале можно найти большее из двух заданных чисел и в качестве начального значения переменной R принять это число. Затем в цикле добавлять к R по единице, пока R не будет делиться нацело на оба заданных числа. В этом примере удобнее использовать оператор цикла с постусловием  repeat.

Блок-схема алгоритма










Последнее изменение этой страницы: 2018-04-12; просмотров: 504.

stydopedya.ru не претендует на авторское право материалов, которые вылажены, но предоставляет бесплатный доступ к ним. В случае нарушения авторского права или персональных данных напишите сюда...