Форум программистов
 
Расширенный поиск
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Lazarus, Free Pascal, CodeTyphon
Регистрация

Восстановить пароль
Повторная активизация e-mail



Ответ
 
Опции темы
Старый 02.12.2016, 11:03   #1
igormel
Пользователь
 
Регистрация: 11.11.2016
Сообщений: 16
Репутация: 10
По умолчанию FreePascal. использовать процедуры и функции. Получить решение биквадратного уравнения.

Программа FreePascal. Нужно использовать процедуры.
Получить решение биквадратного уравнения a*x^4+b*x^2+c=0

Последний раз редактировалось igormel; 02.12.2016 в 11:12.
igormel вне форума   Ответить с цитированием
Старый 02.12.2016, 11:15   #2
Serge_Bliznykov
МегаМодератор
СуперМодератор
 
Регистрация: 09.01.2008
Сообщений: 21,040
Репутация: 4789
По умолчанию

насколько я помню из детства, для решения биквадратного уравнения заданного вида, нужно ввести промежуточную переменную (пусть это будет t), равную x^2
тогда получаем обычное квадратное уравнение:
a*t^2 +b*t + c=0
решаем его относительно t
для положительных значений t берём x = +/- корень из t
в общем случае получается 4-ре числа.

В чём проблема написать код для решения на Паскаль? Не знаете, как дискриминант вычислить? или формулу забыли?
Serge_Bliznykov вне форума   Ответить с цитированием
Старый 02.12.2016, 11:17   #3
igormel
Пользователь
 
Регистрация: 11.11.2016
Сообщений: 16
Репутация: 10
По умолчанию

Смысл в том, что нужно решить через процедуры
igormel вне форума   Ответить с цитированием
Старый 02.12.2016, 11:19   #4
p51x
Профессионал
 
Регистрация: 15.02.2010
Сообщений: 8,634
Репутация: 1353

icq: 216409213
По умолчанию

и в чем проблема? В процедуры можно передать параметр "по ссылке" и получить результат в него, а не как возвращаемое значение.
__________________
Запомните раз и навсегда: помочь != "решите за меня"!
p51x вне форума   Ответить с цитированием
Старый 02.12.2016, 11:22   #5
Serge_Bliznykov
МегаМодератор
СуперМодератор
 
Регистрация: 09.01.2008
Сообщений: 21,040
Репутация: 4789
По умолчанию

Цитата:
Сообщение от igormel Посмотреть сообщение
Смысл в том, что нужно решить через процедуры
решение без процедуры есть?

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

А есть мысли, что именно должно быть вынесено в процедуру(ы)?
если да - то задача тривиальна.
если нет - тогда нужно проявлять фантазию (выносить в процедуру ввода a,b,c, выносить в процедуру вычисление квадратного уравнения и т.д.)
Serge_Bliznykov вне форума   Ответить с цитированием
Старый 02.12.2016, 11:22   #6
igormel
Пользователь
 
Регистрация: 11.11.2016
Сообщений: 16
Репутация: 10
По умолчанию

Я в программировании нуб. Раз на то пошло, то пожалуйста, реите эту задачу для меня.
igormel вне форума   Ответить с цитированием
Старый 02.12.2016, 11:24   #7
igormel
Пользователь
 
Регистрация: 11.11.2016
Сообщений: 16
Репутация: 10
По умолчанию

Program Sq2;
Var A, B, C, D, X, X1, X2 : Real;
Begin
Writeln ('Введите коэффициенты уравнения (A, B, C) ');
readln(a,b,c);
If A=0 Then
If B=0 Then
If C=0 Then Writeln('X - любое число')
Else Writeln('Корней нет! ')
Else
Begin
X:=-C/B;
Writeln('X=',X:8:3);
End
Else
Begin
D:=B*B-4*A*C;
If D<0 Then Writeln ('Корней нет! ')
Else
Begin
X1:=(-B+SQRT(D))/2/A;
X2:=(-B-SQRT(D))/2/A;
Writeln ('X1=', X1:8:3, ' X2=',X2:8:3);
End;
End;
End.
Вот эта задача, но она без использования процедур. И тут обычное квадратное уравнение, но степени исправить я смогу.
igormel вне форума   Ответить с цитированием
Старый 02.12.2016, 11:56   #8
type_Oleg
Профессионал
 
Аватар для type_Oleg
 
Регистрация: 02.03.2008
Адрес: Хазарский каганат
Сообщений: 2,203
Репутация: 1204
По умолчанию

Цитата:
Сообщение от igormel Посмотреть сообщение
И тут обычное квадратное уравнение
Как вам уже советовали, возьмите корень квадратный из положительных корней.

По поводу процедур - непонятно, что вам непонятно. А объяснять вам основы Паскаль неохота, это элементарно, Ватсон.
Посмотрите по форуму в других темах, как создают процедуры. Тут уже 100500 раз такие вопросы были.
type_Oleg на форуме   Ответить с цитированием
Старый 02.12.2016, 12:04   #9
igormel
Пользователь
 
Регистрация: 11.11.2016
Сообщений: 16
Репутация: 10
По умолчанию

Пожалуйста, напишите саму процедуру. У меня после нового года экзамен, я в этом всём буду разбиратся. Именно сейчас мне нужна сама задача, Поэтому прошу вас
igormel вне форума   Ответить с цитированием
Старый 02.12.2016, 12:37   #10
type_Oleg
Профессионал
 
Аватар для type_Oleg
 
Регистрация: 02.03.2008
Адрес: Хазарский каганат
Сообщений: 2,203
Репутация: 1204
По умолчанию

Цитата:
Сообщение от igormel Посмотреть сообщение
Пожалуйста, напишите саму процедуру
Поиск корней квадратного уравнения:
Код:

procedure SQua2(A,B,C: Real;var D,x1,x2:Real);
var s:Real;
Begin
 D:=B*B-4*A*C;
 if D<0 then Exit;
 s:=Sqrt(D);
 x1:=(-B+s)/(2*A);
 x2:=(-B-s)/(2*A);
end;

После вызова провеять:
Код:

 if D<0 then Writeln ('Корней нет! ')
 // и т.д.

type_Oleg на форуме   Ответить с цитированием
Ответ



Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Pascal. Использовать функции/процедуры максич Паскаль 4 12.12.2015 10:51
Как использовать ListBox внутри своей функции\процедуры calypso C++ Builder 1 29.05.2013 17:37
Двумерная матрица. Решение Через Процедуры и функции. poseidonLOST Паскаль 1 16.12.2010 22:19
Решение биквадратного уравнения Котакот Помощь студентам 26 31.10.2009 21:19
Решение биквадратного уравнения Паскаль.... КиношкА Помощь студентам 8 19.12.2008 02:25




00:50.


Powered by vBulletin® Version 3.8.8 Beta 2
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.

Покупайте на сайте www.skinon.ru уникальные чехлы и наклейки для телефонов.
таргетированный трафик


как улучшить посещаемость, а также решения по монетизации сайтов, видео и приложений

RusProfile.ru


Справочник российских юридических лиц и организаций.
Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru