Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Практика ТиМО.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
96.26 Кб
Скачать
  1. Что нам дано?

  2. Схематически нарисовать прямоугольной отверстие (a,b) и кирпич (x,y,z).

  3. Как можно записать условия, что бы определить пройдёт ли кирпич через отверстие? (нужно рассмотреть все варианты прохождения кирпича через прямоугольное отверстие)

(a>x)и(b>y))или((a>y)и(b>x)

(a>x)и(b>z))или((a>z)и(b>x)

(a>y)и(b>z))или((a>z)и(b>y)

  1. Что будет запрашиваться (что нужно вводить с клавиатуры)? Какого типа будут переменные (5 чисел a, b, x,y,z: вещественные)

  2. К какой конструкции относится задача (Это алгоритм с вложенными полными ветвлениями)

  3. Какое условие будет проверяться и как с помощью этого оператора можно описать данную задачу? С помощью какого оператора и в каком виде выводится ответ?

If ((a>x)and(b>y))or((a>y)and(b>x))

then writeln('kirpich s rajmerami ',x:1:1,',',y:1:1,', ',z:1:1,' proydet v otverstie s rajmerami ',a:1:1,', ',b:1:1)

else

if ((a>x)and(b>z))or((a>z)and(b>x))

then writeln('kirpich s rajmerami ',x:1:1,',',y:1:1,', ',z:1:1,' proydet v otverstie s pajmerami ',a:1:1,', ',b:1:1)

else

if ((a>y)and(b>z))or((a>z)and(b>y))

then writeln('kirpich s rajmerami ',x:1:1,',',y:1:1,', ',z:1:1,' proydet v otverstie s rajmerami ',a:1:1,', ',b:1:1)

else

writeln('kirpich s rajmerami ',x:1:1,',',y:1:1,', ',z:1:1,' ne proydet v otverstie s rajmerami',a:1:1,', ',b:1:1);

  1. Где ставятся знаки препинания? (везде, кроме: перед else после Begin)

Стр 234 № 47

Тема: Программирование ветвящихся алгоритмов. 10 класс.

Цели: с помощью изучения темы: Программирование ветвящихся алгоритмов.

Вопросы по поиску решения задачи:

  1. Что нам дано?

  2. Что нам известно про эти числа (из задачи)

  3. Рассмотреть 1 условие, когда сумма чисел меньше 1. Что нам тогда нужно сделать? (найти наименьшее из этих 3 чисел и заменить его полусуммой 2 других)

  4. Как это записать? (если (x+y+z)<1, то если (x<y) и (x<z),тогда a:=(y+z)/2; если (x>y) и (y<z), тогда a:=(x+z)/2; если (z<y) и (x>z), тогда a:=(y+x)/2).

  5. Рассмотреть 2 условие задачи, когда сумма чисел больше 1. Что в этом случае необходимо сделать? (если x<y, то a:=(y+z)/2; иначе a:=(x+z)/2)

  6. Что будет запрашиваться (что нужно вводить с клавиатуры)? Какого типа будут переменные (4 числа a, x, y, z: вещественные)

  7. К какой конструкции относится задача (Это полная условная конструкция со вложенными неполными ветвлениями)

  8. Какое условие будет проверяться и как с помощью этого оператора можно описать данную задачу? С помощью какого оператора и в каком виде выводится ответ?

Begin

If (x+y+z)<1

then begin

if (x<y)and(x<z) then

begin

a:=(y+z)/2;

writeln('x=',a:1:1,' ,y=',y:1:1,' z=',z:1:1);

end;

if (x>y)and(y<z) then

begin

a:=(x+z)/2;

writeln('x=',x:1:1,' ,y=',a:1:1,' z=',z:1:1);

end;

if (z<y)and(x>z) then

begin

a:=(y+x)/2;

writeln('x=',x:1:1,' ,y=',y:1:1,' z=',a:1:1);

end;

end

else begin

if x<y then begin

a:=(y+z)/2;

writeln('x=',a:1:1,' ,y=',y:1:1,' z=',z:1:1);

end

else begin

a:=(x+z)/2;

writeln('x=',x:1:1,' ,y=',a:1:1,' z=',z:1:1);

end;

end;

Readln;

End.