Модераторы: Poseidon
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> [Delphi]методы решения Слау, Метод Гауса и Крамера 
:(
    Опции темы
valentos
Дата 9.5.2007, 12:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 187
Регистрация: 7.12.2006
Где: Belarussia, Gomel

Репутация: 2
Всего: 2



Я бы конечно и сам бы сделал прогу, тока не фурычу я в этих методах(Краммер,Гаус),
так что плз кто-нибудь сделайте прогу, и выложите ее сдесь. Или хотяб обьясните как решать этими 2 методами СЛАУ

1.    В среде Delphi методом Крамера и Гауса, написать приложение, осуществляющее решение СЛАУ.
2.    При разработке интерфейса приложения использовать компоненты  TPageControl.
3.    Создать новый тип объекта TDesSLAU и объект, содержащий:
свойства: 
1)    основную матрицу системы, 
2)    столбец свободных членов, 
3)    вектор неизвестных значений;
     методы
1)    вычисления определителя 3-го порядка, 
2)    соответствующий метод решения СЛАУ.

Вот прога, надо ее закончить!!!!!!!(17kb)


Присоединённый файл ( Кол-во скачиваний: 11 )
Присоединённый файл  lab4.rar 16,92 Kb
--------------------
[code=sql]select name, telephone from Girls where age between 20 and 25 and (.)(.) >= 2 order by IQ desc [/code]
PM MAIL   Вверх
valentos
Дата 9.5.2007, 13:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 187
Регистрация: 7.12.2006
Где: Belarussia, Gomel

Репутация: 2
Всего: 2



Цитата(keenara @  9.5.2007,  12:57 Найти цитируемый пост)
Если мозги есть - сообразишь родить прогу

Для человека, который в первый раз видит эти методы, я думаю сложновато родить! smile 

--------------------
[code=sql]select name, telephone from Girls where age between 20 and 25 and (.)(.) >= 2 order by IQ desc [/code]
PM MAIL   Вверх
valentos
Дата 9.5.2007, 14:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 187
Регистрация: 7.12.2006
Где: Belarussia, Gomel

Репутация: 2
Всего: 2



Занимательно, а как считать определитель по правилу треугольника? smile 
--------------------
[code=sql]select name, telephone from Girls where age between 20 and 25 and (.)(.) >= 2 order by IQ desc [/code]
PM MAIL   Вверх
valentos
Дата 9.5.2007, 14:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 187
Регистрация: 7.12.2006
Где: Belarussia, Gomel

Репутация: 2
Всего: 2



Там в коде(прога в 1 сообщении(17kb)) вроде что-то пахожее есть, тока я не знаю, допустим пользователь введет массив больше чем 3х3, что тогда?
--------------------
[code=sql]select name, telephone from Girls where age between 20 and 25 and (.)(.) >= 2 order by IQ desc [/code]
PM MAIL   Вверх
valentos
Дата 9.5.2007, 16:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 187
Регистрация: 7.12.2006
Где: Belarussia, Gomel

Репутация: 2
Всего: 2



ТОгда, другой вопрос: следующее задание у меня такое же, тока с Дин.Массивом?--спрашивается нафига там Дин.Массив?
--------------------
[code=sql]select name, telephone from Girls where age between 20 and 25 and (.)(.) >= 2 order by IQ desc [/code]
PM MAIL   Вверх
valentos
Дата 9.5.2007, 16:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 187
Регистрация: 7.12.2006
Где: Belarussia, Gomel

Репутация: 2
Всего: 2



НЕА,
1.    Выполнить задания из лабораторной работы №4 с использованием динамических массивов.
2.    Методы решения СЛАУ оформить отдельные процедурами и разметить в DLL.
3.    Разработать тесты для верификации созданного приложения
И усе  smile 
--------------------
[code=sql]select name, telephone from Girls where age between 20 and 25 and (.)(.) >= 2 order by IQ desc [/code]
PM MAIL   Вверх
keenara
Дата 9.5.2007, 16:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 55
Регистрация: 2.2.2007

Репутация: 2
Всего: 2



Странное задание. Скорее всего сказали юзать динамические массивы просто чтобы задачу усложнить. Потому что произвольной матрица у нас быть не может, так как вычисление ее определителя - отдельная геморройная задача, решения которой простым и нерекурсивным способом я не вижу. А поскольку глубина рекурсии в нашем случае будет весьма значительной, от этой идеи стоит отказаться.
Поэтому давай все же раз в лабе 4 сказано что матрица 3 на 3 а в 5 сказано что делать то же самое, будем считать что у нас и в данной лабе массив 3 на 3. Вот и все. Просто замени массив на динамический.
PM MAIL   Вверх
valentos
Дата 9.5.2007, 17:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 187
Регистрация: 7.12.2006
Где: Belarussia, Gomel

Репутация: 2
Всего: 2



Цитата(keenara @  9.5.2007,  16:57 Найти цитируемый пост)
Просто замени массив на динамический

Я так и сделаю когда заработает первая прога!
--------------------
[code=sql]select name, telephone from Girls where age between 20 and 25 and (.)(.) >= 2 order by IQ desc [/code]
PM MAIL   Вверх
valentos
Дата 9.5.2007, 20:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 187
Регистрация: 7.12.2006
Где: Belarussia, Gomel

Репутация: 2
Всего: 2



ПЛЗ, помогите не знаю че делать smile  smile 
Скачайте мою лабу и родите там чего нибудь, Плиз!!!!

Это сообщение отредактировал(а) valentos - 9.5.2007, 20:53
--------------------
[code=sql]select name, telephone from Girls where age between 20 and 25 and (.)(.) >= 2 order by IQ desc [/code]
PM MAIL   Вверх
Romkin
Дата 10.5.2007, 16:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 189
Регистрация: 14.11.2006
Где: Москва

Репутация: 1
Всего: 5



Цитата(keenara @  10.5.2007,  15:00 Найти цитируемый пост)
вы не подскажете как в Паскале передать двумерный массив в функцию?

Код

type 
  TMatrix = array of array of Double;

procedure Det(M: TMatrix): Double;

и тд. Смысл в том, что нужно объявлять тип. Инициализация: SetLength(M, 3, 3); Нумерация от 0. По сути - smart pointer
PM ICQ   Вверх
valentos
Дата 11.5.2007, 08:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 187
Регистрация: 7.12.2006
Где: Belarussia, Gomel

Репутация: 2
Всего: 2



А Гауса-- кто нибудь знает?
--------------------
[code=sql]select name, telephone from Girls where age between 20 and 25 and (.)(.) >= 2 order by IQ desc [/code]
PM MAIL   Вверх
Romkin
Дата 11.5.2007, 09:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 189
Регистрация: 14.11.2006
Где: Москва

Репутация: 1
Всего: 5



PM ICQ   Вверх
valentos
Дата 11.5.2007, 21:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 187
Регистрация: 7.12.2006
Где: Belarussia, Gomel

Репутация: 2
Всего: 2



Может все таки кто нибудь доделает(сделает) прогу, Вот она:

Присоединённый файл ( Кол-во скачиваний: 6 )
Присоединённый файл  lab4.rar 16,92 Kb
--------------------
[code=sql]select name, telephone from Girls where age between 20 and 25 and (.)(.) >= 2 order by IQ desc [/code]
PM MAIL   Вверх
Zanoza
Дата 14.5.2007, 13:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 5
Регистрация: 6.5.2007
Где: Ростов-на-Дону

Репутация: нет
Всего: нет



Valentos, вот метод Гаусса, правда на паскале, может поможет  smile 
Код

program Method_Gaussa;

uses crt;

const  N=4;

var    A:array[1..N,1..N] of real;
       b:array[1..N] of real;
       x:array[1..N] of real;
       i,j:integer;

{///////////////////////////////////////////////////////////////////////////}
procedure Vvod;
begin
    writeln ('Vvedite elementi rasshirennoi matrici koefficientov:');
    writeln;
    for i:=1 to N do
        begin
        for j:=1 to N do
            begin
            write('a[' ,i:2, ',' ,j:2, ']=');
            readln(A[i,j]);
            end;
        write('b[' ,i:2, ']=');
        readln(b[i]);
        end;
end;

{///////////////////////////////////////////////////////////////////////////}
procedure vivod_A;
begin
     for i:=1 to N do
         for j:=1 to N do
             begin
             writeln;
             for j:=1 to N do
             write (A[i,j]:8);
             end;
         writeln;
         writeln;
end;

{///////////////////////////////////////////////////////////////////////////}
procedure Reformation;
var k,r:integer;
    mx,c,M:real;
begin
    for k:=1 to N do
        begin
        mx:=abs(A[k,k]);
        r:=k;
        for i:=k+1 to N do
            if abs(A[i,k])>mx then
               begin
               mx:=abs(A[i,k]);
               r:=i;
               end;
        for j:=1 to N do
            begin
            c:=A[k,j];
            A[k,j]:=A[r,j];
            A[r,j]:=c;
            end;
        c:=b[k];
        b[k]:=b[r];
        b[r]:=c;
        for i:=k+1 to N do
            begin

            M:=(A[i,k]/A[k,k]);
            for j:=k to N do
            A[i,j]:=A[i,j]-(M*A[k,j]);
            b[i]:=b[i]-(M*b[k]);
            end;
        end;
end;

{////////////////////////////////////////////////////////////////////////////}
procedure Reverse;
var s:real;
begin
    if A[N,N]=0 then
        if b[N]=0
               then writeln('Besconechnoe mnojestvo reshenii')
               else writeln('Reshenii net')
       else for i:=N downto 1 do
               begin
                   s:=0;
                   for j:=i+1 to N do
                   s:=s+A[i,j]*x[j];
               x[i]:=(b[i]-s)/A[i,i];
               writeln('x[' ,i:2, ']=',x[i]);
               end;

end;

{////////////////////////////////////////////////////////////////////////////}
begin
clrscr;

      Vvod;

      Reformation;

      {Vivod_A;}

      Reverse;

readln;
end.

PM MAIL   Вверх
valentos
Дата 14.5.2007, 18:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 187
Регистрация: 7.12.2006
Где: Belarussia, Gomel

Репутация: 2
Всего: 2



Zanoza, вроде то что надо! Надеюсь правильно работает алгоритм?!
СПСБ! smile 
--------------------
[code=sql]select name, telephone from Girls where age between 20 and 25 and (.)(.) >= 2 order by IQ desc [/code]
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Центр помощи"

ВНИМАНИЕ! Прежде чем создавать темы, или писать сообщения в данный раздел, ознакомьтесь, пожалуйста, с Правилами форума и конкретно этого раздела.
Несоблюдение правил может повлечь за собой самые строгие меры от закрытия/удаления темы до бана пользователя!


  • Название темы должно отражать её суть! (Не следует добавлять туда слова "помогите", "срочно" и т.п.)
  • При создании темы, первым делом в квадратных скобках укажите область, из которой исходит вопрос (язык, дисциплина, диплом). Пример: [C++].
  • В названии темы не нужно указывать происхождение задачи (например "школьная задача", "задача из учебника" и т.п.), не нужно указывать ее сложность ("простая задача", "легкий вопрос" и т.п.). Все это можно писать в тексте самой задачи.
  • Если Вы ошиблись при вводе названия темы, отправьте письмо любому из модераторов раздела (через личные сообщения или report).
  • Для подсветки кода пользуйтесь тегами [code][/code] (выделяйте код и нажимаете на кнопку "Код"). Не забывайте выбирать при этом соответствующий язык.
  • Помните: один топик - один вопрос!
  • В данном разделе запрещено поднимать темы, т.е. при отсутствии ответов на Ваш вопрос добавлять новые ответы к теме, тем самым поднимая тему на верх списка.
  • Если вы хотите, чтобы вашу проблему решили при помощи определенного алгоритма, то не забудьте описать его!
  • Если вопрос решён, то воспользуйтесь ссылкой "Пометить как решённый", которая находится под кнопками создания темы или специальным флажком при ответе.

Более подробно с правилами данного раздела Вы можете ознакомится в этой теме.

Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Poseidon, Rodman

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Центр помощи | Следующая тема »


 




[ Время генерации скрипта: 0.0966 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.