Квадратное уравнение это уравнение вида информатика

Программирование на Паскале. Тема: «Решение квадратного уравнения с использованием конструкции IF–THEN–ELSE»

Цели урока:

  • Повторить с учащимися правила решения квадратных уравнений
  • Вспомнить алгоритмическую конструкцию IF-THEN-ELSE
  • Составить блок-схему программы и саму программу на языке Pascal
  • Проверить работоспособность программы на конкретных примерах
  • Расширить представления учащихся о применении языка Pascal
  • Воспитать у учащихся чувство аккуратности, внимательности, ответственности
  • Научить учащихся самостоятельно находить свои ошибки в программах
  • Оборудование:

  • Таблички с формулами
  • Плакат с блок-схемой алгоритма КВУР
  • Листочки с индивидуальными заданиями
  • Система программирования «Turbo Pascal 7.0»
  • До сих пор мы с вами говорили о каких-то отвлечённых задачах из области математики. Сегодня мы поговорим о конкретной задаче, которая встречается у вас почти на каждом уроке. Это решение квадратного уравнения. Я хочу, чтобы вы на примере этой задачи поняли, что программирование — это не просто прихоть учителя, это действительно раздел информатики, который может нам помочь, например, в решении конкретных математических задач. Нужно только уметь разбираться в этом.

    2. Математическое решение

    Давайте вспомним, что понимают под квадратным уравнением?

    Что из себя представляют числа a,b,c и как их называют?

    С чего начинают решение квадратного уравнения?

    Найдите вокруг себя формулу дискриминанта. (D=b 2 -4ac) (Приложение 3)

    Как мы решаем далее квадратное уравнение? (сравнение D с нулём)

    Какие выводы мы из этого делаем?

    (если D 0, то два корня)

    Как найти корни квадратного уравнения? Найдите формулы корней среди тех, что развешены повсюду.

    Если я случай наличия корней квадратного уравнения сведу к условию D0, то что я получу в случае D=0?

    (Два одинаковых корня)

    Давайте ещё раз подробно разберём нашу задачу:

    Итак, у нас есть квадратное уравнение ax 2 +bx+c=0.

    Мы должны решить его, т.е. найти такие значения х, при которых правая часть уравнения =0. Мы знаем, что для этого нам надо:

    Найти дискриминант D=b 2 — 4ac.

    Сравнить его с нулём

    D=b 2 -4ac=10 2 -4*3*3=100 — 36 =64

    Х1=,

    X2 =

    3. Составление блок-схемы алгоритма.

    По заданному решению попробуем составить блок-схему алгоритма в тетради. Кто справится первым, прошу к доске.

    Подпишем основные элементы блок — схемы применительно к языку программирования.

    4. Составление программы по блок — схеме.

    Теперь, пользуясь нашими записями, составим программу и покажем её учителю. Тот, кто до конца урока составит только программу, не проверив её на компьютере, получит три, тот, кто наберёт программу на компьютере, но не проверит её на примерах, получит три. Тот, кто выполнит всё задание, получит пять.

    А я раздам вам домашнее задание.

    Var a,b,c,d,x1,x1: real;

    Write(‘введите коэффициенты уравнения a,b,c’); readln(a,b,c);

    Else writeln(‘действительных корней нет’)

    1. Составить и набрать программу КВУР на компьютере.

    Загрузка среды Pascal- 2ЩЛКМ по значку Pascal, нажать ALT+ENTER.

    Запуск программы — ЩЛКМ по кнопке RUN выбрать RUN.

    2. Решить следующие квадратные уравнения и показать учителю их решения (если нет такой возможности, то занести их в маршрутный лист (Приложение 4)

    1,5х 2 -0,6х — 4,8 = 0

    3. Переделайте программу КВУР таким образом, чтобы в ней учитывался случай, когда D=0 и уравнение имеет один корень.

    4. Закрыть программу.

    Подсказка: Меню File — Exit или ALT+X.

    1. За простое воспроизведение (набор программы) без проверки оценка «3»

    2. За проверку работы программы на примерах, представленных учителем оценка «4»

    3. За решение всех заданий и дополнительное изменение программы для случая D=0, оценка «5»

    4. Закрыть программу.

    Подсказка: Меню File — Exit или ALT+X.

    Х1Х2
    13,2301390,1031947
    21,464102-5,464102
    31,106107-1,356107
    4Корней нет
    5Корней нет
    61,60
    72-1,6
    8Корней нет
    90,6872614-1,131706
    109,486833-9,486833

    Можно дать дополнительное задание:

    Изменить программу так, чтобы ответ был с точностью до 2-х знаков после запятой.

    1) Напишите программу проверки пароля. Пусть пароль — некоторое число, зафиксированное в программе. Программа печатает приглашение «введите пароль» и вводит число. Если введённое число совпадает с фиксированным паролем, то программа выводит приветствие, если нет — сообщает о том, что пароль не угадан.

    7. Подведение итогов урока.

    Итак, ребята, сегодня мы с вами решали конкретные задачи из математики, применяя свои умения по программированию. Вы получили следующие оценки за свои знания. (Перечисление оценок) На следующем уроке нам предстоит познакомиться с новыми алгоритмами — Циклическими.

    На сегодня наш урок закончен. До свидания.

    Литература:

  • И. Семакин, Л. Залогова «Информатика. Базовый курс. 9 класс», М., БИНОМ, 2005г.
  • А.А. Чернов «Конспекты уроков информатики в 9-11 классах», Волгоград: Учитель, 2006г.
  • Л.И. Белоусова, С.А. Веприк «Сборник задач по курсу информатики», М., «Экзамен», 2007.
  • Решить квадратное уравнение

    Найти корни квадратного уравнения и вывести их на экран, если они есть. Если корней нет, то вывести сообщение об этом. Конкретное квадратное уравнение определяется коэффициентами a , b , c , которые вводит пользователь.

    Квадратное уравнение имеет вид ax 2 + bx + c = 0 . Коэффициенты a , b и c — это конкретные числа, а x надо найти, решив уравнение.

    1. Вычислить дискриминант по формуле d = b 2 — 4ac .
    2. Если дискриминант больше нуля, то вычислить два корня уравнения:
      x1 = (-b+√d) / 2a
      x2 = (-b-√d) / 2a
    3. Если дискриминант равен нулю, то вычислить только один корень (второй будет равен ему).
    4. Если дискриминант отрицателен, то вывести сообщение, что корней нет.

    Pascal

    квадратное уравнение паскаль

    Язык Си

    Ключ -lm при компиляции gcc.

    Python

    КуМир

    Basic-256

    • Total 0
    • 0
    • 0
    • 0
    • 0

    квадратное уравнение паскаль

    var
    a,b,c,d,x1,x2: real;
    begin
    write(‘a=’); readln(a);
    write(‘b=’); readln(b);
    write(‘c=’); readln(c);
    d := b*b — 4*a*c;
    if d > 0 then begin
    x1 := (-b + sqrt(d)) / (2*a);
    x2 := (-b — sqrt(d)) / (2*a);
    writeln(‘x1=’,x1:3:2,’; x2=’,x2:3:2);
    end
    else
    if d = 0 then begin
    x1 := (-b) / (2*a);
    writeln(‘x=’,x1:5:2);
    end
    else
    writeln(‘Корней нет’);
    end.

    main() <
    float a,b,c,d,x1,x2;
    printf(«a=»); scanf(«%f»,&a);
    printf(«b=»); scanf(«%f»,&b);
    printf(«c=»); scanf(«%f»,&c);
    d = b*b — 4*a*c;
    if (d>0) <
    x1 = (-b + sqrt(d)) / (2*a);
    x2 = (-b — sqrt(d)) / (2*a);
    printf(«x1=%.2f; x2=%.2f», x1, x2);
    >
    else
    if (d = 0) <
    x1 = -b / (2*a);
    printf(«x1=%.2f; x2=%.2f», x1, x2);
    >
    else printf(«Корней нет.»);
    printf(«\n»);
    >

    Ключ -lm при компиляции gcc.

    python квадратное уравнение

    print(«Введите коэффициенты для квадратного уравнения (ax^2 + bx + c = 0):»)
    a = float(input(«a = «))
    b = float(input(«b = «))
    c = float(input(«c = «))

    discr = b**2 — 4 * a * c;
    print(«Дискриминант D = %.2f» % discr)
    if discr > 0:
    import math
    x1 = (-b + math.sqrt(discr)) / (2 * a)
    x2 = (-b — math.sqrt(discr)) / (2 * a)
    print(«x1 = %.2f \nx2 = %.2f» % (x1, x2))
    elif discr == 0:
    x = -b / (2 * a)
    print(«x = %.2f» % x)
    else:
    print(«Корней нет»)

    input «a = «, a
    input «b = «, b
    input «c = «, c
    d = b^2 — 4*a*c

    if d > 0 then
    x1 = (-b + sqrt(d)) / (2*a)
    x2 = (-b — sqrt(d)) / (2*a)
    print «x1 = » + x1 + «, x2 = » + x2
    else
    if d = 0 then
    x = -b / (2*a)
    print «x = » + x
    else
    print «Корней нет»
    endif
    endif

    Команда decimal указывает сколько знаков после запятой следует выводить.

    Квадратное уравнение

    Квадратное уравнение ax 2 + bx + c = 0 на C++ лучше всего решать с помощью формулы, содержащей дискриминант:

    Разберем пример кода такой программы:

    Данная программа учитывает все исходы при решении подобного уравнения.

    Похожие записи:

    Квадратное уравнение: 8 комментариев

    Добрый день! А как быть со случаями, когда а == 0; b == 0 && c > 0; b == 0 && C !=0 и т.д.?

    При a == 0 уравнение перестает называться квадратным. Проблемы также возникают, когда, например, пользователь ввел букву вместо числа. Такие случаи называются аномалиями.
    Все аномалии рассмотреть нельзя. Если требуется, то можно, например, рассмотреть аномалию a == 0, добавив после 11-й строки:
    if (a == 0)
    <
    cout

    «Все аномалии рассмотреть нельзя.»
    Сложно с Вами согласиться. Не такая уж это и нетривиальная задача для программиста — решить уравнение ax2 + bx + c = 0 на C++, учтя все возможные варианты а, b, c, в том числе и когда уравнение перестает быть квадратным и другие.
    В противном случае код получается не универсальный, а только для некоторых случаев, когда переменные Вас «устраивают».
    Согласитесь — это не решение задачи, а нахождение решения для группы частных случаев.

    Нельзя. Будет всегда компьютер, бракованный, на котором программа не будет работать. На этом факте основано всё лицензирование программного обеспечения. Бракованный компьютер — тоже совокупность аномалий.

    По квадратному уравнению имеет смысл рассматривать аномалии только, если от Вас это требуется в задании. И процесс такой длительный:
    1. Рассматриваются случаи, когда пользователь ввел уравнение, не являющееся квадратным.
    2. Рассматриваются случаи, когда пользователь ввел a,b,c, не являющиеся числами.
    3. Рассматриваются случаи, когда пользователь, не умеет запускать программу, пишется инструкция.
    4. Рассматриваются случаи, когда пользователь не умеет читать, пишется инструкция с картинками, часто с голосовым помощником.
    5. Это именно программа, поэтому можно также составить инструкцию по компиляции, указать различные версии программы для разных стандартов языка.
    .
    Это все не моя выдумка, так делают, но только, если это действительно нужно.

    Бывает другой случай, например, нужно сдать программу, решающую квадратное уравнение, преподавателю и вот здесь нужно сделать минимум, то, что написано в примере, а дальше, только если преподаватель просит.

    Нет. Вы не правы.
    Про аномалии — я вообще ничего не говорю. Я говорю только про задачу, которую озвучили Вы: решить ax2 + bx + c = 0. Другими словами — найти все возможные ответы при абсолютно любых значениях а, b и с. Без исключений. Не важно — квадратное будет уравнение или линейное, после того, как мы с консоли введем переменные. В этом весь смысл программирования. Сделать универсальное решение, которое будет работать всегда, при любых значениях переменных (аномалии, когда пользователю оторвало руки и он не может ввести переменные с консоли, истекая кровью, я тоже не рассматриваю).
    Глупо, имея инструмент, который позволяет решить задачу, не решать её в любых, без исключения, случаях. А ограничивать себя только удобными случаями и тривиальными. Это не программирование получается, а ерунда какая-то, решение частных случаев. «Сюда — смотри, сюда — не смотри, а здесь — рыбу заворачивали. »
    Вот, корявый, конечно, не оптимальный, но работающий во всех случаях код:

    #include
    #include
    using namespace std;

    int main() <
    double a, b, c;
    cin >> a >> b >> c;
    /*(D = b*b minus 4*a*c) — считаем дискриминант*/
    double d = (b*b) — 4 * a * c;
    double x1, x2, d1;
    d1=sqrt(d);/*корень из дискриминанта — заготовка для решения решаемого квадратного уравнения*/
    /*1. группируем все исключения — когда решение вообще или через дискриминант невозможно*/
    /*2. в каждое исключение сливаем все условия и для этих условий пишем вывод*/
    /*3. оставшиеся случаи решаем через дискриминант*/
    if ((a==0 && b == 0 ) || ( b==0 && ((c> 0 && a>0) || (c

      Про аномалии это я переделал. Лучше говорить аномалии, а не исключения.
      Задачу читайте внимательно: квадратное уравнение. Подразумевается, что коэффициент a не равен 0.
      Посмотрите математическую энциклопедию.

      Ещё раз повторю: Вы не сможете сделать универсальное решение, которое будет работать всегда.

      Ваше решение просто лучше моего, оно не работает, если вместо a, я ввожу rrr или другие символы.

      Аномалии про оторванные руки и кровь тоже рассматривают, есть даже задачи и модели математические про ситуацию, когда 0 взял так и случайно стал 1 в памяти ЭВМ. Про глупость, ну а что, так и есть, глупость это нормально. Ваша программа умнее моей.

      Это не ерунда, а программирование. Первый этап, который всегда должен происходить, это спецификация (уточнение) задачи. Пишется такая бумага, в которой как раз и есть «Сюда — смотри, сюда — не смотри, а здесь — рыбу заворачивали. «.

      Вопрос у Вас фактически про спецификацию (уточнение). Те пять пунктов, которые я в предыдущем комментарии написал — совершенно адекватные требования преподавателя, заказчика, сайта с хранилищем программного обеспечения. Часто преподаватели говорят — составить отчёт с инструкциями даже по такой программе как решение квадратного уравнения, это нормально. Про оторванные руки я не писал как раз как про первоочередную задачу.

      Но по минимуму решение именно то, что я написал. Оно, бывает, проходит, при быстром ответе на вопрос экзамена. Если требуют уточнить, нужно уметь уточнять. Да и ещё раз замечу, Ваше решение умнее моего, но оно не универсально.

      Математической энциклопедии под рукой не нашлось.
      «Лучше говорить аномалии, а не исключения.»
      Не помню из курса алгебры (в рамках которой изучается решение квадратных уравнений) такого термина — аномалии, но допускаю, что Вы правы и такой математический термин существует и его можно применить к квадратному уравнению.
      «Задачу читайте внимательно: квадратное уравнение. Подразумевается, что коэффициент a не равен 0.»
      Прочитал внимательно. «ax2 + bx + c = 0» — где сказано, что а не равен нулю?
      «Но по минимуму решение именно то, что я написал. Оно, бывает, проходит, при быстром ответе на вопрос экзамена.»
      Когда я пытался пропихнуть код, который не учитывает исключений — не приняли, хотя вот текст моего задания:
      «На вход вашей программы в стандартном потоке ввода подаются действительные коэффициенты A, B и C уравнения Ax² + Bx + C = 0. Выведите все его различные действительные корни в поток вывода в любом порядке, при этом разделяя корни пробелами. Гарантируется, что хотя бы один из коэффициентов уравнения не равен нулю.»
      «Вы не сможете сделать универсальное решение, которое будет работать всегда.» и «Да и ещё раз замечу, Ваше решение умнее моего, но оно не универсально.»
      Позвольте, Вы настаиваете, что невозможно написать код, который будет решать квадратное уравнение при любых действительных a, b и c? Как-то можете теоретически аргументировать? Пока что только не подкрепленные утверждения, не готов принимать их на веру.
      При каких действительных значениях а, b и c мой, реально корявый, код не работает?

      Страницы математических энциклопедий доступны через Яндекс. Только внимательнее, там есть поясняющие материалы в результатах поиска, не перепутайте.

      Квадратное уравнение — алгебраическое уравнение 2-й степени. Общий вид К. у. ax^<2>+bx+c=0, a != 0.

      Что такое аномалия?
      В тестировании программного обеспечения под аномалией понимается результат, отличный от ожидаемого. Такое поведение может быть результатом документа а также представлений и опыта тестировщиков.

      Аномалия может также относиться к проблеме удобства использования, поскольку тестовое программное обеспечение может вести себя в соответствии со спецификацией, но удобство его использования все же можно улучшить. Иногда аномалия также может быть названа дефектом / ошибкой.

      Перед тем как разрабатывать программу проводят формальную спецификацию (уточнение) задания.

      В информатике формальная спецификация — это математическое описание программной или аппаратной системы, которая может быть реализована в соответствии с этим описанием. Специфицируется, что должна делать система, но не то, как она должна это делать.

      Если система огромная — длительное обсуждение, анализ и т.д. Для небольших программ, вот как решение квадратного уравнения, можно на бумаге составить. Вот на этой бумаге пишется задача, ИД — исходные данные, ВД — выходные данные, реакция на аномалии и т.д. В пункте реакция на аномалии рисуется таблица, по крайней мере с двумя столбцами: название аномалии, то что программа будет в этом случае делать.

      У Вас в задании слова квадратное как раз нет и аккуратно написано, что подаются только действительные числа. Формальная спецификация выполнена в задании в основном.

      Если будут вводить только действительные числа, можно написать работающий код. По такой формальной спецификации можно, я почти уверен, хотя доказательства корректности работы программы трудные.

      Нельзя написать универсальное решение, без аномалий, на все случаи жизни. Тот же потенциальный пользователь программы решения квадратного уравнения, школьник, будет тыкать во всю клавиатуру, а не только в цифры.


      источники:

      http://gospodaretsva.com/quadratic-equation.html

      http://proginfo.ru/quadratic-equation/