Моя цель работы: Разработать калькулятор для решения квадратного уравнения в среде программирования Pascal.
Моя гипотеза: подростки могут разработать калькулятор для решения любого квадратного уравнения.
Объект исследования: разработка калькулятора .
Предмет исследования: программирование.
Практическая значимость: данный материал может быть использован для самообучения, на дополнительных уроках информатики.
Вложение | Размер |
---|---|
![]() | 54.94 КБ |
МАОУ «Средняя общеобразовательная школа № 24 с углубленным изучением отдельных предметов»
Проект
по информатике
«Разработка калькулятора для решения квадратного уравнения в среде программирования Pascal»
Ученика 9 «Д» класса
Бабойцева Никиты
Старый Оскол
2022
ОГЛАВЛЕНИЕ
1.1. Способы решения квадратного уравнения
1.2. Изучение языка программирования Paskal
2. Практика
2.1. Проектирование прототипа калькулятора
2.2. Моделирования прототипа с использованием языка программирования.
2.3. Тестирование и откладка программного продукта.
3. Список литератур
I. ВВЕДЕНИЕ
Моя цель работы: Разработать калькулятор для решения квадратного уравнения в среде программирования Pascal.
Моя гипотеза: подростки могут разработать калькулятор для решения любого квадратного уравнения.
Объект исследования: разработка калькулятора .
Предмет исследования: программирование.
Практическая значимость: данный материал может быть использован для самообучения, на дополнительных уроках информатики.
Актуальность темы: Для программиста создать программу калькулятор, является начальным этапом по созданию сложным программ.
Квадратные уравнения - это фундамент, на котором покоится величественное здание алгебры. Квадратные уравнения находят широкое применение при решении тригонометрических, показательных, логарифмических, иррациональных и трансцендентных уравнений и неравенств. Все мы умеем решать квадратные уравнения со школьной скамьи (8 класс), до окончания вуза.
В школьном курсе математики изучаются формулы корней квадратных уравнений, с помощью которых можно решать любые квадратные уравнения. Однако имеются и другие способы решения квадратных уравнений, которые позволяют очень быстро и рационально решать многие уравнения. Имеется десять способов решения квадратных уравнений. Подробно в своей работе я разобрала каждый из них.
1. СПОСОБ: Разложение левой части уравнения на множители.
Решим уравнение
х2 + 10х - 24 = 0.
Разложим левую часть на множители:
х2 + 10х - 24 = х2 + 12х - 2х - 24 = х(х + 12) - 2(х + 12) = (х + 12)(х - 2).
Следовательно, уравнение можно переписать так:
(х + 12)(х - 2) = 0
Так как произведение равно нулю, то, по крайней мере, один из его множителей равен нулю. Поэтому левая часть уравнения обращается нуль при х = 2, а также при х = - 12. Это означает, что число 2 и - 12 являются корнями уравнения х2 + 10х - 24 = 0.
2. СПОСОБ: Метод выделения полного квадрата.
Решим уравнение х2 + 6х - 7 = 0.
Выделим в левой части полный квадрат.
Для этого запишем выражение х2 + 6х в следующем виде:
х2 + 6х = х2 + 2* х * 3.
В полученном выражении первое слагаемое - квадрат числа х, а второе - удвоенное произведение х на 3. По этому чтобы получить полный квадрат, нужно прибавить 32, так как
х2 + 2* х * 3 + 32 = (х + 3)2.
Преобразуем теперь левую часть уравнения
х2 + 6х - 7 = 0,
прибавляя к ней и вычитая 32. Имеем:
х2 + 6х - 7 = х2 + 2* х * 3 + 32 - 32 - 7 = (х + 3)2 - 9 - 7 = (х + 3)2 - 16.
Таким образом, данное уравнение можно записать так:
(х + 3)2 - 16 =0, (х + 3)2 = 16.
Следовательно, х + 3 - 4 = 0, х1 = 1, или х + 3 = -4, х2 = -7.
3. СПОСОБ: Решение квадратных уравнений по формуле.
Умножим обе части уравнения
ах2 + bх + с = 0, а ? 0
на 4а и последовательно имеем:
4а2х2 + 4аbх + 4ас = 0,
((2ах)2 + 2ах * b + b2) - b2 + 4ac = 0,
(2ax + b)2 = b2 - 4ac,
2ax + b = ± v b2 - 4ac,
2ax = - b ± v b2 - 4ac,
Примеры.
а) Решим уравнение: 4х2 + 7х + 3 = 0.
а = 4, b = 7, с = 3, D = b2 - 4ac = 72 - 4 * 4 * 3 = 49 - 48 = 1,
D > 0, два разных корня;
Таким образом, в случае положительного дискриминанта, т.е. при
b2 - 4ac >0 , уравнение ах2 + bх + с = 0 имеет два различных корня.
б) Решим уравнение: 4х2 - 4х + 1 = 0,
а = 4, b = - 4, с = 1, D = b2 - 4ac = (-4)2 - 4 * 4 * 1= 16 - 16 = 0,
D = 0, один корень;
Итак, если дискриминант равен нулю, т.е. b2 - 4ac = 0, то уравнение
ах2 + bх + с = 0 имеет единственный корень,
в) Решим уравнение: 2х2 + 3х + 4 = 0,
а = 2, b = 3, с = 4, D = b2 - 4ac = 32 - 4 * 2 * 4 = 9 - 32 = - 13 , D < 0.
Данное уравнение корней не имеет.
Итак, если дискриминант отрицателен, т.е. b2 - 4ac < 0,
уравнение ах2 + bх + с = 0 не имеет корней.
Формула (1) корней квадратного уравнения ах2 + bх + с = 0 позволяет найти корни любого квадратного уравнения (если они есть), в том числе приведенного и неполного. Словесно формула (1) выражается так: корни квадратного уравнения равны дроби, числитель которой равен второму коэффициенту, взятому с противоположным знаком, плюс минус корень квадратный из квадрата этого коэффициента без учетверенного произведения первого коэффициента на свободный член, а знаменатель есть удвоенный первый коэффициент.
4. СПОСОБ: Решение уравнений с использованием теоремы Виета.
Как известно, приведенное квадратное уравнение имеет вид
х2 + px + c = 0. (1)
Его корни удовлетворяют теореме Виета, которая при а =1 имеет вид
x1 x2 = q,
x1 + x2 = - p
Отсюда можно сделать следующие выводы (по коэффициентам p и q можно предсказать знаки корней).
а) Если сводный член q приведенного уравнения (1) положителен (q > 0), то уравнение имеет два одинаковых по знаку корня и это зависти от второго коэффициента p. Если р < 0, то оба корня отрицательны, если р < 0, то оба корня положительны.
Например,
x2 - 3x + 2 = 0; x1 = 2 и x2 = 1, так как q = 2 > 0 и p = - 3 < 0;
x2 + 8x + 7 = 0; x1 = - 7 и x2 = - 1, так как q = 7 > 0 и p= 8 > 0.
б) Если свободный член q приведенного уравнения (1) отрицателен (q < 0), то уравнение имеет два различных по знаку корня, причем больший по модулю корень будет положителен, если p < 0 , или отрицателен, если p > 0 .
Например,
x2 + 4x - 5 = 0; x1 = - 5 и x2 = 1, так как q= - 5 < 0 и p = 4 > 0;
x2 - 8x - 9 = 0; x1 = 9 и x2 = - 1, так как q = - 9 < 0 и p = - 8 < 0.
5. СПОСОБ: Решение уравнений способом «переброски».
Рассмотрим квадратное уравнение
ах2 + bх + с = 0, где а ? 0.
Умножая обе его части на а, получаем уравнение
а2х2 + аbх + ас = 0.
Пусть ах = у, откуда х = у/а; тогда приходим к уравнению
у2 + by + ас = 0,
равносильно данному. Его корни у1 и у2 найдем с помощью теоремы Виета.
Окончательно получаем
х1 = у1/а и х1 = у2/а.
При этом способе коэффициент а умножается на свободный член, как бы «перебрасывается» к нему, поэтому его называют способом «переброски». Этот способ применяют, когда можно легко найти корни уравнения, используя теорему Виета и, что самое важное, когда дискриминант есть точный квадрат.
Пример.
Решим уравнение 2х2 - 11х + 15 = 0.
Решение. «Перебросим» коэффициент 2 к свободному члену, в результате получим уравнение
у2 - 11у + 30 = 0.
Согласно теореме Виета
у1 = 5 х1 = 5/2 x1 = 2,5
у2 = 6 x2 = 6/2 x2 = 3.
Ответ: 2,5; 3.
6. СПОСОБ: Свойства коэффициентов квадратного уравнения.
А. Пусть дано квадратное уравнение
ах2 + bх + с = 0, где а ? 0.
1) Если, а+ b + с = 0 (т.е. сумма коэффициентов равна нулю), то х1 = 1,
х2 = с/а.
Доказательство. Разделим обе части уравнения на а ? 0, получим приведенное квадратное уравнение
x2 + b/a * x + c/a = 0.
Согласно теореме Виета
x1 + x2 = - b/a,
x1x2 = 1* c/a.
По условию а - b + с = 0, откуда b = а + с. Таким образом,
x1 + x2 = - а + b/a= -1 - c/a,
x1x2 = - 1* ( - c/a),
т.е. х1 = -1 и х2 = c/a, что м требовалось доказать.
Примеры.
1) Решим уравнение 345х2 - 137х - 208 = 0.
Решение. Так как а + b + с = 0 (345 - 137 - 208 = 0), то
х1 = 1, х2 = c/a = -208/345.
Ответ: 1; -208/345.
2)Решим уравнение 132х2 - 247х + 115 = 0.
Решение. Так как а + b + с = 0 (132 - 247 + 115 = 0), то
х1 = 1, х2 = c/a = 115/132.
Ответ: 1; 115/132.
Б. Если второй коэффициент b = 2k - четное число, то формулу корней
Язык был создан Никлаусом Виртом в 1968—1969 годах после его участия в работе комитета разработки стандарта языка Алгол-68. Язык назван в честь французского математика, физика, литератора и философа Блеза Паскаля, который создал одну из первых в мире механических машин, складывающую два числа. Первая публикация Вирта о языке датирована 1970 годом; представляя язык, автор в качестве цели его создания указывал построение небольшого и эффективного языка, способствующего хорошему стилю программирования, использующему структурное программирование и структурированные данные.
Особенностями языка являются строгая типизация и наличие средств структурного (процедурного) программирования. Паскаль был одним из первых таких языков. По мнению Вирта, язык должен способствовать дисциплинированному программированию, поэтому, наряду со строгой типизацией, в Паскале сведены к минимуму возможные синтаксические неоднозначности, а сам синтаксис автор постарался сделать интуитивно понятным даже при первом знакомстве с языком.
2.1. Проектирование прототипа калькулятора.
Для создания прототипа калькулятора, мне понадобится среда программирования pascal. Для прототипа я использовал программу PascalABC.
1.Для начала обозначим все необходимые значения действительными числами, используя команду :real
2. Далее обозначаем начало нашего калькулятора, с помощью команды writeln и readln.
3.Вводим формулу дискриминанта и обозначаем, что для всех значений D<0 программа выведет на экран “корней нет”. If d<0 then print “Корней нет”.
4.расписать действия для всех возможных исходив:
1.если дискриминант равен 0.
If d=0 do
X:=-b/2/a
2.если дискриминант положительный .
If d>0 do
X1:=(-b+sqrt(d))/2/a
X2:=(-b-sqrt(d))/2/a
Исходя из этих действий мой прототип имеет следующий вид:
var a,b,c:real;
var d: real;
var x,x1,x2: real;
begin
writeln('введите a');
readln(a);
writeln('введите b');
readln(b);
writeln('введите c');
readln(c);
d:=b*b-4*a*c;
if d<0 then writeln('кореней нет');
if d=0 then
begin
x:=-b/2/a;
writeln ('x=', x:9:3)
end;
if d>0 then
begin
x1:=(-b+sqrt(d) )/2/a;
x2:=(-b-sqrt(d) )/2/a;
writeln('x1=', x1:9:3);
writeln('x2=', x2:9:3);
end;end.
2.2 Моделирование прототипа с использование языка программирования.
Прототип — это моделирование конечного продукта. Это интерактивный макет, который может иметь любую степень точности. Основная цель создания прототипов – проверить, насколько последователен путь пользователя, и выявить препятствия, которые могут возникнуть в процессе его взаимодействия с продуктом.
Прототипы не только позволяют проверить юзабилити разрабатываемого продукта до начала написания кода, они также приводят к неожиданным открытиям и новым идеям, которые могут вывести проектируемый продукт на новый уровень (а могут и нет).
2.3. Тестирование и откладка программного продукта.
Тестирование программного средства (ПС) - это процесс выполнения программ на некотором наборе данных, для которого заранее известен результат применения или известны правила поведения этих программ. Указанный набор данных называется тестовым или просто тестом. Тестирование программ является одной из составных частей более общего понятия - «отладка программ». Под отладкой понимается процесс, позволяющий получить программу, функционирующую с требующимися характеристиками в заданной области изменения входных данных.
Во время тестирования и откладки программного продукта я не выявил критических ошибок. И считаю, что мой продукт готов к использованию.
3.Список Литератур
Соловьев С. В., Цой Р. И., Гринкруг Л. С
Рисуем осенние листья
Попробуем на вкус солёность моря?
Весёлая кукушка
Два морехода
Снежная книга