Форум программистов, компьютерный форум, киберфорум
Pascal ABC
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.61/18: Рейтинг темы: голосов - 18, средняя оценка - 4.61
0 / 0 / 0
Регистрация: 06.02.2012
Сообщений: 34

Сортировка и Решение системы линейных алгебраических уравнений, Метод Гаусса

27.05.2012, 10:40. Показов 3881. Ответов 20
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Программа должна выполнять сортировку данных смешанного типа, одной из следующих структур:
Структура записи:
фамилия;
должность;
оклад;
премия;
Исходная информация должна быть записана в текстовом файле в виде построчного списка, каждая строка которого должна соответствовать одному из вариантов структур. Файл исходных данных должен содержать 6 – 8 строк.
Каждый элемент информационной структуры (элемент массива) должен быть описан как тип данных "Запись", причем элементы каждого столбца списка должны быть представлены отдельным полем записи.
Сортировка массивов должна быть выполнена с помощью одного из следующих методов:

Сортировка с помощью прямого выбора.
Ключ сортировки (№ поля записи) 4.

Решить систему линейных алгебраических уравнений методом Гаусса.

aij= 5 -3 2 4
4 -2 3 7
8 -6 -1 -5
7 -3 7 17


bj= 7
10
4
17
Исходная информация должна быть записана в текстовом файле.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
27.05.2012, 10:40
Ответы с готовыми решениями:

Решение линейных алгебраических уравнений методом Гаусса
Помогите пожалуйста составить программу. Короче, нужно составить программу для решения с заданной точностью системы n линейных...

Решение системы линейных уравнений методом Гаусса
решить систему линейных уравнений вида Ax=b матрица коэффициентов системы A|| столбец свободных членов b 2.16 | 1.96 | 1.56 ...

Решение алгебраических (линейных) уравнений
Здесь вышла ошибка "вещественное деление на 0 (Program3.pas, строка 17)". Кто сможет поправить? Заранее большое спасибо! program...

20
 Аватар для jooma
6 / 6 / 0
Регистрация: 08.05.2012
Сообщений: 42
27.05.2012, 13:52
Вот моё решение уравнений методом Гаусса:
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
uses crt;
 
type vec=array[1..5] of real;
mas=array[1..5] of vec;
 
var a:mas;b,x,l:vec;
h,s:real;
i,j,k,n:integer;
 
Begin 
Clrscr;
n:=4;
assign(inp,'inp.txt'); //a[1,1], a[1,2],.....,a[4,4], b[1]....b[4]- содержание файла inp.txt всё в один столбец
reset(inp);
read(inp,a[1,1], a[1,2],.....,a[4,4], b[1]....b[4]); //Прописать полностью эллементы
close(inp);
 
writeln('Исходная матрица');
for i:=1 to n do begin
write(i);
for j:=1 to n do
write(a[i,j]:10:5);
writeln(b[i]:10:5) end;
writeln; writeln; writeln;
{исключение переменных}
for i:=1 to n-1 do
for j:=i+1 to n do begin
a[j,i]:=-a[j,i]/a[i,i];
for k:=i+1 to n do
a[j,k]:=a[j,k]+a[j,i]*a[i,k];
b[j]:=b[j]+a[j,i]*b[i] end;
x[n]:=b[n]/a[n,n];
{нахождение корней}
for i:=n-1 downto 1 do begin
h:=b[i];
for j:=i+1 to n do h:=h-x[j]*a[i,j];
x[i]:=h/a[i,i]; end;
writeln('Корни уравнения');
for i:=1 to n do writeln('x(',i,')=',x[i]:10:5);
s:=x[1]+x[2]+x[3]+x[4]+x[5];
writeln;
readkey
end.
Вот должен работать
а первое не знаю как делать...
1
0 / 0 / 0
Регистрация: 06.02.2012
Сообщений: 34
27.05.2012, 13:57  [ТС]
jooma, спасибо,только пишет что inp неизвестный индетификатор
0
 Аватар для jooma
6 / 6 / 0
Регистрация: 08.05.2012
Сообщений: 42
27.05.2012, 14:19
ой, ну его описать в переменных надо как текст. забыла inp:text; во вот так, просто у меня с ручным вводом была эта прога )
1
0 / 0 / 0
Регистрация: 06.02.2012
Сообщений: 34
27.05.2012, 14:21  [ТС]
jooma,
это я исправил)потом додумался,но
теперь пишет в этой строке
read(inp,'a[1,1], a[1,2],.....,a[4,4], b[1]....b[4]);
неверное выражение,пытался исправить но тщетно.
0
 Аватар для jooma
6 / 6 / 0
Регистрация: 08.05.2012
Сообщений: 42
27.05.2012, 14:26
там ковычка... наверно скопировалось, и их еще все в ряд надо прописать.
1
0 / 0 / 0
Регистрация: 06.02.2012
Сообщений: 34
27.05.2012, 14:30  [ТС]
jooma,
то есть написать числа из чего состоит матрица
0
 Аватар для jooma
6 / 6 / 0
Регистрация: 08.05.2012
Сообщений: 42
27.05.2012, 14:33
да )))))))))
1
0 / 0 / 0
Регистрация: 06.02.2012
Сообщений: 34
27.05.2012, 14:34  [ТС]
jooma,
0
 Аватар для jooma
6 / 6 / 0
Регистрация: 08.05.2012
Сообщений: 42
27.05.2012, 14:37
read(inp,a[1,1], a[1,2],a[1,3],a[1,4],a[2,1],a[2,2],a[2,3],a[2,4],a[3,1],a[3,2],a[3,3],a[3,4],a[4,1],a[4,2],a[4,3],a[4,4], b[1],b[2],b[],b[4]); вот такая строка быть должна

Добавлено через 29 секунд
b[3] забыла
1
0 / 0 / 0
Регистрация: 06.02.2012
Сообщений: 34
27.05.2012, 14:37  [ТС]
jooma,
при много благодарен
0
 Аватар для jooma
6 / 6 / 0
Регистрация: 08.05.2012
Сообщений: 42
27.05.2012, 14:39
сама недавно такой штукой страдала тоже зачет?
0
0 / 0 / 0
Регистрация: 06.02.2012
Сообщений: 34
27.05.2012, 14:42  [ТС]
jooma,
хуже курсовая
прошу прощения но теперь пишет
массив имеет другое количество размерностей
0
 Аватар для jooma
6 / 6 / 0
Регистрация: 08.05.2012
Сообщений: 42
27.05.2012, 14:49
сейчас сама попробую и исправленную кину сюда)
1
0 / 0 / 0
Регистрация: 06.02.2012
Сообщений: 34
27.05.2012, 14:50  [ТС]
jooma,
хорошо
0
 Аватар для jooma
6 / 6 / 0
Регистрация: 08.05.2012
Сообщений: 42
27.05.2012, 15:14
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
uses crt;
 
type vec=array[1..4] of real;
mas=array[1..4,1..4] of real;
 
var a:mas; b,x:vec;
h,s:real;
i,j,k,n:integer;
inp:text;
 
Begin
Clrscr;
n:=4;
assign(inp,'inp.txt'); //a[1,1], a[1,2],.....,a[4,4], b[1]....b[4]- содержание файла inp.txt всё в один столбец
reset(inp);
read(inp,a[1,1],a[1,2],a[1,3],a[1,4],a[2,1],a[2,2],a[2,3],a[2,4],a[3,1],a[3,2],a[3,3],a[3,4],a[4,1],a[4,2],a[4,3],a[4,4], b[1],b[2],b[3],b[4]); //Прописать полностью эллементы
close(inp);
 
writeln('Исходная матрица');
for i:=1 to n do begin
write(i);
for j:=1 to n do
write(a[i,j]:10:5);
writeln(b[i]:10:5) end;
writeln; writeln; writeln;
{исключение переменных}
for i:=1 to n-1 do
for j:=i+1 to n do begin
a[j,i]:=-a[j,i]/a[i,i];
for k:=i+1 to n do
a[j,k]:=a[j,k]+a[j,i]*a[i,k];
b[j]:=b[j]+a[j,i]*b[i] end;
x[n]:=b[n]/a[n,n];
{нахождение корней}
for i:=n-1 downto 1 do begin
h:=b[i];
for j:=i+1 to n do h:=h-x[j]*a[i,j];
x[i]:=h/a[i,i]; end;
writeln('Корни уравнения');
for i:=1 to n do writeln('x(',i,')=',x[i]:10:5);
s:=x[1]+x[2]+x[3]+x[4];
writeln;
readkey
end.
вот, считает, но как-то странно... особенно последний 4й корень

Добавлено через 1 минуту
41 строка у меня с другой проги осталась, можно выкинуть))
0
0 / 0 / 0
Регистрация: 06.02.2012
Сообщений: 34
27.05.2012, 15:15  [ТС]
jooma,
действительно странно,у меня вообще только нули выдает
0
 Аватар для jooma
6 / 6 / 0
Регистрация: 08.05.2012
Сообщений: 42
27.05.2012, 15:23
где нули?
0
0 / 0 / 0
Регистрация: 06.02.2012
Сообщений: 34
27.05.2012, 15:24  [ТС]
jooma,
когда выдает результат
0
 Аватар для jooma
6 / 6 / 0
Регистрация: 08.05.2012
Сообщений: 42
27.05.2012, 15:29
http://motion.clan.su/bezymjannyj.jpg
у меня вот так, при том, что в файле записаны числа в виде:
5
-3
2
4
4
-2
3
7
8
-6
-1
-5
7
-3
7
1
7
7
10
4
17
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
27.05.2012, 15:29
Помогаю со студенческими работами здесь

Система линейных алгебраических уравнений (метод Зейделя)
Помогите нужно решить систему методом Зейделя я то пробовал у меня выдает ошибку в чем ошибка? const a: array of real =...

Решение системы линейных уравнений
___/sin^2x * cos x, если x<0.1, x=3; y=|x+2, если 0.1<x<1, x>4; ___\cos x /2x, в остальных случаях. ...

Найти решение системы линейных уравнений
Найти решение системы линейных уравнений c1:=a1*x+b1*y и c2:=a2*x+b2*y если известно что данная система имеет единственное решение. Не...

Найти решение системы линейных уравнений
Даны действительные числа a, b, c, d, e, f. Выяснить, верно ли, что ae-bd>0.0001, и если верно, то найти решение системы линейных...

Найти решение системы линейных уравнений методом Гауса
Найти решение системы линейных уравнений методом Гауса a1x+b1y+c1=0 a2x+b2y+c2=0 Где a1=14, b1=1, c1=20 a2=20, b2=1, c2=14


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Основы отладки веб-приложений на SDL3 по USB и Wi-Fi, запущенных в браузере мобильных устройств
8Observer8 07.02.2026
Содержание блога Браузер Chrome имеет средства для отладки мобильных веб-приложений по USB. В этой пошаговой инструкции ограничимся работой с консолью. Вывод в консоль - это часть процесса. . .
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru