Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Прочее";
Текущий архив: 2008.06.08;
Скачать: [xml.tar.bz2];

Вниз

Уравнение с двумя неизвестными:   Найти похожие ветки 

 
sds   (2008-04-23 15:34) [0]

Необходима помощь с программкой.
Нужно написать программу которае решает систему уравнений с двумя неизвестными:
AX + BY + C = 0
A1X + B1Y + C1 = 0
Где A,B,C,A1,B1,C1 - вводятся пользователем,
а X и Y - неизвестные.
Я так понял что нужно описать 16 случаев типа (a=0) and (b=0) and  (a1<>0) and (b1=0)  и таких разных вариантов будет как раз 16 (чтобы небыло исключительных ситуаций деления на 0 и т.д.)
Но может быть есть более простой способ, может кто-либо уже делал такое.
Заранее большое спасибо.


 
Восхищенный   (2008-04-23 15:52) [1]

В школе говорили, что случаев всего 2: главный определитель равен нулю и нет.


 
MBo ©   (2008-04-23 15:53) [2]

Нужно выписать общее решение на бумаге -для системы из двух неизвестных подойдет метод Крамера, и перенести его на язык программирования.  Отдельно обрабатывается только случай с нулевым дискриминантом.


 
ПостОвый терминатор ©   (2008-04-23 15:55) [3]

> sds   (23.04.08 15:34)
Если разрешишь, то я за тебя поищу алгоритм или готовое решение на Yandex-e или Google


 
app ©   (2008-04-23 16:37) [4]

> ПостОвый терминатор  (23.04.2008 15:55:03)  [3]

Пусть сначал попробуют в Прочем


 
AlexDan ©   (2008-04-24 00:20) [5]

По-моему тут есть классические методы, вроде Рунге-Кутта и кого-то еще. Тут нужно читать математику, а не программирование.


 
DrPass ©   (2008-04-24 00:30) [6]

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


 
Petr V. Abramov ©   (2008-04-24 00:32) [7]

> Где A,B,C,A1,B1,C1 - вводятся пользователем,
а если пользователь ввел приличное слово вместо числа? вот это гимр, остальное математика


 
AlexDan ©   (2008-04-24 01:37) [8]

> DrPass ©
> Извращенцы. Два линейных уравнения с двумя неизвестными
> AlexDan ©
> По-моему тут есть классические методы, вроде Рунге-Кутта
> и кого-то еще.
Да-а, тут и я немного перестарался,  даже не подумал что задача настолько лёгкая, почему-то подумал об одном уравнении с двумя неизвестными)). В данном случае достаточно одной перестановки)).


 
MBo ©   (2008-04-24 05:07) [9]

>они тут метод Крамера вспоминают
Школьное решение с исключением неизвестных приводит к формулам Крамера :)


 
Дуб   (2008-04-24 06:36) [10]

Для данного уравнения возможны 4 случая:

1. Нет решений.
2. решение существует и это точка.
3. решение существует и множ1ество решений образует прямую.
4. решение существует и множдество решений образует плоскость.

Смотрится через ранг матрицы неизвестных и ранк основной матрицы.


 
KSergey ©   (2008-04-24 07:26) [11]

С программкой кто-нибудь уже поможет, в конце-то концов??!!
Флудеры, блин.


 
AlexDan ©   (2008-04-24 18:01) [12]

Y=(-AX-C)/B;
A1X+B1((-AX-C)/B)+C1=0; (Синтаксис TP и Делфи)
Отсюда можно найти Х. Решение можешь найти у младшего брата( Может он уже в третьем классе). Программирование вроде тоже не сложно. Хотя Билл Гейтс вроде калькулятор уже написал)).


 
БарЛог ©   (2008-04-24 18:17) [13]

Petr V. Abramov ©   (24.04.08 00:32) [7]
> а если пользователь ввел приличное слово вместо числа? вот это гимр, остальное математика

Осталось определиться, что есть число :)


 
Дуб   (2008-04-25 08:07) [14]

> A1X+B1((-AX-C)/B)+C1=0; (Синтаксис TP и Делфи)
> Отсюда можно найти Х.

А если B равно нулю?

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


 
KSergey ©   (2008-04-25 08:10) [15]

> Дуб   (25.04.08 08:07) [14]
> В биореактор таких советчиков.

Ты че такой злой? Неужто даже метлы недостойны?


 
boa_kaa ©   (2008-04-25 09:11) [16]


> AlexDan ©   (24.04.08 18:01) [12]
>
> Y=(-AX-C)/B;
> A1X+B1((-AX-C)/B)+C1=0; (Синтаксис TP и Делфи)

млин...
и где в делфи такой синтаксис?..


 
@!!ex ©   (2008-04-25 09:51) [17]

> [16] boa_kaa ©   (25.04.08 09:11)

И что не устраивает?
Код 100% соответствует дельфевому синтаксису.


 
KSergey ©   (2008-04-25 10:43) [18]

> @!!ex ©   (25.04.08 09:51) [17]
> > [16] boa_kaa ©   (25.04.08 09:11)
> Код 100% соответствует дельфевому синтаксису.

Не правда.
Не придумать окружение к этому куску, чтобы он без изменений скомпилялся.
Ну разве что в комментарии его :)


 
@!!ex ©   (2008-04-25 11:29) [19]

> [18] KSergey ©   (25.04.08 10:43)

правда ваша... :(
Скобок не хватает:
(A1X+B1((-AX-C)/B)+C1)=0;


 
atruhin ©   (2008-04-25 17:20) [20]

> [19] @!!ex ©   (25.04.08 11:29)

Не только!


 
@!!ex ©   (2008-04-25 17:26) [21]

> [20] atruhin ©   (25.04.08 17:20)

Что еще?


 
Alien1769 ©   (2008-04-25 17:55) [22]

Что еще?
оператора умножения :)


 
atruhin ©   (2008-04-25 18:13) [23]

> [21] @!!ex ©   (25.04.08 17:26)

Ну попробуй откомпилируй это выражение в Delphi
(A1X+B1((-AX-C)/B)+C1)=0;


 
@!!ex ©   (2008-04-25 18:19) [24]

> [22] Alien1769 ©   (25.04.08 17:55)
> умножения :)

И без него работает. :)


> [23] atruhin ©   (25.04.08 18:13)

Да пожалуйста:

function B1(v:single):single;
begin
 Result:=v;
end;

var
 bool:boolean;
 a1x,ax,c,b,c1:single;
begin
 bool:=(A1X+B1((-AX-C)/B)+C1)=0;
end.          



Страницы: 1 вся ветка

Форум: "Прочее";
Текущий архив: 2008.06.08;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.5 MB
Время: 0.044 c
2-1210838406
tytus
2008-05-15 12:00
2008.06.08
как в SendMessage передать строку?


2-1210841159
Шестаков Антон
2008-05-15 12:45
2008.06.08
Неактивые подменю


10-1146725232
abasheev
2006-05-04 10:47
2008.06.08
ошибка при создании XML документа


3-1198763654
squirrel
2007-12-27 16:54
2008.06.08
SQL запрос


15-1208888750
TIF
2008-04-22 22:25
2008.06.08
Всё, ухожу в прошлое... Всем пока





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский