Уравнение a b 2 y на паскаль

Вывести уравнение прямой, проходящей через две точки

Задача

По координатам двух точек, которые вводит пользователь, определить уравнение прямой, проходящей через эти точки.

Решение

Алгоритм решения задачи:

Общий вид уравнения прямой имеет вид y = kx + b. Чтобы найти уравнение для конкретной прямой, необходимо вычислить коэффициенты k и b. Сделать это можно, если известны координаты двух точек, лежащих на этой прямой. В этом случае решается система уравнений:
| y1 = kx1 + b
| y2 = kx2 + b
b = y2 — kx2
y1 = kx1 + y2 — kx2
k = (y1 — y2) / (x1 — x2)
b = y2 — k*x2

Программирование на Паскале. Тема: «Решение квадратного уравнения с использованием конструкции 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.
  • Язык программирования TurboPascal

    Turbo Pascal. Программирование арифметических выражений

    Оператор присваивания

    Оператор присваивания является одним из основных операторов любого языка программирования.

    Оператор присваивания предназначен для присваивания переменной значения выражения.

    Формат оператора присваивания:

    В операторе присваивания слева от знака присваивания «:=» записывается переменная, а справа – выражение, численное значение которого присваивается этой переменной.

    Выполнение оператора присваивания приведет к вычислению выражения и присваиванию значения выражения переменной.

    Обязательным является требование, чтобы выражение и переменная были совместимы по присваиванию.

    Например, оператор присваивания

    означает, что переменной y присваивается число, полученное в результате вычисления выражения x+h/2 при известных числовых значениях переменных x и h .

    Следует обратить внимание, что всем переменным в правой части оператора присваивания ранее уже были присвоены значения предыдущими операторами, например,

    Здесь переменной t присваивается значение, которое до этого момента имела переменная t, плюс 1. Если переменная t имела до выполнения этого оператора значение равное 7, то после исполнения оператора t:=t+1 значение переменной будет равно 8.

    Арифметические выражения

    Арифметические выражения строятся из арифметических констант, переменных, функций и операций над ними.

    Правила записи и смысл арифметических выражений в Паскале почти не отличаются от обычной математической записи.

    В арифметических выражениях используются следующие операции и соответствующие знаки:

    ОперацияЗнак операции
    Сложение+
    Вычитание
    Умножение*
    Деление/
    Деление целых чиселdiv
    Остаток от деления целых чиселmod

    Операции +, -, *, / имеют очевидный смысл. Результатом операции div будет целое значение, равное целой части результата деления первого числа на второе. Результатом операции mod будет целое значение, равное остатку от деления (но не дробной части).

    Примеры арифметических операций:

    Арифметические операции выполняются в порядке старшинства: сначала вычисление функции, затем умножение, деление, сложение, вычитание.

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

    Рассмотрим арифметическое выражение

    В таблице приведен порядок выполнения операций:

    ОперацияОперация
    1a*x7-a*x*x+b/x*c+y
    2a*x*x8c*n
    3-a*x*x9(a-b)
    4b/x10c*n/(a-b)
    5b/x*c11-a*x*x+b/x*c+y-c*n/(a-b)
    6-a*x*x+b/x*c

    ЗАМЕЧАНИЕ. Все данные, входящие в арифметическое выражение, должны быть одного типа.

    Исключение составляют только константы и переменные целого типа (integer), которые разрешается использовать в выражениях вещественного типа (real). Если в выражении используются данные целого и вещественного типа, результат операции будет вещественного типа. В других случаях необходимо выполнять преобразование данных.

    Пример. Пусть переменные x и y описаны следующим образом:

    Рассмотрим оператор y:= x+2 , в котором используются переменные целого, вещественного типов и константа. Результат операции будет вещественного типа, поэтому оператор y:=x+2; является допустимым, хотя справа от присваивания стоит целая переменная и константа;

    Следующие операторы являются ошибочными:

    Для обеспечения совместимости типов необходимо выполнять преобразования данных. Для преобразования Real в Integer имеются две функции:

    Round() – округляет Real до ближайшего целого;

    Trunc() – усекает Real путем отбрасывания дробной части.

    Правильная запись рассматриваемых операторов: x:=y+2; и x:=y/x; имеет вид:

    Программируя арифметические выражения, нужно иметь в виду следующие основные правила:

    • Два знака арифметических операций нельзя писать рядом. Например, следующие записи будут неправильными:
      +–a –b — следует писать +(–a) –b
      a*–b — следует писать a*(–b)
    • Знак умножения опускать нельзя, например, при записи произведения: a*b и 2*n , запись ab и 2n будет неправильной, так как ab воспринимается как идентификатор, а запись 2n не является идентификатором, потому что начинается с цифры.
    • В арифметических выражениях допускается использовать только круглые скобки. Количество открывающих круглых скобок должно соответствовать количеству закрывающих круглых скобок. Применение фигурных и квадратных скобок запрещается, так как они имеют особое значение.
    • Все данные, входящие в выражения должны быть одного типа. Если в выражении используются данные целого и вещественного типа, результат операции будет вещественного типа.

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

    ФункцияНазначение
    Abs(x)Абсолютное значение аргумента x
    Sqr(x)Вычисляет квадрат аргумента x
    Sqrt(x)Вычисляет квадратный корень аргумента x
    Exp(x)Возвращает экспоненту аргумента e x (степень числа e=2,72)
    Ln(x)Вычисляет натуральный логарифм аргумента x
    PiЗначение числа p=3.1415926
    Frac(x)Дробная часть числа x
    Int(x)Целая часть числа x
    Sin(x)Синус аргумента x (угол в радианах)
    Cos(x)Косинус аргумента x (угол в радианах)
    Arctan(x)Арктангенс аргумента x (угол в радианах)
    RandomizeИнициализация генератора случайных чисел
    Random(x)Если x отсутствует, то значением функции является случайное число типа real из диапазона 0 x n = exp(n*ln(x));

    Примеры записи простых арифметических выражений и операторов присваивания приведены в таблице:

    Обычная математическая записьЗапись на Турбо Паскале
    x/(y*z) или x/y/z
    y*x/z
    (x+a)/(y+b)
    1/(m*sqrt(a+b))
    x1:=(-b+sqrt(b*b-4*a*c))/(2*a)
    y:=sin(x)
    sqr((x+y-z)/2/a)

    Типичные ошибки в записи выражений:

    4x+1 Пропущен знак умножения между 4 и x

    a+sinx Аргумент x функции sinx не заключен в скобки

    ((a+b)/sqr(c*7) не хватает закрывающей скобки

    ЗАДАЧА2 . Вычислить корни квадратного уравнения

    по известным формулам

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


    источники:

    http://urok.1sept.ru/articles/592261

    http://www.turbopro.ru/index.php/turbopascal/6802-turbo-pascal-programmirovanie-arifmeticheskikh-vyrazhenij