Алгоритмические структуры Решение задач Искандарова А.Р. учитель информатики МБОУ СОШ 18 г.Уфа.

Презентация:



Advertisements
Похожие презентации
Цикл с параметром Искандарова А.Р. учитель информатики МБОУ СОШ 18 г. Уфа.
Advertisements

Программирование циклов Операторы цикла Искандарова А.Р. учитель информатики МБОУ СОШ 18 г. Уфа.
Pascal Алгоритмы циклической структуры, программирование на языке Pascal 9 класс.
Программирование ветвящихся алгоритмов Условный оператор Искандарова А.Р. учитель информатики МБОУ СОШ 18 г. Уфа.
Алгоритмические структуры 1.Линейный 2.Ветвление 3.Цикл.
1 Программирование на языке Паскаль © К.Ю. Поляков, ВведениеВведение 2.ВетвленияВетвления 3.Сложные условияСложные условия 4.ЦиклыЦиклы 5.Циклы.
Алгоритмические структуры. Алгоритм Алгоритм - понятное и точное предписание исполнителю выполнить конечную последовательность команд, приводящую от исходных.
1 Программирование на языке Паскаль Тема 2. Ветвления © К.Ю. Поляков,
Алгоритмическая структура «Ветвление» Тема урока.
PROGRAM VAR READLN IF THEN : REALA, B, C, D () ; :=:= BIT3 ; A, B, C ; END. ( A>=B ) and ( A>=C ) D BEGIN D : = A начало да нет A B и A С конец ввод a,
1 Программирование на языке Паскаль Ветвления. 2 Разветвляющиеся алгоритмы Задача. Ввести два целых числа и вывести на экран наибольшее из них. Идея решения:
Программирование на языке Паскаль Тема 2. Ветвления 1.
АЛГОРИТМ ВЕТВЛЕНИЯ ОПЕРАТОР ВЕТВЛЕНИЯ. Какая задача решается по этой программе? Program Z1: Var a,b,c: integer; Begin Write ( vv a,b:); Read (a,b); C:=(a+b)*(b-a);
Знакомство с языком Паскаль Структура программы Ветвление на Паскале Циклические программы Пример линейной программы Пример программы с ветвлением Пример.
Программирование разветвленных алгоритмов на Паскале Программное управление работой компьютера Домашнее задание: §36, §37, §38.
Твельнева Т.А. МОУ СОШ 1 Урок информатики в 9 классе.
Условный оператор (ветвление) (урок 5). Ветвление Если то иначе кон If then begin end else begin end;
Разветвляющиеся алгоритмы. Кондрина А.В. учитель информатики и ИКТ.
1 Программирование на языке Паскаль Тема 2. Ветвления.
Урок по теме: «Условный оператор» Автор: Алексеева Е.В., Учитель информатики и ИКТ МОУ «Сланцевская СОШ 3» 2/1/2014.
Транксрипт:

Алгоритмические структуры Решение задач Искандарова А.Р. учитель информатики МБОУ СОШ 18 г.Уфа

Вопросы для повторения: Назовите базовые алгоритмические структуры. Следование, ветвление, цикл Следование – это … линейная последовательность действий Ветвление – это … выбор одной из двух серий действий с выходом на общее продолжение Цикл – это … повторение серии действий по условию

Задание 1 Нарисуйте блок-схемы и напишите на языке программирования Паскаль два варианта алгоритма решения задачи: выбрать из двух числовых величин наибольшее значение. Первый вариант – с полным ветвлением, второй вариант – с неполным ветвлением.

Полное ветвление начало ввод a, b c:=a a>b нет вывод c конец да c:=b

Полное ветвление начало ввод a, b c:=a a>b нет вывод c конец да c:=b Program max1; var a,b,c: integer; begin read(a,b); if (a>b) then c:=a else c:=b; writeln('Наибольшее число=',c); end.

Неполное ветвление начало ввод a, b c:=a a>b нет вывод S конец да c:=b

Неполное ветвление начало ввод a, b c:=a a>b нет вывод c конец да c:=b Program max2; var a,b,c: integer; begin read(a,b); c:=b; if (a>b) then c:=a; writeln('Наибольшее число=',c); end.

Задание 2 Нарисуйте блок-схемы и напишите на языке программирования Паскаль два варианта алгоритма решения задачи: выбрать из трех числовых величин наименьшее значение. Первый вариант – с вложенными ветвлениями, второй вариант – с последовательными ветвлениями.

Вложенные ветвления начало ввод a, b,c d:=a a<b нет вывод d конец да a<cb<c d:=cd:=bd:=c да нет

Вложенные ветвления начало ввод a, b,c d:=a a<b - вывод d конец a<cb<c d:=cd:=bd:=c Program min1; var a,b,c,d: integer; begin read(a,b,c); if (a<b) then if (a<c)then d:=a else d:=c else if (b<c) then d:=b else d:=c; writeln('Наименьшее число=',d); end

Последовательные ветвления начало ввод a,b,c d:=a (a<b)and(a<c) нет вывод d конец да d:=b (b<a)and(b<c) нет да d:=c (c<a)and(c<b) нет да

Последовательные ветвления начало ввод a,b,c d:=a (a<b)and(a<c) нет вывод d конец да d:=b (b<a)and(b<c) нет да d:=c (c<a)and(c<b) нет да Program min2; var a,b,c,d: integer; begin read(a,b,c); if (a<b)and(a<c) then d:=a; if (b<a) and (b<c) then d:=b; if (c<a) and (c<b) then d:=c; writeln('Наименьшее число=',d); end.

Задание 3 Для данного натурального числа N требуется вычислить сумму: S=1+1/2+1/3+…+1/N. Постройте блок-схемы и напишите программы, используя два варианта алгоритма: с циклом-до и с циклом-пока.

Найти сумму S=1+1/2+1/3+…+1/N с циклом-до начало ввод N S:=0 i:=1 S:=S+1/i i:=i+1 i>N нет вывод S конец да

Найти сумму S=1+1/2+1/3+…+1/N с циклом-до начало ввод N S:=0 i:=1 S:=S+1/i i:=i+1 i>N нет вывод S конец да var i, N: integer; S: real; begin readln(N); S:=0; i:=1; repeat S:=S+1/i; i:=i+1 until (i>N); writeln('S=',S:5:3); end.

Найти сумму S=1+1/2+1/3+…+1/N с циклом-пока начало ввод N S:=0 i:=1 S:=S+1/i i:=i+1 i<=N нет вывод S конец да

Найти сумму S=1+1/2+1/3+…+1/N с циклом-пока начало ввод N S:=0 i:=1 S:=S+1/i i:=i+1 i<=N нет вывод S конец да var i, N: integer; S: real; begin readln(N); S:=0; i:=1; while (i<=N) do begin S:=S+1/i; i:=i+1; end; writeln('S=',S:5:3); end.

Задание 4 Какую структуру будет иметь алгоритм решения следующей задачи? Дано целое положительное число N. Если N – четное, то вычислить N!=1·2·3·…·N. Если N – нечетное, то вычислить сумму: 1+2+…+ N. Составьте блок-схему алгоритма решения и опишите его на языке Паскаль.

Задание 4 начало ввод N i:=1; S:=0; P:=1 N mod 2=0 нет вывод S конец да i<=N P:=P*i i:=i+1 i<=N S:=S+i i:=i+1 вывод P да нет N mod 2<>0 да нет

Задание 4 var N, i, P, S: integer; begin read(N); i:=1; P:=1; S:=0; if (N mod 2 = 0) then begin while (i<=N) do begin P:=P*i; i:=i+1; end; writeln(N,'!=',P); end; if (n mod 2 <> 0) then begin while (i<=N) do begin S:=S+i; i:=i+1; end; writeln(' ',N,'=',S); end; end.

Использованная литература Информатика. Базовый уровень: учебник для 10 класса / И.Г. Семакин, Е.К. Хеннер, Т.Ю. Шеина. – М. : БИНОМ. Лаборатория знаний, Информатика. Задачник-практикум в 2 т. / Под ред. И.Г. Семакина, Е.К. Хеннера: Том 1. – М. : БИНОМ. Лаборатория знаний, 2012.