Консультация № 195070
27.03.2019, 15:00
0.00 руб.
0 5 1
Здравствуйте, уважаемые эксперты! Прошу вас ответить на следующий вопрос:

Помогите пожалуйста вычислить и вывести таблицу значений и функции в Mathcad

F=(большая фигурная скобка) {K+tg(x) x≤1.4
{K^3+√x x>1.4


K=0.25; 0.3≤x≤5
Δx=0.15

Вычисление выполнить тремя способами
- с помощью функции условия if
- с помощью оператора if панели Programming
- с использованием булевых операторов

Обсуждение

давно
Мастер-Эксперт
259041
7459
28.03.2019, 16:46
общий
Адресаты:
Я всю жизнь решал практические задачи каким-то одним способом, интуитивно наиболее-подходящим. Если Вам надо изощряться 3мя способами, то опубликуйте сюда эти способы из "методички" Вашего учебного заведения.
давно
Мастер-Эксперт
259041
7459
31.03.2019, 14:53
общий
Адресаты:
Сутки назад я отправил Ответ на Ваш rfpro.ru/question/195071 "Помогите пожалуйста с MathCAD, Вычислить и вывести таблицу значений и график функции S=sinp …"
От Вас не возвратилось ни Спасибо, ни Оценки. Читаю в Вашей ЛичнойКарте "Последнее посещение: 28.03.2019, 18:28 (2 сут. 20 час назад)".
Я подозреваю, Вы ушли и больше не нуждаетесь в помощи.
Мне жаль тратить своё время решать задачи в пустоту. Ухожу.
давно
Посетитель
402798
52
31.03.2019, 15:44
общий
Добрый день,сначало не было доступа к интернет,а потом была на работе(работаю по 12 часов в смене).Спасибо Вам большое за помощь,вы мне очень помогаете)
давно
Мастер-Эксперт
259041
7459
01.04.2019, 15:12
общий
это ответ
Здравствуйте, Helen!
Искомая кусочная функция F(x) в Вашей задаче состоит из 2х кривых :
F1(x) = K+tg(x) для значений x<=1.4
и F2(x) = K3 + [$8730$](x) для значений x>1.4 .
Я произвёл вычисления в программе Mathcad14 . Маткад-файл и скриншот Маткад-окна прилагаю.

Для выполнения вычисления с помощью функции условия if (способ N1) надо из меню Функции \ Кусочно-непрерывные \ выбрать функцию if . Её синтаксис :
if(cond,f1,f2) возвращает f1 , если cond-условие истинно, иначе f2 .

Оператор if из панели Программирование (способ N2) работает аналогично : он выполняет команду, вписанную левее ключевого слова if (переменной F(x) присвоить значение F1(x) ), когда условие, вписанное правее слова if, истинно. Иначе выполнится присвоение по команде, вписанной левее ключе-слова слова otherwise .

Использование булевых операторов (способ N3) вызвало бы ошибку несоответствия типа данных в других языках программирования (числовое умножение типа "число" на тип "логический" - некорректно!). Но в Маткаде, "заточенном" на упрощение быстрых вычислений, логически-истинный результат автомати преобразуется в число-тип = 1 , а логически-ложный - в число 0. Поэтому, при x<=1.4 функция F1(x) умножается на (x<=1.4)=1, а F2(x) - умножается на (x>1.4)=0 , F(x) принимает значение F1(x).
А при x>1.4 левое слагаемое обнуляется, и F(x) принимает значение F2(x) .

Чтоб "вывести таблицу" и уместить её на одном прог-листе, пришлось разорвать её на 3 части. Внизу-справа я вывел на экран несколько проверочных значений, которые показывают, что искомая функция F(x) действительно выбрала значения из функции F1(x) при x<=1.4 , и из функции F2(x) при x>1.4 .
Вопросы можете задавать в мини-форуме.
Прикрепленные файлы:
ac8cbef4b26072136924ea696bcba5c38ea49438.zip
5
давно
Посетитель
402798
52
01.04.2019, 18:40
общий
спасибо)
Форма ответа