СДЕЛАЙТЕ СВОИ УРОКИ ЕЩЁ ЭФФЕКТИВНЕЕ, А ЖИЗНЬ СВОБОДНЕЕ

Благодаря готовым учебным материалам для работы в классе и дистанционно

Скидки до 50 % на комплекты
только до 30.06.2025

Готовые ключевые этапы урока всегда будут у вас под рукой

Организационный момент

Проверка знаний

Объяснение материала

Закрепление изученного

Итоги урока

Простые и составные условия (основы алгоритмизации)

Категория: Информатика

Нажмите, чтобы узнать подробности

Просмотр содержимого документа
«Простые и составные условия (основы алгоритмизации)»

Основы алгоритмизации и программирования Простые и составные условия Оператор ветвления Составной оператор Вечерний Лицей 9 класс

Основы алгоритмизации и программирования

Простые и составные условия

Оператор ветвления

Составной оператор

Вечерний Лицей

9 класс

Задача Написать программу, которая определит является ли введенное число x  положительным или нет

Задача

  • Написать программу, которая определит является ли введенное число x положительным или нет
Определение исходных данных Определение исходных данных:  переменная x (введенное число)

Определение исходных данных

Определение исходных данных: переменная x (введенное число)

0 " width="640"

Составление алгоритма решения задачи

  • Ввод исходных данных
  • ?
  • Вывод результата

Вводить нужно исходные данные, то есть переменную x

Как записать условие того, что число положительное и в какой части программы это вставить?

Выводить нужно результат

x 0

0; Здесь должны быть изменения Что выдаст такая программа? " width="640"

Написание программы

Рассмотрим программу

var x,a:real;

begin

writeln('введи значение x=');

readln(x);

a:=2*x/(sqr(x)+4);

writeln('a=',a);

end .

a:=x 0;

Здесь должны быть изменения

Что выдаст такая программа?

Написание программы

Написание программы

Определение типов переменных переменную x можно описать как real переменная a должна иметь тип boolean

Определение типов переменных

  • переменную x можно описать как real
  • переменная a должна иметь тип boolean
Тестирование программы Запустите свою программу и проверьте правильность работы для значений x = 3  и x = -1 x 3 a -1 a = True a = False

Тестирование программы

  • Запустите свою программу и проверьте правильность работы для значений x = 3 и x = -1

x

3

a

-1

a = True

a = False

3; a := 2+2*2=8; True False " width="640"

Тип данных boolean

Логическая величина, которая может принимать два значения:

TRUE

FALSE

Наример:

Пусть переменная a описана как boolean :

  • a := 73;
  • a := 2+2*2=8;

True

False

(больше) = (больше либо равно) (не равно) Например : a b 5+x = 3 sqrt(x) " width="640"

Простые и составные условия

Простое условие – это два выражения, связанные одним из знаков отношений:

= (равно)

(больше)

= (больше либо равно)

(не равно)

Например : a b 5+x = 3 sqrt(x)

Обратная задача

Обратная задача

Условный оператор if  Ветвление в Паскале реализуется с помощью условного оператора if , который позволяет выбрать для выполнения один из предлагаемых вариантов вычислений или не выбрать ни одного Неполная команда ветвления if  p  then s ; Полная команда ветвления if  p  then  s1  else  s2 ;

Условный оператор if

Ветвление в Паскале реализуется с помощью условного оператора if , который позволяет выбрать для выполнения один из предлагаемых вариантов вычислений или не выбрать ни одного

Неполная команда ветвления

if p then s ;

Полная команда ветвления

if p then s1 else s2 ;

Изменение программы

Изменение программы

Проверка других условий Пусть нужно проверить другое условие и выдать сообщение в зависимости от условия. Для этого можно изменить работающую программу Продемонстрируем это на примере Вводятся два числа, x и y . Проверить можно ли делить число x на число y . Вводятся два числа, x и y . Проверить можно ли делить число x на число y . Делить на 0  нельзя!

Проверка других условий

  • Пусть нужно проверить другое условие и выдать сообщение в зависимости от условия. Для этого можно изменить работающую программу
  • Продемонстрируем это на примере
  • Вводятся два числа, x и y . Проверить можно ли делить число x на число y .
  • Вводятся два числа, x и y . Проверить можно ли делить число x на число y .

Делить на 0 нельзя!

Этапы решения задачи В разобранной задаче В новой задаче Определение исходных данных переменная x переменные x и y Определение результатов Сообщения «Число положительное» или «Число не положительное» Сообщения «Делить можно» или «делить нельзя» Составление алгоритма решения задачи Ввод исходных данных Проверка условия. Вывод результата. Ввод исходных данных Проверка условия. Вывод результата. Изменяются сообщения и условие в команде ветвления

Этапы решения задачи

В разобранной задаче

В новой задаче

Определение исходных данных

переменная x

переменные x и y

Определение результатов

Сообщения «Число положительное» или «Число не положительное»

Сообщения «Делить можно» или «делить нельзя»

Составление алгоритма решения задачи

  • Ввод исходных данных Проверка условия. Вывод результата.
  • Ввод исходных данных
  • Проверка условия.
  • Вывод результата.

Изменяются сообщения и условие в команде ветвления

Изменения программы Сохранить программу под другим именем Заменить имена переменных в описании Изменить исходные данные Изменить условие в команде ветвления Изменить сообщения в результате

Изменения программы

  • Сохранить программу под другим именем
  • Заменить имена переменных в описании
  • Изменить исходные данные
  • Изменить условие в команде ветвления
  • Изменить сообщения в результате
0 then Writeln( 'Число положительное') else Writeln( 'Число не положительное'); End . x, y: integer; значения x и y'); (x, y); y = 0 ('Делить нельзя'); ('Делить можно'); " width="640"

Изменения программы

Var x: integer;

Begin

Write( 'введите значение x=' );

Readln(x);

if x0 then

Writeln( 'Число положительное')

else

Writeln( 'Число не положительное');

End .

x, y: integer;

значения x и y');

(x, y);

y = 0

('Делить нельзя');

('Делить можно');

Задача Задано положительное число x . Определить, является это число двузначным или нет. Выдать на экран соответствующее сообщение

Задача

Задано положительное число x . Определить, является это число двузначным или нет. Выдать на экран соответствующее сообщение

0 then Writeln( 'Число двузначное' ) else Writeln( 'Число не двузначное' ); End . 9 then Что выдаст такая программа? 17 " width="640"

Написание программы

Здесь должны быть изменения

Var x: integer ;

Begin

Write( 'введите значение x=' );

Readln(x);

if x 0 then

Writeln( 'Число двузначное' )

else

Writeln( 'Число не двузначное' );

End .

9 then

Что выдаст такая программа?

17

Написание программы 17

Написание программы

17

9 ) and (x then Writeln( 'Число двузначное' ) else Writeln( 'Число не двузначное' ); 17 " width="640"

Запись составного условия

if (x 9 ) and (x then

Writeln( 'Число двузначное' )

else

Writeln( 'Число не двузначное' );

17

Простые и составные условия  Составные условия  – это условия, составленные из нескольких выражений сравнения (простых условий), соединенных логическими операциями: or  and  not  В составных условиях выражения сравнения заключаются в круглые скобки  Например : (x+y = 5) and (2*x*sin(x) (x or not (y 17

Простые и составные условия

Составные условия – это условия, составленные из нескольких выражений сравнения (простых условий), соединенных логическими операциями:

or and not

В составных условиях выражения сравнения заключаются в круглые скобки

Например :

(x+y = 5) and (2*x*sin(x)

(x or not (y

17

Таблица истинности составных условий  А, Б – некоторые условия А Б True True А or Б True False А and Б True False False True True True not А False False True False False False False False True True

Таблица истинности составных условий

А, Б – некоторые условия

А

Б

True

True

А or Б

True

False

А and Б

True

False

False

True

True

True

not А

False

False

True

False

False

False

False

False

True

True

Составной оператор Если по одной из ветвей после служебных слов then и(ли) else требуется выполнение более одного оператора, их ограничивают операторными скобками begin … end и рассматривают как составной оператор

Составной оператор

  • Если по одной из ветвей после служебных слов then и(ли) else требуется выполнение более одного оператора, их ограничивают операторными скобками begin … end и рассматривают как составной оператор

Задача Задано число x . Если число четное, то нарисовать на экране зеленый прямоугольник, а если нечетное, то красный круг

Задача

Задано число x . Если число четное, то нарисовать на экране зеленый прямоугольник, а если нечетное, то красный круг

Задача Подключаем  графику Воспользуемся программой, определяющей четность числа uses GraphABC;  var x: integer ; begin  Write( 'введите значение x=' );  Readln(x);  if x mod 2 = 0 then   Writeln( 'Число четное' )   else   Writeln( 'Число нечетное' ); end . rectangle(150, 150, 450, 350) Рисуем  прямоугольник circle(400, 300, 100); Рисуем  круг

Задача

Подключаем графику

Воспользуемся программой, определяющей четность числа

uses GraphABC;

var x: integer ;

begin

Write( 'введите значение x=' );

Readln(x);

if x mod 2 = 0 then

Writeln( 'Число четное' )

else

Writeln( 'Число нечетное' );

end .

rectangle(150, 150, 450, 350)

Рисуем прямоугольник

circle(400, 300, 100);

Рисуем круг

Задача uses graphABC; var x: integer ; begin  write( 'введите значение x = ' );  readln(x);  writeln(x);  if x mod 2 = 0 then  SetBrushColor(clGreen);  Rectangle( 150 , 150 , 450 , 350 );  else  SetBrushColor(clRed);  Circle( 300 , 200 , 100 ); end .

Задача

uses graphABC;

var x: integer ;

begin

write( 'введите значение x = ' );

readln(x);

writeln(x);

if x mod 2 = 0 then

SetBrushColor(clGreen);

Rectangle( 150 , 150 , 450 , 350 );

else

SetBrushColor(clRed);

Circle( 300 , 200 , 100 );

end .

Задача

Задача

Задача В операторе if после слов then и else может стоять ТОЛЬКО ОДНА команда. Если необходимо выполнение нескольких, то их берут в операторные скобки begin end ; Получаем составной оператор

Задача

  • В операторе if после слов then и else может стоять ТОЛЬКО ОДНА команда.
  • Если необходимо выполнение нескольких, то их берут в операторные скобки begin end ;
  • Получаем составной оператор

Задача uses graphABC; var x: integer ; begin  write( 'введите значение x = ' );  readln(x);  writeln(x);  if x mod 2 = 0 then  begin  SetBrushColor(clGreen);  Rectangle( 150 , 150 , 450 , 350 );  end  else  begin  SetBrushColor(clRed);  Circle( 300 , 200 , 100 );  end ; end .

Задача

uses graphABC;

var x: integer ;

begin

write( 'введите значение x = ' );

readln(x);

writeln(x);

if x mod 2 = 0 then

begin

SetBrushColor(clGreen);

Rectangle( 150 , 150 , 450 , 350 );

end

else

begin

SetBrushColor(clRed);

Circle( 300 , 200 , 100 );

end ;

end .

Тестирование задачи Запустите программу и введите значения x = 2 Проверьте, результат должен быть следующим: Запустите программу и введите значения x = 5 Проверьте, результат должен быть следующим:

Тестирование задачи

Запустите программу и введите значения x = 2

Проверьте, результат должен быть следующим:

Запустите программу и введите значения x = 5

Проверьте, результат должен быть следующим:

Задача Написать программу для решения задачи (Заполните пропуски). Заданы два различных числа. Меньшее из них заменить их средним арифметическим этих чисел, а большее их удвоенным произведением

Задача

Написать программу для решения задачи (Заполните пропуски).

Заданы два различных числа. Меньшее из них заменить их средним арифметическим этих чисел, а большее их удвоенным произведением

Var x,_____: integer ; Задача Begin  Write( 'введите значение x = ' );  Readln(x);  Write( 'введите значение __ = ' );  Readln(____);  s := (x+y) div 2 ;  p := 2 *x*y;  if ______ then  begin   x := s;   y := ___  end  else  begin   _________ ;   _________ ;  end ;  writeln( ‘x = ' , ___________________);  End .

Var x,_____: integer ;

Задача

Begin

Write( 'введите значение x = ' );

Readln(x);

Write( 'введите значение __ = ' );

Readln(____);

s := (x+y) div 2 ;

p := 2 *x*y;

if ______ then

begin

x := s;

y := ___

end

else

begin

_________ ;

_________ ;

end ;

writeln( ‘x = ' , ___________________);

End .

Задачи Задано положительное число x . Определить, является это число двузначным или нет. Выдать на экран соответствующее сообщение. Написать программу для решения задачи. Задано число x . Если число четное, то нарисовать на экране зеленый прямоугольник, а если нечетное, то красный круг. Определить принадлежит ли точка А(x, у)  данной области. Ответом должно служить  слово

Задачи

  • Задано положительное число x . Определить, является это число двузначным или нет. Выдать на экран соответствующее сообщение.
  • Написать программу для решения задачи. Задано число x . Если число четное, то нарисовать на экране зеленый прямоугольник, а если нечетное, то красный круг.
  • Определить принадлежит ли точка А(x, у) данной области. Ответом должно служить слово "да" или "нет" .
Задачи Задано число x . Определить, является ли число x кратным 3 или нет. Выдать на экран соответствующее сообщение. Заданы два положительных числа x и y . Определить, верно ли, что x делится на y , без остатка или нет. Выдать на экран соответствующее сообщение. Заданы два положительных числа x и y . Определить, верно ли, что они оба являются двузначными числами. Выдать на экран соответствующее сообщение.

Задачи

  • Задано число x . Определить, является ли число x кратным 3 или нет. Выдать на экран соответствующее сообщение.
  • Заданы два положительных числа x и y . Определить, верно ли, что x делится на y , без остатка или нет. Выдать на экран соответствующее сообщение.
  • Заданы два положительных числа x и y . Определить, верно ли, что они оба являются двузначными числами. Выдать на экран соответствующее сообщение.
Задачи Дано целое положительное число а . Сгенерировать случайное число x из промежутка [‑a; a) . Определить, является ли число x отрицательным числом кратным 5 или нет. Выдать на экран соответствующее сообщение. Заданы два числа x, y . Нарисовать в центре графического окна эллипс c горизонтальным и вертикальным размерами, равными x и y . Если x  300 , или y  220 , то выдать сообщение о том, что эллипс нарисовать нельзя. Дано натуральное число. Проверить, является ли оно пятизначным, у которого первая цифра равна последней, а сумма второй и четвертой является четным числом.

Задачи

  • Дано целое положительное число а . Сгенерировать случайное число x из промежутка [‑a; a) . Определить, является ли число x отрицательным числом кратным 5 или нет. Выдать на экран соответствующее сообщение.
  • Заданы два числа x, y . Нарисовать в центре графического окна эллипс c горизонтальным и вертикальным размерами, равными x и y . Если x 300 , или y 220 , то выдать сообщение о том, что эллипс нарисовать нельзя.
  • Дано натуральное число. Проверить, является ли оно пятизначным, у которого первая цифра равна последней, а сумма второй и четвертой является четным числом.
Задачи Сон  Существует две фазы сна: быстрый и медленный сон. Фазы чередуются. Сначала наступает медленный сон и длится tМ минут. Фаза быстрого сна длится tB минут. Человек, разбуженный в фазу быстрого сна, чувствует себя намного бодрее, чем человек, разбуженный в фазу медленного сна. Определить состояние человека, если он лег спать в h1 часов m1 минут и был разбужен в h2 часов m2 минут. Две окружности  Две окружности на плоскости заданы координатами центров и радиусами. Проверить, лежит ли вторая окружность целиком внутри первой и наоборот.

Задачи

  • Сон Существует две фазы сна: быстрый и медленный сон. Фазы чередуются. Сначала наступает медленный сон и длится tМ минут. Фаза быстрого сна длится tB минут. Человек, разбуженный в фазу быстрого сна, чувствует себя намного бодрее, чем человек, разбуженный в фазу медленного сна. Определить состояние человека, если он лег спать в h1 часов m1 минут и был разбужен в h2 часов m2 минут.
  • Две окружности Две окружности на плоскости заданы координатами центров и радиусами. Проверить, лежит ли вторая окружность целиком внутри первой и наоборот.
Задачи Цифра четыре  Дано целое трехзначное число. Удалить из него цифру 4 , если она есть. Остальные цифры сдвинуть влево. Кирпич  Написать программу, определяющую, пройдет ли кирпич сквозь круглое отверстие. Подобие треугольников  Даны координаты вершин двух треугольников. Определить, являются ли треугольники подобными и если являются, определить коэффициент подобия.

Задачи

  • Цифра четыре Дано целое трехзначное число. Удалить из него цифру 4 , если она есть. Остальные цифры сдвинуть влево.
  • Кирпич Написать программу, определяющую, пройдет ли кирпич сквозь круглое отверстие.
  • Подобие треугольников Даны координаты вершин двух треугольников. Определить, являются ли треугольники подобными и если являются, определить коэффициент подобия.
Задачи Счастливый билет  В 20 веке в СССР билеты на все виды транспорта имели четырехзначный номер. Билет считался «счастливым», если суммы двух левых и двух правых цифр числа были равны. Проверить, является ли билет счастливым. Задача жестянщика  Можно ли из круглой заготовки вырезать две прямоугольные пластины? Необходимые размеры ввести.

Задачи

  • Счастливый билет В 20 веке в СССР билеты на все виды транспорта имели четырехзначный номер. Билет считался «счастливым», если суммы двух левых и двух правых цифр числа были равны. Проверить, является ли билет счастливым.
  • Задача жестянщика Можно ли из круглой заготовки вырезать две прямоугольные пластины? Необходимые размеры ввести.


Скачать

Рекомендуем курсы ПК и ППК для учителей

Вебинар для учителей

Свидетельство об участии БЕСПЛАТНО!