zakaz1
?>

Исполнитель вычислитель умеет выполнять только две команды: умножать на 2 и прибавить 1. придумайте для него наиболее короткий алгоритм получения из 0 число 50

Информатика

Ответы

moisalexx7
0+1 = 1
1*2 = 2 (или 1+1 = 2)
2+1 = 3
3*2 = 6
6*2 = 12
12*2 = 24
24+1 = 25
25*2 = 50
Darya Aleksei1173
Могу в предложить в данном случае использовать goto и метки. Ну, если вы имеете какой то признак неправильных данных, например, это отрицательные значения (предположим, что это неправильные данные) То на этапе, когда вы вводите эти значения, вы должны поставить условный оператор. Т.е.
if a<0 tnen
begin
Writeln('Вы ввели неверные данные');
goto 1
else
goto 2;
Метку 1 вы ставите в начало алгоритма, т.е. туда, откуда вы хотите начать повторное выполнение программы, а метку 2 поставить в продолжение алгоритма, т.е. на тот случай, если данные были введены верно
natakrechko

var

 a, b, S, c, alpha, betta, gamma, H, P: real;

 x, ar, br, gr: real;{alpha, beta. gamma в радианах}


begin

 write('Введите длины двух сторон треугольника и площадь: ');

 readln(a, b, S);

 x := 2 * S / (a * b);

 if x > 1 then writeln('Такой треугольник невозможен')

 else

 begin

   gr := ArcSin(x);

   c := Sqrt(Sqr(a) + Sqr(b) - 2 * a * b * Cos(gr));

   P := a + b + c;

   ar := ArcSin(a * Sin(gr) / c);

   br := Pi - (ar + gr);

   H := b * Sin(ar);

   alpha := ar * 180 / Pi;

   betta := br * 180 / Pi;

   gamma := 180 - (alpha + betta);

   writeln('Решение треугольника');

   writeln('a=', a, ', b=', b, ', c=', c:0:5);

   writeln('Alpha=', alpha:0:2, ', Betta=', betta:0:2, ', Gamma=', gamma:0:2);

   writeln('P=', P:0:5, ', H=', H:0:5, ', S=', S)

 end

end.


Тестовое решение:


Введите длины двух сторон треугольника и площадь: 3 4 6

Решение треугольника

a=3, b=4, c=5.00000

Alpha=36.87, Betta=53.13, Gamma=90.00

P=12.00000, H=2.40000, S=6

Ответить на вопрос

Поделитесь своими знаниями, ответьте на вопрос:

Исполнитель вычислитель умеет выполнять только две команды: умножать на 2 и прибавить 1. придумайте для него наиболее короткий алгоритм получения из 0 число 50
Ваше имя (никнейм)*
Email*
Комментарий*

Популярные вопросы в разделе

osuvorova7979
skorpion7228528
f-d-a-14
ilma20168
Nikolaevna382
КалюкМарасанов1026
avon-central
goldservicepro
anna241273
kononenko-elena4
elivanova
balabinatanya7174
Yelena Dilyara
Vyacheslavovich-Gubanov
endyurans2ooo