JOptionPane.showMessageDialog(null, text);
X=2.0-x;
Else
X=Double.parseDouble(input);
String input, text;
Double x, y, sLeft, sRight, alfa, sinAlfa, segment;
Package javaapplication2;
Пример
Else
{
a=Math.cos(c);
b=1.0/c
}
Задан график функции f(x) – полуокружность радиуса R=1:
Определить:
1. Значение функции y при заданном значении аргумента x.
2. Площади фигур слева и справа от линии разреза.
По теореме Пифагора:
Площадь фигуры слева от линии разреза определяется суммой площадей прямоугольного треугольника:
s1 = 0,5 x y
и сектора:
s2 = 0,5 R2 (α – sin α), где α – центральный угол в радианах,
причем
α = arcsin(y/R).
Площадь всей фигуры (полукруга) определяется выражением:
S = π R2/2.
Программа решения задачи:
// импорт библиотеки графических компонентов Swing
import javax.swing.*;
public class JavaApplication2 // описание главного класса
{
public static void main(String[] args)
{
// описание переменных:
y=0.0;
sLeft=0.0;
sRight=0.0;
// вызов диалогового окна ввода исходных данных
input=JOptionPane.showInputDialog("Введите значение переменной x:");
// преобразование из строкового значения в вещественное
if (x<=1.0) //первый участок
{
y=Math.sqrt(1.0 - (x - 1.0 ) * (x - 1.0 ));
if (x<=0.0)
y=0.0;
}
{ //второй участок
y=Math.sqrt(1.0 - (x - Math.floor(x)) * (x - Math.floor(x)));
if (x>=2.0)
y=0.0;
}
if (x==1.0) //двойной знак равенства!
{
sLeft=0.7854;
sRight=0.7854;
}
if (x<1.0) //первый участок
{
sinAlfa=y;
if (sinAlfa!=1.0)
alfa=Math.atan(sinAlfa/Math.sqrt(1.0 - sinAlfa*sinAlfa));
else alfa=Math.PI/2.0;
segment=0.5*(alfa - sinAlfa);
sLeft=segment + 0.5*x*y;
sRight=Math.PI/2.0 - sLeft;
} //x<1.0
if (x>1.0) //второй участок
{
sinAlfa=y;
if (sinAlfa!=1.0)
alfa=Math.atan(sinAlfa/Math.sqrt(1.0 - sinAlfa*sinAlfa));
else alfa=Math.PI/2.0;
segment=0.5*(alfa - sinAlfa);
sLeft=segment + 0.5*x*y;
sRight=Math.PI/2.0 - sLeft;
} //x>1.0
// формирование строки вывода
text="Результат работы программы:\ny=" + y + "\ns_left=" + sLeft + "\ns_right=" + sRight;
// вызов диалогового окна вывода
}
}
Часто приходится делать выбор не между двумя, а между несколькими путями решения задачи. Такую ситуацию называют переключателем:
В языке Java переключатель реализуется оператором switch (переключатель):