Слайд 1
П.2.1 «РЕШЕНИЕ
ЗАДАЧ НА КОМПЬЮТЕРЕ»
Слайд 2
ЭТАПЫ РЕШЕНИЯ ЗАДАЧ НА КОМПЬЮТЕРЕ
Постановка задачи
Формализация
Алгоритмизация
Программирование
Компьютерный эксперимент
К вопросам
Слайд 3
Для решения задач на компьютере необходимо владеть языком
программирования, обладать знаниями в области информационного моделирования и алгоритмизации.
Слайд 5
ПОСТАНОВКА ЗАДАЧИ
На этом этапе участвует человек, хорошо представляющий
предметную область задачи. Он должен четко определить цель задачи,
дать словесное описание содержания задачи и предложить общий подход к
её решению.
Результат этапа: Словесная информационная модель
К вопросам
Слайд 6
ФОРМАЛИЗАЦИЯ
Формализуется описательная информационная модель, то есть записывается с
помощью некоторого формального языка.
Для этого требуется:
Понять, к какому классу
принадлежит рассматриваемая задача;
Записать известные связи между исходными данными и результатами
с помощью математических отношений;
Выбрать наиболее подходящий способ для решения задачи
Результат этапа: Математическая модель
К вопросам
Слайд 7
АЛГОРИТМИЗАЦИЯ
Осуществляется построение алгоритма – чёткой инструкции, задающей необходимую
последовательность действий для решения задачи. Алгоритм чаще всего представляется
в форме блок-схемы ввиду её наглядности и универсальности.
Результат этапа: Алгоритм
К
вопросам
Слайд 8
ПРОГРАММИРОВАНИЕ
Записывается алгоритм на одном из языков программирования. Составление
программы обеспечивает возможность выполнения алгоритма и соответственно поставленной задачи
исполнителем – компьютером.
Результат этапа: Программа
К вопросам
Слайд 9
КОМПЬЮТЕРНЫЙ ЭКСПЕРИМЕНТ
На этом этапе происходят выполнение алгоритма с
помощью электронной вычислительной машины (ЭВМ), поиск и исключение ошибок.
При этом программисту приходится выполнять рутинную работу по проверке работы
программы, поиску и исключению ошибок, и поэтому для сложных программ этот часто требует гораздо больше временит и сил, чем написание первоначального текста программы.
Результат этапа: Уточнение модели, получение результата
К вопросам
Слайд 12
ВОПРОСЫ:
Перечислите основные этапы решения задачи с использованием компьютера.
Что
происходит на этапе постановки задачи? Что является результатом этого
этапа?
Что происходит на этапе формализация? Что является результатом этого этапа?
Что
происходит на этапе алгоритмизация? Что является результатом этого этапа?
Что происходит на этапе программирования? Что является результатом этого этапа?
Что происходит на этапе компьютерного эксперимента? Что является результатом этого этапа?
Слайд 13
ДОМАШНЕЕ ЗАДАНИЕ
Разобрать материал урока §2.1
Записи учить
Описание презентации по отдельным слайдам:
-
1 слайд
п.2.1 «решение задач на компьютере»
Подготовила: Галина А.П.
Муниципальное бюджетное общеобразовательное учреждение средняя школа №10 г. Павлово -
2 слайд
Этапы решения задач на компьютере
Постановка задачи
Формализация
Алгоритмизация
Программирование
Компьютерный экспериментК вопросам
-
3 слайд
Для решения задач на компьютере необходимо владеть языком программирования, обладать знаниями в области информационного моделирования и алгоритмизации.
-
-
5 слайд
Постановка задачи
На этом этапе участвует человек, хорошо представляющий предметную область задачи. Он должен четко определить цель задачи, дать словесное описание содержания задачи и предложить общий подход к её решению.
Результат этапа: Словесная информационная модель
К вопросам -
6 слайд
Формализация
Формализуется описательная информационная модель, то есть записывается с помощью некоторого формального языка.
Для этого требуется:
Понять, к какому классу принадлежит рассматриваемая задача;
Записать известные связи между исходными данными и результатами с помощью математических отношений;
Выбрать наиболее подходящий способ для решения задачи
Результат этапа: Математическая модельК вопросам
-
7 слайд
Алгоритмизация
Осуществляется построение алгоритма – чёткой инструкции, задающей необходимую последовательность действий для решения задачи. Алгоритм чаще всего представляется в форме блок-схемы ввиду её наглядности и универсальности.
Результат этапа: Алгоритм
К вопросам -
8 слайд
Программирование
Записывается алгоритм на одном из языков программирования. Составление программы обеспечивает возможность выполнения алгоритма и соответственно поставленной задачи исполнителем – компьютером.
Результат этапа: Программа
К вопросам -
9 слайд
Компьютерный эксперимент
На этом этапе происходят выполнение алгоритма с помощью электронной вычислительной машины (ЭВМ), поиск и исключение ошибок. При этом программисту приходится выполнять рутинную работу по проверке работы программы, поиску и исключению ошибок, и поэтому для сложных программ этот часто требует гораздо больше временит и сил, чем написание первоначального текста программы.
Результат этапа: Уточнение модели, получение результата
К вопросам -
-
-
12 слайд
Вопросы:
Перечислите основные этапы решения задачи с использованием компьютера.
Что происходит на этапе постановки задачи? Что является результатом этого этапа?
Что происходит на этапе формализация? Что является результатом этого этапа?
Что происходит на этапе алгоритмизация? Что является результатом этого этапа?
Что происходит на этапе программирования? Что является результатом этого этапа?
Что происходит на этапе компьютерного эксперимента? Что является результатом этого этапа? -
13 слайд
Итоги урока
За урок – «5» у вас не было проблем в усвоен и понимании материала.
За урок – «4» были небольшие проблемы усвоении материала, требуется поработать дополнительно.
За урок – только «3», материал усвоен, но многие вопросы остались не понятыми. -
14 слайд
Домашнее задание
Разобрать материал урока §2.1
Записи учить -
15 слайд
Список использованных источников
Учебник по информатике 9 класс, автор Л.Л. Босова
Слайд 1п.2.1 «решение задач на компьютере»
Подготовила: Галина А.П.
Муниципальное бюджетное общеобразовательное учреждение средняя
школа №10 г. Павлово
Слайд 2Этапы решения задач на компьютере
Постановка задачи
Формализация
Алгоритмизация
Программирование
Компьютерный эксперимент
К вопросам
Слайд 3Для решения задач на компьютере необходимо владеть языком программирования, обладать знаниями
в области информационного моделирования и алгоритмизации.
Слайд 5Постановка задачи
На этом этапе участвует человек, хорошо представляющий предметную область задачи.
Он должен четко определить цель задачи, дать словесное описание содержания задачи и предложить общий подход к её решению.
Результат этапа: Словесная информационная модель
К вопросам
Слайд 6Формализация
Формализуется описательная информационная модель, то есть записывается с помощью некоторого формального
языка.
Для этого требуется:
Понять, к какому классу принадлежит рассматриваемая задача;
Записать известные связи между исходными данными и результатами с помощью математических отношений;
Выбрать наиболее подходящий способ для решения задачи
Результат этапа: Математическая модель
К вопросам
Слайд 7Алгоритмизация
Осуществляется построение алгоритма – чёткой инструкции, задающей необходимую последовательность действий для
решения задачи. Алгоритм чаще всего представляется в форме блок-схемы ввиду её наглядности и универсальности.
Результат этапа: Алгоритм
К вопросам
Слайд 8Программирование
Записывается алгоритм на одном из языков программирования. Составление программы обеспечивает возможность
выполнения алгоритма и соответственно поставленной задачи исполнителем – компьютером.
Результат этапа: Программа
К вопросам
Слайд 9Компьютерный эксперимент
На этом этапе происходят выполнение алгоритма с помощью электронной вычислительной
машины (ЭВМ), поиск и исключение ошибок. При этом программисту приходится выполнять рутинную работу по проверке работы программы, поиску и исключению ошибок, и поэтому для сложных программ этот часто требует гораздо больше временит и сил, чем написание первоначального текста программы.
Результат этапа: Уточнение модели, получение результата
К вопросам
Слайд 12Вопросы:
Перечислите основные этапы решения задачи с использованием компьютера.
Что происходит на этапе
постановки задачи? Что является результатом этого этапа?
Что происходит на этапе формализация? Что является результатом этого этапа?
Что происходит на этапе алгоритмизация? Что является результатом этого этапа?
Что происходит на этапе программирования? Что является результатом этого этапа?
Что происходит на этапе компьютерного эксперимента? Что является результатом этого этапа?
Слайд 13Итоги урока
За урок – «5» у вас не было проблем в
усвоен и понимании материала.
За урок – «4» были небольшие проблемы усвоении материала, требуется поработать дополнительно.
За урок – только «3», материал усвоен, но многие вопросы остались не понятыми.
Слайд 14Домашнее задание
Разобрать материал урока §2.1
Записи учить
Слайд 15Список использованных источников
Учебник по информатике 9 класс, автор Л.Л. Босова
Решение задач с помощью компьютера включает в себя следующие этапы:
1. Постановка задачи. Включает в себя:
• сбор информации о задаче;
• формулировка условия задачи;
• определение связи между тем, что дано и что требуется определить;
• описание данных.
Так, если задача конкретная, то под постановкой задачи понимают ответ на два вопроса: какие исходные данные известны и что требуется определить. Если задача обобщенная, то при постановке задачи понадобится еще ответ на третий вопрос: какие данные допустимы.
2. Моделирование. На этом этапе строится математическая модель — система математических соотношений — формул, уравнений, неравенств и т. д., отражающих существенные свойства объекта или явления. Необходимо отметить, что при построении математических моделей далеко не всегда удается найти формулы, явно выражающие искомые величины через данные. В таких случаях используются математические методы, позволяющие дать ответы той или иной степени точности.
В случае большого числа параметров, ограничений, возможных вариантов исходных данных модель явления может иметь очень сложное математическое описание, поэтому часто построение математической модели требует упрощения требований задачи. Необходимо выявить самые существенные свойства объекта, явления или процесса, закономерности; внутренние связи, роль отдельных характеристик. Выделив наиболее важные факторы, можно пренебречь менее существенными.
Итак, создавая математическую модель для решения задачи, нужно: выделить предположения, на которых будет основываться математическая модель; определить, что считать исходными данными и результатами; записать математические соотношения, связывающие результаты с исходными данными.
3. Построение алгоритма.
Включает в себя:
• выбор формы записи алгоритма (блок-схема, табличная и т. д.);
• запись алгоритма.
Наиболее эффективно математическую модель можно реализовать на компьютере в виде алгоритмической модели. Для этого может быть использован язык блок-схем или какой-нибудь псевдокод, например учебный алгоритмический язык.
4. Программирование.
Включает в себя:
• выбор языка программирования;
• уточнение способов организации данных;
• запись алгоритма на выбранном языке программирования.
Первые три этапа — это работа без компьютера. Дальше следует собственно программирование на определенном языке в определенной системе программирования.
5. Отладка и тестирование программы. Тестирование программ является одной из составных частей более общего понятия – «отладка программ».
Под отладкой программы понимается процесс испытания работы программы и исправления обнаруженных при этом ошибок. Обнаружить ошибки, связанные с нарушением правил записи программы на языке программирования (синтаксические и семантические ошибки), помогает используемая система программирования. Пользователь получает сообщение об ошибке, исправляет ее и снова повторяет попытку исполнить программу.
Проверка на компьютере правильности алгоритма производится с помощью тестов. Тест — это конкретный вариант значений исходных данных, для, которого известен ожидаемый результат. Прохождение теста — необходимое условие правильности программы. На тестах проверяется правильность реализации программой запланированного сценария.
6. Анализ результатов. Уточнение модели. Последний этап — это использование уже разработанной программы для получения искомых результатов. Производится анализ результатов решения задачи и, в случае необходимости, уточнение математической модели (с последующей корректировкой алгоритма и программы). Программы, имеющие большое практическое или научное значение, используются длительное время. Иногда даже в процессе эксплуатации программы могут исправляться, дорабатываться. Особенностью данного процесса является само отсутствие эталона, которому должна соответствовать та или иная программа.
Этапы решения задач на компьютере
Компьютерные программы программисты создают для решения разнообразных задач. Программирование — важный, но не единственный этап решения задачи на компьютере. Чтобы решать задачи на компьютере, необходимо владеть языком программирования, обладать знаниями в области информационного моделирования и алгоритмизации.
Решение задачи с использованием компьютера включает в себя 5 этапов
На первом этапе обычно строится словесная информационная модель объекта или процесса. При этом должно быть четко определено, что дано (какие исходные данные известны, какие данные допустимы) и что требуется найти в решаемой задаче. Также должны быть четко выделены наиболее существенные свойства рассматриваемого объекта, указаны связи между исходными данными и результатами.
На втором этапе описательная информационная модель формализуется, т. е. записывается с помощью некоторого формального языка. Для этого требуется:
- понять, к какому классу принадлежит рассматриваемая задача;
- записать известные связи между исходными данными и результатами с помощью математических соотношений;
- выбрать наиболее подходящий способ для решения задачи.
На третьем этапе осуществляется построение алгоритма — чёткой инструкции, задающей необходимую последовательность действий для решения задачи. Алгоритм чаще всего представляется в форме блок-схемы, ввиду её наглядности и универсальности.
На четвёртом этапе алгоритм записывается на одном из языков программирования. Вы учитесь записывать программы на языке Паскаль.
На пятом этапе осуществляется отладка и тестирование программы. Этап отладки и тестирования также называют компьютерным экспериментом.
Отладка программы — это процесс проверки работоспособности программы и исправления обнаруженных при этом ошибок. Ошибки могут быть связаны с нарушением правил записи программы на конкретном языке программирования. Их программисту помогает выявить используемая система программирования; она выдаёт на экран сообщения о выявленных ошибках.
Проверка правильности разработанной программы осуществляется с помощью тестов. Тест — это конкретный вариант значений исходных данных, для которого известен ожидаемый результат.
Рассмотрим последовательность прохождения этапов решения задачи на компьютере на примере простой задачи.
Водитель автомобиля, движущегося с некоторой постоянной скоростью, увидев красный свет светофора, нажал на тормоз. После этого скорость автомобиля стала уменьшаться каждую секунду на 5 метров. Требуется найти расстояние, которое автомобиль пройдёт до полной остановки.
Первый этап.
Дано:
v0x — начальная скорость;
vx — конечная скорость (равна нулю);
ax — ускорение (равно -5 м/с)
Требуется найти: — расстояние, которое пройдёт автомобиль до полной остановки.
Второй этап. В данной ситуации мы имеем дело с прямолинейным равноускоренным движением тела. Формула для перемещения при этом имеет вид:
Четвёртый этап. Запишем данный алгоритм на языке программирования Паскаль:
program п_2;
var vO, s: real;
begin
writeln(‘Вычисление длины пути торможения автомобиля 1);
write(‘Введите начальную скорость (м/с)> ‘);
readln (vO); s:=v0*v0/10;
writeln (‘До полной остановки автомобиль пройдет s : 8 : 4, 1 м. ‘ )
end.
Пятый этап. Протестировать составленную программу можно, используя ту информацию, что при скорости 72 км/ч с начала торможения до полной остановки автомобиль проходит 40 метров.
Выполнив программу несколько раз при различных исходных данных, можно сделать вывод: чем больше начальная скорость автомобиля, тем большее расстояние он пройдет с начала торможения до полной остановки.
Применяя компьютер для решения задач, всегда следует помнить, что наряду с огромным быстродействием и абсолютной исполнительностью у компьютера отсутствуют интуиция и чувство здравого смысла, и он способен решать только ту задачу, программу решения которой ему подготовил человек.
Линейные алгоритмы
Программы, реализующие линейные алгоритмы, являются простейшими. Все имеющиеся в них операторы выполняются последовательно, один за другим.
Программируя линейные алгоритмы, рассмотрим более подробно целочисленные, логические, символьные и строковые типы данных.
1) Числовые типы данных:
Функция |
Назначение |
Тип аргумента |
Тип результата |
abs (x) |
Модуль x |
integer, real |
Такой же, как у аргумента |
sqr (x) |
Квадрат x |
integer, real |
Такой же, как у аргумента |
sqrt (x) |
Квадратный корень из x |
integer, real |
real |
exp(x) | возвращает экспоненту от х (ех) | ||
ln(x) | возвращает натуральный логарифм х | ||
rouid (x) |
Округление х до ближайшего целого |
real |
|
frac (x) |
Целая часть x |
real |
|
int (x) |
Дробная часть x |
real |
|
sin(x) | возвращает синус х | ||
cos(x) | возвращает косинус х | ||
arctan(x) | возвращает арктангенс х | ||
random |
Случайное число от 0 до 1 |
— |
real |
random (x) |
Случайное число от 0 до x |
integer |
integer |
Исследование функций round, int и frac
program n_3;
var x: real;
begin
writeln (‘Исследование функций round, int, frac’);
write (‘Введите x>>’);
readln (x);
writeln (‘Округление — ‘, round(x));
writeln (‘Целая часть — ‘, int(x));
writeln (‘Дробная часть — ‘, frac(x))
end.
2) Исследование целочисленных типов данных. Операции div и mod.
Трёхзначное число можно представить в виде следующей суммы: x = a·100 + b·10 + c, где а, b, с — цифры числа. Программа нахождения суммы цифр вводимого с клавиатуры целого трёхзначного числа.
program n_4;
var x, a, b, c, s: integer;
begin
writeln (‘Нахождение суммы цифр трёхзначного числа’);
write (‘Введите исходное число>>’);
readln (x);
a:=x div 100;
b:=x mod 100 div 10;
c:=x mod 10;
s:=a+b+c ;
writeln (‘s= ‘, s)
end.
3) Исследование порядковых типов данных. Порядковые типы характеризуются тем, что соответствующие им значения образуют конечное упорядоченное множество и каждое значение имеет свой порядковый номер. К порядковым типам относятся символьный, перечислимый и интервальный целые типы. Для выражений порядкового типа определены следующие функции:
1) ord(x) возвращает порядковый номер значения данного выражения. Для целых типов возвращает само значение x, для символьного – значение в диапазоне от 0 до 255, для перечислимого – значение в диапазоне от 0 до 65535. Для интервального типа результат зависит от свойств базового порядкового типа;
2) pred(x) возвращает значение, предшествующее значению данного выражения x;
3) succ(x) возвращает значение, следующее за значением данного выражения x;
и процедуры:
1) inc(x) присваивает переменной x следующее по порядку значение;
2) dec(x) присваивает переменной x предшествующее значение.
program n_5;
var a: char; kod: integer; b: string;
begin
writeln (‘Код и строка’);
write (‘Введите исходную букву>>’);
readln (a);
kod:=ord(a);
b:=chr(kod–1)+a+chr(kod+1);
writeln (‘Код буквы ‘, a, ‘-‘, kod);
writeln (‘Строка: ‘, b)
end.
4) Исследование логического типа данных. Тип boolean (логический). Переменные и константы логического типа занимают 1 байт и принимают одно из двух значений, задаваемых предопределенными константами True (истина) и False (ложь). В логических выражениях можно использовать логические операции:
not (отрицание), and (логическое И), or (логическое ИЛИ), xor (логическое исключающее ИЛИ).
Пример 6. Пусть ans — логическая переменная, n — целая переменная. В результате выполнения оператора присваивания ans:=n mod 2=0 переменной ans будет присвоено значение true при любом чётном n и false в противном случае.
program n_6;
var n: integer; ans: boolean;
begin
writeln (‘Определение истинности высказывания о чётности числа’);
write (‘Введите исходное число>>’);
readln (n);
ans:=n mod 2=0;
writeln (‘Число ‘, n,’ является четным — ‘, ans)
end.
program n_7;
var a, b, c: integer; ans: boolean;
begin
writeln (‘Определение истинности высказывания о равнобедренном треугольнике’);
write (‘Введите значения a, b, c>>’);
readln (a, b, c);
ans:=(a=b) or (a=c) or (b=c);
writeln (‘Треугольник с длинами сторон ‘, a, ‘,’, b, ‘,’, c, ‘ является равнобедренным — ‘, ans)
end.