Как на паскале написать формулу
Урок 5. Математические операции, функции и процедуры в Pascal (Часть первая)
Так как в воскресенье на сайте открывается новая рубрика — решение задач, мы с вами должны по-быстрому изучить основную часть математических операций, функций и процедур.
Давайте разберемся, что такое функция и процедура. Это подпрограмма — часть программы, выполняющая определенный алгоритм и допускающая обращение к ней из различных частей общей программы. В чем же разница между процедурой и функцией?
Процедуры — мини-программы.
Процедуры используются в случаях, когда в подпрограмме необходимо получить несколько результатов. Из картинки, расположенной ниже вы видите, как работает процедура. Входных данных может не быть вовсе, а может быть сто.
Например, программист хочет в своем суперкоде между блоками выходящих значений прописывать 20 амперсандов. Чтобы облегчить себе задачу, он напишет простую подпрограмму.
Функции в Паскале — мега переменные.
Функции отличается от процедуры тем, что после выполнения функции на ее месте в коде ставится одно число, буква, строка и т.д. Набор встроенных функций в языке Паскаль достаточно широк. Например, для того, чтобы подсчитать квадрат числа можно воспользоваться стандартной функцией sqr(x). Как вы, наверное, уже поняли sqr(x) требует лишь один фактический параметр — число.
Обратите внимание! Функции необходимо присваивать! Просто написав их в тексте программы, как процедуры, вы ничего не добьетесь!
Структура функции представлена на картинке ниже.
Если в программу необходимо включить новую уникальную функцию, ее надо описать также, как процедуру. Более подробно о том, как делать собственные процедуры и функции, мы поговорим через 10 уроков. Ниже вы видите таблицу основных стандартных функций и процедур в Паскаль.
Очень странная ошибка.
Операции div и mod.
Иногда нам требуется найти частное либо же остаток от деления. В такие моменты на помощь нам приходят такие операции, как div и mod. Заметим, что эти операции выполняются только над целыми числами.
Для того, чтобы найти частное от деления, мы используем операцию div.
Для того, чтобы найти остаток от деления, мы используем операцию mod.
Чтобы окончательно понять, с чем мы имеем дело, решим следующую задачу:
Задача 1. Найти сумму цифр двухзначного числа.
Так как эта задача очень простая, мы с вами обойдемся блок-схемой и программой.
Задача 2. Найти сумму цифр трехзначного числа.
Чуть усложненная версия предыдущей задачи. Самая большая сложность — вторая цифра.
Pascal-Паскаль
Программирование. Стандартные функции Pascal-Паскаль
Программирование. Стандартные функции Pascal-Паскаль
Стандартные функции Pascal-Паскаль
Стандартные математические функции Турбо Паскаля | |||
---|---|---|---|
Обращение | Тип аргумента | Тип результата | Примечание |
Abs(x) | Real, integer | Тип аргумента | Модуль аргумента |
ArcTan(x) | Real, integer | Real | Арктангенс (значение в радианах) |
Cos(x) | Real, integer | Real | Косинус, угол в радианах |
Exp(x) | Real, integer | Real | Экспонента |
Frac(x) | Real | Real | Дробная часть числа |
Int(x) | Real, integer | Real | Целая часть числа |
Ln(x) | Real, integer | Real | Логарифм натуральный |
Pi | Нет | Real | 3,141592653 |
Sin(x) | Real, integer | Real | Синус, угол в радианах |
Sqr(x) | Real, integer | Тип аргумента | Квадрат аргумента |
Sqrt(x) | Real, integer | Real | Корень квадратный |
Random | Нет | Real | Псевдослучайное число в интервале [0, 1] |
Random(I) | Integer | Integer | Псевдослучайное число в интервале [0, I] |
Round(x) | Real | Integer | Округление до ближайшего целого |
Trunc(x) | Real | Integer | Отбрасывание дробной части числа |
Порядок вычислений в выражениях следующий:
Хотя нет ограничений на сложность выражений, однако выражения, содержащие более 7 операндов, трудны для чтения и понимания и поэтому такие выражения не рекомендуется использовать.
Выражение на Паскале: exp(3*ln(x)/2)-7*x+sin(x+2)/cos(x+2)
Операторы действия
Пример оператора присваивания
Оператор присваивания, несмотря на кажущуюся простоту, имеет очень важное алгоритмическое значение.
Удобно считать, что выполнение присваивания переменной некоторого значения означает помещение этого значения в выделенный для переменной ящик. При этом каждый запоминающий ящик обладает следующими свойствами.
Ввод и вывод данных
Пример ввода данных с клавиатуры
read(a,b,c);
readln(a,b,c);
Вывод данных на экран производится с помощью стандартной процедуры write( ) или ее разновидности writeln( ).
Список вывода может содержать константы, переменные, выражения, формат вывода. Выражения в списке вывода разделяются запятыми.
Пример вывода данных на экран
write(a,b,c);
writeln(a,b,c);
Окончание ln в имени процедуры означает, что курсор автоматически будет переведен в начало следующей строки экрана.
Программирование
Исходники Pascal (127)
Справочник
Справочник по паскалю: директивы, функции, процедуры, операторы и модули по алфавиту
Как записать уравнение в паскале
До сих пор мы с вами говорили о каких-то отвлечённых задачах из области математики. Сегодня мы поговорим о конкретной задаче, которая встречается у вас почти на каждом уроке. Это решение квадратного уравнения. Я хочу, чтобы вы на примере этой задачи поняли, что программирование – это не просто прихоть учителя, это действительно раздел информатики, который может нам помочь, например, в решении конкретных математических задач. Нужно только уметь разбираться в этом.
2. Математическое решение
Давайте вспомним, что понимают под квадратным уравнением?
Что из себя представляют числа a,b,c и как их называют?
С чего начинают решение квадратного уравнения?
Как мы решаем далее квадратное уравнение? (сравнение D с нулём)
Какие выводы мы из этого делаем?
(если D 0, то два корня)
Как найти корни квадратного уравнения? Найдите формулы корней среди тех, что развешены повсюду.
Если я случай наличия корней квадратного уравнения сведу к условию D0, то что я получу в случае D=0?
(Два одинаковых корня)
Давайте ещё раз подробно разберём нашу задачу:
Итак, у нас есть квадратное уравнение ax 2 +bx+c=0.
Мы должны решить его, т.е. найти такие значения х, при которых правая часть уравнения =0. Мы знаем, что для этого нам надо:
Найти дискриминант D=b 2 – 4ac.
Сравнить его с нулём
Х1=,
X2 =
3. Составление блок-схемы алгоритма.
По заданному решению попробуем составить блок-схему алгоритма в тетради. Кто справится первым, прошу к доске.
Подпишем основные элементы блок – схемы применительно к языку программирования.
4. Составление программы по блок – схеме.
Теперь, пользуясь нашими записями, составим программу и покажем её учителю. Тот, кто до конца урока составит только программу, не проверив её на компьютере, получит три, тот, кто наберёт программу на компьютере, но не проверит её на примерах, получит три. Тот, кто выполнит всё задание, получит пять.
А я раздам вам домашнее задание.
Write(‘введите коэффициенты уравнения a,b,c’); readln(a,b,c);
Else writeln(‘действительных корней нет’)
1. Составить и набрать программу КВУР на компьютере.
Загрузка среды Pascal- 2ЩЛКМ по значку Pascal, нажать ALT+ENTER.
Запуск программы – ЩЛКМ по кнопке RUN выбрать RUN.
2. Решить следующие квадратные уравнения и показать учителю их решения (если нет такой возможности, то занести их в маршрутный лист (Приложение 4)
3. Переделайте программу КВУР таким образом, чтобы в ней учитывался случай, когда D=0 и уравнение имеет один корень.
4. Закрыть программу.
Подсказка: Меню File – Exit или ALT+X.
1. За простое воспроизведение (набор программы) без проверки оценка «3»
2. За проверку работы программы на примерах, представленных учителем оценка «4»
3. За решение всех заданий и дополнительное изменение программы для случая D=0, оценка «5»
4. Закрыть программу.
Подсказка: Меню File – Exit или ALT+X.
№ | Х1 | Х2 | |
1 | 3,230139 | 0,1031947 | |
2 | 1,464102 | -5,464102 | |
3 | 1,106107 | -1,356107 | |
4 | 5 | 6 | 1,6 |
7 | 2 | -1,6 | |
8 | 9 | 0,6872614 | -1,131706 |
10 | 9,486833 | -9,486833 |
Можно дать дополнительное задание:
Изменить программу так, чтобы ответ был с точностью до 2-х знаков после запятой.
1) Напишите программу проверки пароля. Пусть пароль – некоторое число, зафиксированное в программе. Программа печатает приглашение “введите пароль” и вводит число. Если введённое число совпадает с фиксированным паролем, то программа выводит приветствие, если нет – сообщает о том, что пароль не угадан.
7. Подведение итогов урока.
Итак, ребята, сегодня мы с вами решали конкретные задачи из математики, применяя свои умения по программированию. Вы получили следующие оценки за свои знания. (Перечисление оценок) На следующем уроке нам предстоит познакомиться с новыми алгоритмами – Циклическими.
На сегодня наш урок закончен. До свидания.
Ответ
Проверено экспертом
Ответ
Проверено экспертом
Var
a, b, c, d: real;
begin
write(‘Введите коэффициенты a,b,c ‘);
readln(a, b, c);
d := sqr(b) – 4 * a * c;
if d = 0 then
writeln(‘Корень один x = ‘, (-b / (2 * a))
else if d >0 then
writeln(‘x1 = ‘,(-b + sqrt(d)) / (2 * a), ‘ x2 = ‘,(-b – sqrt(d)) / (2 * a))
else writeln(‘Действительных корней нет’);
end.
Введите коэффициенты a,b,c 1 2 3
Действительных корней нет
Введите коэффициенты a,b,c 1 0 0
Корень один x = 0
Уравнение вида a⋅x 2 + b⋅x + c = 0 – квадратное уравнение.
a, b, c – действительные числа, a ≠ 0.
Для того чтобы вычислить корни квадратного уравнения, нужно сначала найти дискриминант.
Программа для решения квадратного уравнения на языке программирования Паскаль
Функция sqr языка Pascal используется для возведения числа в квадрат.
Функция sqrt используется для получения квадратного корня числа.
В программе используется форматированный вывод вещественных чисел. variable:8:3 – означает, что для вывода переменной предусмотрено 8 символов, 5 из них под целую часть и 3 под дробную.
Написать формулу в паскале
Записать формулу на Паскале
Подскажите как правильно это «v=e^aw+p » записать на Паскале. Заранее спасибо 😊
Написать в Паскале
Составить программу, которая выводит перечень информации языка Паскаль имеющих заданный уровень.
Как написать формулу в редакторе формул?
скажите пожалуйста как работает «Редактор формул»? Дело в том что мне нужно создать формула для.
Puporev, скобка лишняя в знаменателе
Добавлено через 5 минут
Выдает ошибку в строке Readln(x,z);
когда я ввожу значения
Добавлено через 1 минуту
Если вещественные числа, то разделитель точка. И не обязательно через пробел, можно через Enter.
Как написать на паскале
Розробити програму для обробки тексту, яка перетворює довільний рядок в числове значення. Рядок.
Как написать на паскале
Вводиться текст, в якому від 1 до 10 слів, в кожному слові від 1 до 20 літер, слова розділені.
Написать в паскале дату
Дата
написать прграмму на паскале
помогите написать программу с клавиатуры вести 3 числа А,В,С ЕСЛИ ВСЕ ОНИ четные то найти и.
II. ПЕРЕВОД МАТЕМАТИЧЕСКИХ ВЫРАЖЕНИЙ НА ЯЗЫК PASCAL
Для решения математических задач, в Паскале предусмотрены следующие математические операции:
— целочисленное деление (x div y);
— получение остатка от деления (x mod y).
Для расстановки приоритетов в вычислениях расставляются круглые скобки.
Встроенные математические функции языка Pascal
Математическая запись | Запись на Pascal |
cos x | cos(x) |
sin x | sin(x) |
tg x | sin(x)/cos(x) |
e x | exp(x) |
[x] | trunc(x) |
|x| | abs(x) |
x 2 | sqr(x) |
x a | exp(a*ln(x)) |
sqrt(x) | |
<x> | frac(x) |
arctg x | arctan(x) |
arcsinx | arctan(x/sqrt(1-sqr(x))) |
ctgx | cos(x)/sin(x) |
p | Pi |
arcosx | Pi/2-arctan(x/sqrt(1-sqrt(x))) |
ln x | ln(x) |
lgx | ln(x)/ln(10) |
log2x | ln(x)/ln(2) |
n m | exp(m/n*ln(x)) |
Необходимо перевести математическое выражение на язык Pascal.
III. ПРИМЕР ЛИНЕЙНОЙ ПРОГРАММЫ НА ЯЗЫКЕ ПРОГРАММИРОВАНИЯ PASCAL
Составить программу на языке программирования Pascal и блок-схему для решения следующей задачи:
Вычислить расстояние между двумя точками с данными координатами x1, y1 и x2, y2.
Расстояние между точками r вычисляется по формуле:
Ввод переменных будет осуществляться с клавиатуры
Блок-схема программы.
Разработаем алгоритм программы в виде блок-схемы (блоки блок-схемы имеют определенные размеры, блок начало и конец – 1смx3см, все остальные блоки 2смx3см):
Текст программы на языке Pascal.
Program Put;
Var x1,y1, x2,y2, r: real;
Begin // начало программы
Writeln (‘x1=’);
Readln(x1); // ввод х1
Writeln(‘x2=’);
Readln(x2); // ввод х2
Writeln(‘y1=’);
ReadLn(y1); // ввод у1
Write(‘y2=’);
ReadLn(y2); // ввод у2
r:=sqrt(sqr(x2-x1)+sqr(y2-y1));
// вычисление расстояния между точками
Writeln(‘r=’,r:5:3); // вывод результата
end. // конец программы
Варианты к заданию
1 | 11 | 21 | |||
2 | 12 | 22 | |||
3 | 13 | 23 | |||
4 | 14 | 24 | |||
5 | 15 | 25 | |||
6 | 16 | 26 | |||
7 | 17 | 27 | |||
8 | 18 | 28 | |||
9 | 19 | 29 | |||
10 | 20 | 30 |
Задание 2. Написание линейного алгоритма
Контрольные вопросы
1. Для чего предназначена язык программирования Pascal?
2. Из каких окон состоит программа Pascal?
3. Как осуществляется ввод данных в Pascal?
4. Каков порядок создания программы и записи ее в файл?
5. Из каких команд представлено главное меню?
6. Как создать ехе-файл?
7. Как выполнить программу?
8. Какие основные группы символов составляют алфавит языка Pascal?
9. Какие типы переменных существуют?
10. Как задать имя программе?
Литература
2. Информатика и ИКТ: учебник для начального и среднего профессионального образования. Цветкова Н.С., Великович Л.С. – Академия, 2011 г.
3. Информатика и ИКТ. Практикум для профессий и специальностей технического и социально-экономического профилей. Н. Е. Астафьева, С. А. Гаврилова, под ред. М.С. Цветковой, Академия, 2012г.
4. Информатика и ИКТ. Базовый уровень: учебник для 10-11 кл. / И.Г.Семакин, Е.К.Хеннер. – 4 изд., испр. – М. – Бином. Лаборатория знаний, 2008г. – 246 с.: ил.
5. Информатика и ИКТ. Базовый уровень: практикум для 10-11 кл. / И.Г.Семакин, Е.К.Хеннер. – 4 изд., испр. – М. – Бином. Лаборатория знаний, 2008г.
6. Информатика и ИКТ. 10 кл. Базовый уровень под ред. Н.В.Макаровой – Спб – Лидер, 2010г.
7. Информатика и ИКТ. 11 кл. Базовый уровень под ред. Н.В.Макаровой – Спб – Лидер, 2010г.
8. Энциклопедия школьной информатики / под ред. И.Г.Семакина. – М.: Бином. Лаборатория знаний, 2011г.
Дата добавления: 2020-12-22 ; просмотров: 1147 ; Мы поможем в написании вашей работы!