Математическая модель задачи
Поможем в ✍️ написании учебной работы
Поможем с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой

Введём переменные:

z – введённое трёхзначное число.

Единицы: e = z mod 10;

Десятки: d = (z div 10) mod 10;

Сотни:   s = z div 100;

Сумма цифр числа z: Sum = e + d + s.

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

 



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

Program Example_1;

Var z, e, d, s, Sum : word;

Begin

write(‘Введите трехзначное число z=‘);

read(z);

e := z mod 10;

d := (z div 100) mod 10;

s := z div 100;

Sum := e + d + s;

writeln(‘Сумма цифр числа ‘, z , ’ = ‘, Sum);

readln

end.

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

1) Для числа z=128 – сумма цифр = 1 + 2 + 8 = 11

2) Для числа z=756 – сумма цифр = 7 + 5 + 6 = 18

 

Пример 1.2 . Даны два круга с общим центром и радиусами R1 и R2 (R1 > R2 ). Найти площадь S кольца, внешний радиус которого равен R1 , а внутренний радиус R2. В качестве значения π использовать 3.14.

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

Площадь S кольца будет равна разности площади круга с радиусом R1 и площади круга с радиусом R2:

S = 3.14*R12 – 3.14*R22.

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

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

Program Example_2;

Var R1, R2, S : real;

Begin

write(‘Введите радиус большего круга R1=‘);

read(R1);

write(‘Введите радиус меньшего круга R2=‘);

read(R2);

S := 3.14*R1*R1 - 3.14*R2*R2;

writeln(‘Площадь кольца S = ‘, S:5:2);

readln

end.

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

1) Для R1=5, R2=3  –  Площадь кольца S = 3.14*52 – 3.14*32 = 50.24

2) Для R1=7, R2=5  –  Площадь кольца S = 3.14*72 – 3.14*52 = 75.36

 

УСЛОВНЫЙ ОПЕРАТОР

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

Пример 2.1 . Даны действительные числа  x, y. Меньшее из этих двух чисел заменить их удвоенной суммой, а большее – половиной их произведения. Если числа равны, то оставить их без изменения.

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

Введём переменные:

min = 2*(x + y);

max = x * y / 2.

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

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

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.

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

Дата: 2019-03-05, просмотров: 209.