Для врача исходной информацией может быть выписка справки, отдача результатов анализов пациенту, выписка лекарств.
Для регулировщика исходная информация является его движения руками(жесты), с помощью их он доводит информацию до водителей.
<span>int [ , ] array = new int [2,3];
</span>Random rnd=new Random();
For (int i=0; i<array.lenght; i++)
{
For (int j=0; i<array.lenght; j++)
{
a[i,j]=rnd.Next(-25,25);
if (array[i,j]<0) Console.WriteLine("Есть");
}
}
var
z,a,i:integer;
begin
writeln('vvedite chislo');
readln(z);
writeln('vvedite zifru');
readln(a);
for i:=1 to length(IntToStr(z)) do begin
if z mod 10 = a then
writeln('est');
z:=z div 10;
end;
end.
<u>План решения</u>
1. Из прямоугольного треугольника, образованного известной стороной b, известной высотой h и стороной с, можно найти угол α по определению синуса: sin(α) = h/b → α = arcsin(h/b);
2. Далее решаем треугольник по известным двум сторонам и углу между ними. Это решение известно из школьного курса.
Из теоремы косинусов: a² = b²+c²-2bc·cos(α) и потом извлекаем квадратный корень из полученного значения.
Из теоремы синусов найдем sin(β) = b·sin(α)/a → β=arcsin(b·sin(α)/a)
Третий угол найти совсем просто: γ=180°-(α+β).
3. Осталось найти значения прочих параметров
Периметр Р = a+b+c
Площадь S = 1/2×c×h
<em>// PascalABC.NET 3.2, сборка 1417 от 28.03.2017</em>
<em>// Внимание! Если программа не работает, обновите версию!</em>
begin
var b,c,h:real;
Write('Ввести b,c,h: '); Read(b,c,h);
var alpha:=arcsin(h/b);
var a:=sqrt(b*b+c*c-2*b*c*cos(alpha));
var beta:=arcsin(b*sin(alpha)/a);
var alphaD:=RadToDeg(alpha);
var betaD:=RadToDeg(beta);
var gammaD:=180-(alphaD+betaD);
var P:=a+b+c;
var S:=h*c/2;
Writeln('a=',a:0:3);
Writeln('A=',alphaD:0:1,', B=',betaD:0:1,', C=',gammaD:0:1);
Writeln('Р=',P:0:3,', S=',S:0:5)
end.
<u>Контрольный пример</u>
Ввести b,c,h: 12.6 14.2 8
a=9.162
A=39.4, B=60.8, C=79.8
Р=35.962, S=56.80000
Const
m=10;
n=8;
var
a:array[1..m,1..n] of integer;
i,j:integer;
begin
Randomize;
Writeln('Исходный массив');
for i:=1 to m do begin
for j:=1 to n do begin
a[i,j]:=Random(20)+10;
Write(a[i,j]:3)
end;
Writeln
end;
Writeln('Результирующий массив');
for i:=1 to m do begin
for j:=1 to n do begin
if a[i,j] mod 5=0 then a[i,j]:=2*a[i,j]
else a[i,j]:=3*a[i,j];
Write(a[i,j]:3)
end;
Writeln
end
end.
Пример решения
Исходный массив
12 10 12 20 17 17 28 23
22 27 28 14 23 10 26 15
29 13 10 29 26 11 17 24
10 14 17 24 16 12 22 28
17 25 26 24 25 22 17 23
18 11 20 12 28 29 25 13
26 11 28 19 17 27 22 10
22 17 20 12 10 13 17 19
14 10 27 28 13 11 20 16
26 16 21 24 20 15 26 10
Результирующий массив
36 20 36 40 51 51 84 69
66 81 84 42 69 20 78 30
87 39 20 87 78 33 51 72
20 42 51 72 48 36 66 84
51 50 78 72 50 66 51 69
54 33 40 36 84 87 50 39
78 33 84 57 51 81 66 20
66 51 40 36 20 39 51 57
42 20 81 84 39 33 40 48
78 48 63 72 40 30 78 20