Главная страница

алгоритмы_решения задач. Решение задач Искандарова А. Р. учитель информатики мбоу сош 18 г. Уфа


Скачать 170.75 Kb.
НазваниеРешение задач Искандарова А. Р. учитель информатики мбоу сош 18 г. Уфа
Анкоралгоритмы_решения задач.pdf
Дата21.04.2017
Размер170.75 Kb.
Формат файлаpdf
Имя файлаalgoritmy_reshenia_zadach.pdf
оригинальный pdf просмотр
ТипРешение
#18589
Каталогvarvarama

С этим файлом связано 17 файл(ов). Среди них: Shpargalka_po_khimii_Kopylova_N_A_2012_-94s.pdf, Khimia_Ves_kurs_shkoln_progr_v_skhemakh_i_tablitsakh_2007_-173s., algoritmy_reshenia_zadach.pdf, С4-эволюция.docx, zadachi-linejnogo-programmirovaniya.pdf, Biologia_zadania_ZE_14_sayt_1.pdf и ещё 7 файл(а).
Показать все связанные файлы

Алгоритмические структуры
Решение задач
Искандарова А.Р.
учитель информатики
МБОУ СОШ №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

Вложенные ветвления начало ввод a, b,c d:=a a- вывод d конец aProgram min1;
var a,b,c,d: integer;
begin
read(a,b,c);
if (athen

if (athen
d:=a
else d:=c
else
if (bthen d:=b
else d:=c
;
writeln('Наименьшее число=',d);
end.
+
+
+
-
-

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

Последовательные ветвления начало ввод a,b,c d:=a
(a(b(cProgram min2;
var a,b,c,d: integer;
begin
read(a,b,c);
if (aand(athen d:=a;
if (band (bthen d:=b;
if (cand (cthen 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('1+2+...+',N,'=',S);
end;
end.

Использованная литература

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

Информатика. Задачник
- практикум в 2 т. /
Под ред. И.Г. Семакина, Е.К. Хеннера: Том
1.

М. : БИНОМ. Лаборатория знаний,
2012.

перейти в каталог файлов
связь с админом