Тема: Сложные условия. Условный оператор
Цель:
1. Познакомить с возможностью использования сложных условий в условных операторах языка программирования Паскаль.
2. Научить учащихся построению составных условий с использованием логических операций «и», «или».
2. Развить в учащихся внимательность, трудоспособность и заинтересованность.
3. Воспитать в учениках взаимное уважение в коллективе и культурное поведение.
Ход урока
І. Мотивационный этап
1 вариант
1. Составьте программу вычисления y: у=-1/х
2. Даны три числа. Если их произведение меньше 50, то числа увеличьте в 10 раз.
2 вариант
1. Составьте программу вычисления y:
2. Даны три числа. Если их сумма меньше 1, то числа удвойте.
3 вариант
1. Составьте программу вычисления y:
2. Даны два числа х и у (х<>y). Меньшее из чисел замените их полусуммой.
4 вариант
1. Составьте программу вычисления y:
2. Даны два числа Х и У. Замените первое число нулем, если оно меньше или равно второму.
5 вариант
1. Составьте программу вычисления у:
2. Даны два числа Х и У. Удвойте первое число, если оно больше второго, и оба числа, если это не так.
6 вариант
1. Составьте программу вычисления у:
2. Даны три числа. Если их сумма отрицательна, то замените ее абсолютным значением.
ІІ. Операционно-познавательный этап
При сложных условиях применяются логические связки:
And - истинно, когда истинны все составляющие логические выражение
Пример: ((x>=0) and (x<=5)) истинно для x из интервала [0;5] и ложно при x=6
Or - истинно, когда истинно хотя бы одно из логических выражений
Пример: ((a<5) or (a>9)) истинно для a=2 и ложно для a=6
Закрепление:
Уровень А
1. Напишите программу, которая по заданным трем числам определяет, является ли сумма каких- либо двух из них положительной.
Program summa1; Uses crt;
var a,b,с, s1, s2, s3: real;
Begin
ClrScr;
write (' Введите три числа а,b,c='); readln(a,b,c);
s1:=a+b;
s2:=a+c;
s3:=b+c;
if (s1>0) or (s2>0) or (s3>0) then write (‘да’) else write (‘нет’);
readkey;
End.
2. Определите, является ли введеное число двузначным.
Program с1; Uses crt;
var a: integer;
Begin
ClrScr;
write (' Введите целое число а='); readln(a);
if (a>=10) and (a<=99) then write (‘число двузначное’) else write (‘число недвузначное’);
readkey;
End.
Уровень В
1. Занятия в начальных классах отменяются в тех случаях, когда температура воздуха ниже -25 градусов, а также при ветре не мене 7 м/с и температуре ниже -20 градусов. По утренней сводке погоды определите, пойдут ли дети в школу.
Program в1; Uses crt;
var t,v: real;
Begin
ClrScr;
write (' t='); readln(t);
if (t<=-25) then write (‘Не идут’) else
if (t<=-20) then
begin
write (‘v=’);
readln(v);
if (v>7) then write (‘Не идут’)
end
else write (‘идут’);
readkey;
End.
2. Определите, имеется ли среди чисел a, d,c хотя бы одна пара взаимно противоположных чисел.
Program f2; Uses crt;
var a,b,с: real;
Begin
ClrScr;
write (' а,b,c='); readln(a,b,c);
write (‘Взаимно противоположные числа есть?’);
if (a=-b) or (a=-c) or (b=-c) then write (‘да’) else write (‘нет’);
readkey;
End.
Уровень С
1. Для произвольных a,b напишите программу решения
уравнения:
Program f3; Uses crt;
Label 1;
var a,b,x: real;
Begin
ClrScr;
write (' а,b='); readln(a,b);
if (a=0) and (b=0) then
begin
write (‘x-любое’);
goto l;
end;
writeln (‘x1=0’);
if (a=0) and (b< >0) then goto 1;
x:=-b/a;
if x<=0 then goto 1;
writeln (‘x2=’,x:3:6);
writeln (‘x3=-’,x:3:6);
1:readkey;
End.
2. В многоэтажном доме N этажей и один подъезд. На каждом этаже расположено по три квартиры. Лифт настроен так, что может останавливаться только на нечетных этажах. Человек заходит в лифт и набирает номер нужной квартиры М. На какой этаж должен доставить лифт пассажира?
Program f4; Uses crt;
Label 1;
var n,m,d,n1,n2: integer;
Begin
ClrScr;
write (' Введите количество этажей в доме:n='); read (n);
write (' Введите номер квартиры:m='); read (m);
d:=mdiv3;
n1:=-d; n2:=0;
if (dmod2)=0 then
begin
n1:=d+1;
n2:=d-1;
end;
if (n1<=n) and (n2>=1) then
begin
write (' Лифт остановиться на ‘,n1,’ или на ‘,n2,’этаже’');
goto 1;
end;
if n1>n then write (‘Лифт остановиться на ’,n2 ,’этаже‘);
if n2<1 then write (‘Лифт остановиться на ’,n1 ,’этаже‘);
1:readkey;
End.
ІІІ. Подведение итогов, выставление оценок
IV. Рефлексия:
Оценка содержания урока: Занимательно, интересно, полезно
Оценка деятельности на уроке: Запутался, удивился, убедился, осознал, принял решение
Оценка внутреннего состояния на уроке: Тревожное, приподнятое, отличное
V. Домашнее задание: ответить на тест.
1. Укажите правильный вариант использования условного оператора.
A. IF <условие> THEN <оператор1> ELSE <оператор2>;
B. IF <условие> THEN <серия операторов1>; ELSE <серия операторов2>;
C. THEN begin <серия операторов1> end IF <условие> ELSE begin <серия операторов2> end;
D. THEN <серия операторов1> ELSE <серия операторов2> IF <условие>;
2. Укажите правильный вариант использования неполного ветвления.
A. THEN <серия операторов1>; ELSE <серия операторов2>;
B. IF <условие> ELSE begin <серия операторов2> end;
C. IF <условие> THEN <оператор>;
D. ELSE <серия операторов2> IF <условие>;
3. Укажите значение связующего слова AND.
A. Должны выполняться оба условия, связанные словом AND.
B. Достаточно выполнения только первого из связанных словом AND условий.
C. Должно выполняться одно из связанных словом AND условий.
D. Выполнения первого условия не должно противоречить выполнению второго условия.
4. Выберите правильную запись математического условия 1≤a<100 на языке Pascal.
A. If (a≥1) AND (a<100).
B. If (a≥1) OR (a<100).
C. If (a<=1) AND (a<100).
D. If (a>=1) AND (a<100).
5. Что будет выведено на экран после выполнения фрагмента программы:
begin
a:=4;
if a>4 then a:=5 else a:=1;
writeln(a) ;
end.
A. a.
B. 1.
C. 3.
D. 5.
6. Что будет выведено на экран после выполнения фрагмента программы:
begin
x:=1 ;
if x<>5 then y:=6 else y:=0;
writeln(y) ;
end.
A. 1.
B. 6.
C. 0.
D. Y.
7. Что будет выведено на экран после выполнения фрагмента программы:
begin
a:=12;
if (a>10) and (a<12) then n: =a+5 else n: =a-1;
writeln(n) ;
end.
A. 11.
B. 12.
C. 16.
D. 17.
8. Что будет выведено на экран после выполнения фрагмента программы:
Begin
a: =12;
if (a>10) or (a<12) then n: =a+5 else n: =a-1;
writeln(n) ;
end.
A. 11.
B. 12.
C. 16.
D. 17.
9. В качестве языка Pascal нельзя использовать:
A. SR;
B. OR;
C. MR;
D. AR;
10. Дан фрагмент программы, в котором пропущено условие:
If (x>0) and (_) then A: =X else A: =Y*2;
Вставьте условие так, чтобы при X=2, Y=‒1 результатом выполнения алгоритма стало значение A=‒2.
A. X<Y.
B. X<10.
C. Y<0.
D. X>Y.
Материалы на данной страницы взяты из открытых источников либо размещены пользователем в соответствии с договором-офертой сайта. Вы можете сообщить о нарушении.