Разделы презентаций


Программирование ветвящихся алгоритмов

Содержание

АЛГОРИТМИЧЕСКАЯ СТРУКТУРА «ВЕТВЛЕНИЕ»Форма организации действий, при которых в зависимости от выполнения некоторого условия происходит одна или другая последовательность действий, называется ветвлением.На языке программирования Pascal ветвление кодируется с использованием условного оператора if

Слайды и текст этой презентации

Слайд 1Программирование ветвящихся алгоритмов
Условный оператор

Программирование ветвящихся алгоритмовУсловный оператор

Слайд 2АЛГОРИТМИЧЕСКАЯ СТРУКТУРА «ВЕТВЛЕНИЕ»
Форма организации действий, при которых в зависимости от

выполнения некоторого условия происходит одна или другая последовательность действий, называется

ветвлением.
На языке программирования Pascal ветвление кодируется с использованием условного оператора if … then … else.
АЛГОРИТМИЧЕСКАЯ СТРУКТУРА «ВЕТВЛЕНИЕ»Форма организации действий, при которых в зависимости от выполнения некоторого условия происходит одна или другая

Слайд 31) Полная форма
if then else ;
2)

Неполная форма
if then ;

Операторы 1 и 2 могут быть

простыми или составными.
Если условие принимает значение true (истина), то выполняется оператор 1, если – false (ложь), то оператор 2.

ФОРМЫ УСЛОВНОГО ОПЕРАТОРА

1) Полная формаif then else ;2) Неполная формаif then ;Операторы 1 и 2 могут быть простыми или

Слайд 4if then else ;
оператор 2
да
нет
оператор 1
условие
ПОЛНАЯ

ФОРМА УСЛОВНОГО ОПЕРАТОРА
оператор 2
да
нет
оператор 1
условие

if then else ;оператор 2данетоператор 1условиеПОЛНАЯ ФОРМА УСЛОВНОГО ОПЕРАТОРАоператор 2данетоператор 1условие

Слайд 5if then ;
НЕПОЛНАЯ ФОРМА УСЛОВНОГО ОПЕРАТОРА
да
нет
оператор
условие

if then ;НЕПОЛНАЯ ФОРМА УСЛОВНОГО ОПЕРАТОРАданетоператорусловие

Слайд 6простое составное
операции отношений логические операции
= равно not не
< меньше and и
> больше or или
= больше или равно
не равно
Примеры: 1) if

(n>0) then n:=n+2;
2) if (n

ВЫРАЖЕНИЙ)
простое								составноеоперации отношений					логические операции=		равно									not	не<		меньше									and	и>		больше									or		или=	больше или равно	не равноПримеры: 1) if (n>0) then n:=n+2;2) if (n

Слайд 71) a:=3; b:=2;
if (a>b) then d:=a else d:=b;
Ответ:
3
2) a:=-3;
b:=2;
if

(a>b) then d:=a else d:=b;
Ответ:
2






КАКОЕ ЗНАЧЕНИЕ БУДЕТ ИМЕТЬ ПЕРЕМЕННАЯ

D ПОСЛЕ ВЫПОЛНЕНИЯ СЛЕДУЮЩИХ ОПЕРАТОРОВ:
1) a:=3; b:=2;if (a>b) then d:=a else d:=b;Ответ:	 32) a:=-3;b:=2;if (a>b) then d:=a else d:=b;Ответ: 		2КАКОЕ ЗНАЧЕНИЕ

Слайд 83) a:=2; b:=3;
d:=5;
if (a>b) then d:=a else
begin
d:=b;
d:=d+a;
end;
Ответ:
5





КАКОЕ ЗНАЧЕНИЕ БУДЕТ

ИМЕТЬ ПЕРЕМЕННАЯ D ПОСЛЕ ВЫПОЛНЕНИЯ СЛЕДУЮЩИХ ОПЕРАТОРОВ:

3) a:=2; b:=3;d:=5;if (a>b) then d:=a else			begin				d:=b;				d:=d+a;			end;Ответ:		5 КАКОЕ ЗНАЧЕНИЕ БУДЕТ ИМЕТЬ ПЕРЕМЕННАЯ D ПОСЛЕ ВЫПОЛНЕНИЯ СЛЕДУЮЩИХ ОПЕРАТОРОВ:

Слайд 9СОСТАВИТЬ БЛОК-СХЕМУ И НАПИСАТЬ ТЕКСТ ПРОГРАММЫ ДЛЯ РЕШЕНИЯ ЗАДАЧ:
1) Даны

два целых числа. Найти наименьшее из них.
2) Ввести число. Если

оно неотрицательно, вычесть из него 30, в противном случае прибавить к нему 70.
3) Ввести целое число и определить четное оно или нет.

СОСТАВИТЬ БЛОК-СХЕМУ И НАПИСАТЬ ТЕКСТ ПРОГРАММЫ ДЛЯ РЕШЕНИЯ ЗАДАЧ:1) Даны два целых числа. Найти наименьшее из них.2)

Слайд 10начало
а

a, b: ');
readln(a, b);
if a

min := a
else
min := b;
writeln('minimum = ', min);
end.

ДАНЫ ДВА ЦЕЛЫХ ЧИСЛА. НАЙТИ НАИМЕНЬШЕЕ ИЗ НИХ

Решение задач

началоа

Слайд 11ВВЕСТИ ЧИСЛО. ЕСЛИ ОНО НЕОТРИЦАТЕЛЬНО, ВЫЧЕСТЬ 30, ИНАЧЕ ПРИБАВИТЬ 70


начало
a:=a + 70
да
нет
a:=a - 30
ввод a
вывод a
конец
program zadanie2;
var
a:

integer;
begin
write('Vvedite a: ');
readln(a);
if a >= 0 then
a := a - 30
else
a := a + 70;
writeln(‘a = ', a);
end.

а>0

Решение задач

ВВЕСТИ ЧИСЛО. ЕСЛИ ОНО НЕОТРИЦАТЕЛЬНО, ВЫЧЕСТЬ 30, ИНАЧЕ ПРИБАВИТЬ 70 началоa:=a + 70данетa:=a - 30ввод aвывод aконецprogram

Слайд 12program zadanie3;
var a: integer;
begin
write(Введите a: ');
readln(a);
if (a

mod 2 = 0) then
writeln(‘Да')
else

writeln(‘Нет');
end.

да

нет

ввод a

конец

вывод ‘Да’

вывод ‘Нет’

начало

ВВЕСТИ ЦЕЛОЕ ЧИСЛО И ОПРЕДЕЛИТЬ ЧЕТНОЕ ОНО ИЛИ НЕТ

a mod 2 =0

Решение задач

program zadanie3;var a: integer;begin write(Введите a: '); readln(a); if (a mod 2 = 0) then  writeln(‘Да')

Слайд 13Операция Div используется для нахождения частного от деления
   Примеры:
25 div

20 = 1;
20 div 25 = 0;
39 div 5 =

7;
158 div 3 = 52.
Операция Mod используется для нахождения остатка от деления
    Примеры:
25 mod 20 = 5;
20 mod 25 = 0;
39 mod 5 = 4;
158 mod 3 = 2.

Операции Div и Mod

Операция Div используется для нахождения частного от деления   Примеры:25 div 20 = 1;20 div 25 = 0;39

Слайд 14ЗАДАЧИ ДЛЯ САМОСТОЯТЕЛЬНОГО РЕШЕНИЯ
1) Ввести 2 числа. Если их

произведение отрицательно, умножить его на 2 и вывести на экран,

в противном случае увеличить его в 1,5 раза и вывести на экран.
Ввести число. Если оно четное, разделить его на 4, в противном случае умножить на 3
div деление нацело (25 div 10=2)
mod - нахождение остатка (4 mod 2=0).
3) Даны целые числа m, n. Если числа не равны, то заменить каждое из них одним и тем же числом, равным большему из исходных, а если равны, то заменить числа нулями.

ЗАДАЧИ ДЛЯ САМОСТОЯТЕЛЬНОГО РЕШЕНИЯ1)  Ввести 2 числа. Если их произведение отрицательно, умножить его на 2 и

Слайд 15program zadanie1;
var
a,b: real;
p: real;
begin
write('Введите a, b:

');
readln(a, b);
if a*b


else
p:=1.5*a*b;
writeln('произв = ', p);
end.

program zadanie2;
var a:integer;
begin
writeln('Введите a=');
readln(a);
if (a mod 2)=0 then writeln(a div 4) else writeln(a*3);
end.

program zadanie3;
var m,n:integer;
begin
readln(m,n);
if m<>n then
begin
if m>n then
n:=m
else
m:=n;
end
else
begin
m:=0;
n:=0;
end;
writeln(m,' ',n);
end.

program zadanie1;var  a,b: real; p: real;begin write('Введите a, b: '); readln(a, b); if a*b n thenn:=melsem:=n;endelsebeginm:=0;n:=0;end;writeln(m,'

Слайд 16Задача 1 . Найти сумму цифр двухзначного числа.
program Sumoftwo;
var Number,Num1,Num2,Sum: integer;
begin
write('Введите

двухзначное число: ');
read(Number); { Возьмем число 25 }
Num1 := Number

div 10; { 25 div 10 = 2 }
Num2 := Number mod 10; { 25 mod 10 = 5 }
Sum := Num1 + Num2; { 2 + 5 = 7 }
write('Сумма двух чисел -- ',Sum);
end.
Задача 1 . Найти сумму цифр двухзначного числа.program Sumoftwo;var Number,Num1,Num2,Sum: integer;beginwrite('Введите двухзначное число: ');read(Number); { Возьмем число 25

Слайд 17Задача 2 . Найти сумму цифр трехзначного числа.

Div нахождение частного от

деления
Mod нахождение остатка от деления
Возьмем число 255
Сумма цифр этого числа

равна
2+5+5=12
255div100=2 (целая часть, т.е 255:100=2,55)
255mod10=5 (дробная часть,т.е 255:10=25,5)
255div10mod10=5 (255div10=25-целое от 25,5
25mod10=5, т.к. от 2,5 берем дробную часть, т.е.5)
Задача 2 . Найти сумму цифр трехзначного числа.Div нахождение частного от деленияMod нахождение остатка от деленияВозьмем число 255Сумма

Слайд 19program Sumoftree;
var Number,Sum: integer;
begin
write('Введите трехзначное число: ');
read(Number); { Возьмем число

255 }
Sum := Number div 100 + Number mod 10

+ Number div 10 mod 10; { 255 div 100 + 255 mod 10 + 255 div 10 mod 10 = 12 }
write('Сумма трёх чисел -- ',Sum);
end.

Программа для решения задачи нахождения суммы цифр трехзначного числа.

program Sumoftree;var Number,Sum: integer;beginwrite('Введите трехзначное число: ');read(Number); { Возьмем число 255 }Sum := Number div 100 +

Слайд 20Математические функции в Паскаль
Функция - это подпрограмма, которая возвращает какое-либо значение.

Математические функции в ПаскальФункция - это подпрограмма, которая возвращает какое-либо значение.

Слайд 21Математические процедуры
Преобразование типов
Процедура - это подпрограмма, которая сразу изменяет значения и

выполняет операции с числами, операторами и т.д.

Математические процедурыПреобразование типов Процедура - это подпрограмма, которая сразу изменяет значения и выполняет операции с числами, операторами и

Слайд 22Ветвление. Оператор выбора CASE (в случае)
позволяет сделать выбор из произвольного

числа имеющихся вариантов

CASE N OF N – переключатель;
M1:оператор1;
М2:оператор2;

Mi –метки, возможные значения
….. переключателя( переключатель и метки
Мn:операторn; должны быть одного типа, кроме REAL.)

ELSE оператор; Часть ELSE может отсутствовать
END;
 
Оператор CASE передает управление тому оператору, значение метки Мi которого совпало со значением переключателя N, а затем – на следующий за END оператор. Если N не совпало ни с одним из значений Мi, то выполняется оператор следующий за ELSE.

Ветвление. Оператор выбора CASE (в случае)позволяет сделать выбор из произвольного числа имеющихся вариантовCASE N OF					  N

Слайд 23Задача case1 . Преобразовать целое число к словесному виду

Begin   writeln(‘Введите

цифру ‘);    readln(a);   if (a4)     then       writeln (‘Это

число не является искомой цифрой‘)     else       case a of         0 : writeln (‘ноль‘);         1 : writeln (‘один‘);         2 : writeln (‘два‘);         3 : writeln (‘три‘);         4 : writeln (‘четыре‘);         end;   readln; End.

В случае, если переменная а равна 0– вывести «Ноль»;

В случае, если переменная равна 1 – вывести «Один»;

В случае, если переменная равна 2 – вывести «Два»
И т.д.

Задача case1 . Преобразовать целое число к словесному видуBegin   writeln(‘Введите цифру ‘);    readln(a);   if

Слайд 24 var { Прогр. определяет день недели

по введенному номеру }
n: integer;
begin

writeln('Введите целое число от 1 до 7');
write('-> ');
readln(n);
case n of
1: writeln('Понедельник');
2: writeln ('Вторник');
3: writeln ('Среда');
4: writeln ('Четверг');
5: writeln ('Пятница');
6: writeln ('Суббота');
7: writeln ('Воскресенье');
else writeln ('Вы неправильно ввели номер');
end;
readln;
end.

Задача case2. Напишите программу с помощью которой можно определить название дня недели по введенному номеру

В случае, если переменная равна 1– вывести «Понедельник»;

В случае, если переменная равна 2 – вывести «Вторник»;

В случае, если переменная равна 3 – вывести «Среда»
И т.д.

var    { Прогр. определяет день недели по введенному номеру }n: integer; begin

Слайд 25var   c: integer;
  begin
  read(c);  
case

c of    
1..89: writeln('Остроугольный');    
90: writeln('Прямоугольный');

   
91..180: writeln('Тупоугольный');  
end;
end.

Задача case3. Написать алгоритм, классифицирующий треугольник

В случае, если переменная равна от 1 до 89 – вывести «Остроугольный»;

В случае, если переменная равна 90 – вывести «Прямоугольный»;

В случае, если переменная равна от
91 до 180 – вывести «Тупоугольный»

var   c: integer;   begin   read(c);   case c of     1..89: writeln('Остроугольный');  

Слайд 26Задание на дом:
Задача case3. Написать программу, которая запрашивает номер дня

недели и выводит одно из сообщений: «Это рабочий день», «Это

суббота», «Это воскресенье» или «Такого дня недели нет».

Задача case4. Написать программу, которая запрашивает номер месяца и выводит его название или сообщение, что такого месяца не существует.

Задача case5. Напишите программу, которая по введенному числу из промежутка 0..24, определяет время суток.



Задание на дом:Задача case3. Написать программу, которая запрашивает номер дня недели и выводит одно из сообщений: «Это

Обратная связь

Если не удалось найти и скачать доклад-презентацию, Вы можете заказать его на нашем сайте. Мы постараемся найти нужный Вам материал и отправим по электронной почте. Не стесняйтесь обращаться к нам, если у вас возникли вопросы или пожелания:

Email: Нажмите что бы посмотреть 

Что такое TheSlide.ru?

Это сайт презентации, докладов, проектов в PowerPoint. Здесь удобно  хранить и делиться своими презентациями с другими пользователями.


Для правообладателей

Яндекс.Метрика