Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Работа для программиста > Фриланс
Регистрация

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

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 23.06.2019, 17:00   #1
Skeezmo
Новичок
Джуниор
 
Регистрация: 23.06.2019
Сообщений: 0
По умолчанию [Pascal] Заплачу 100 рублей за правильное решение

Код:
program project1;
type
massive = array [1..100,1..100] of integer;
RealMassive = array [1..100,1..100] of real;
var i,j,n,Ex_Pr: integer;
det: real;
Mas: array[1..100,1..100] of integer;
File_Matrix: text;
procedure WriteInFile(mas: massive; Zagolovok: string); {Запись результата в файл}
var k,i: integer;
begin
append(File_Matrix);
writeln(File_Matrix);
writeln(File_Matrix, Zagolovok);
for i:= 1 to n do
begin
for k:= 1 to n do
begin
write(File_Matrix, mas[i,k]);
end;
writeln(File_Matrix);
end;
close(File_Matrix);
end;

procedure SumEL(j,f: integer);{Сумма элементов 2}
var m,i,Sum: integer;
begin
append(File_Matrix);
for m:= 1 to n do
begin
Sum:= mas[j,m] + mas[m,f];
writeln(mas[j,m],'+',mas[m,f],'=',Sum);
writeln(File_Matrix);
write(File_Matrix,'sum= ',mas[j,m],'+',mas[m,f],'=',Sum);
end;
writeln(File_Matrix);
close(file_matrix);
end;

Procedure SumElement; {сумма элементов}
var i,j,k,f : integer;
begin
for i:= 1 to n do
begin
for k:= 1 to n do
begin
write(mas[i,k],' ');
end;
writeln();
end;
writeln('Enter string number');
readln(j);
writeln('Enter coloumn number');
readln(f);
SumEl(j,f);
end;

Procedure SpinMatrix; {Вращение матрицы}
var i,k,f: integer;
New_Mas: array[1..100,1..100] of integer;
begin
f:= n;
for i:= 1 to n do {Цикл вращения матрицы}
begin
for k:= 1 to n do
begin
New_Mas[k,f]:= mas[i,k];
end;
dec(f);
end; {/Цикл вращения матрицы}
for i:= 1 to n do {Вывод матрицы (Перевернутой)}
begin
for k:= 1 to n do
begin
write(New_Mas[i,k],' ');
end;
writeln();
end;
WriteInFile(New_Mas,'Rotation');
end; {/Вывод матрицы (Перевернутой)}

Procedure Transpose; {Транспонирование}
var i,k: integer;
New_Mas: array[1..100,1..100] of integer;
begin
for i:= 1 to n do
begin
for k:= 1 to n do
begin
if i <> k then
New_Mas[i,k]:= mas[k,i]
else
New_Mas[i,k]:= Mas[i,k];
write(New_Mas[i,k],' ');
end;
writeln();
end;
WriteInFile(New_Mas, 'Transpose');
end;
procedure Per(k,n:integer;var a:RealMassive; var p:integer);
var i,j:integer;z:real;
begin
z:=a[k,k];
i:=k;
p:=0; //после каждого преобразования
for j:=k+1 to n do //ищем по оставшимся строкам
begin
if abs(a[j,k])>z then //максимальный по модулю элемент
begin
z:=abs(a[j,k]);
i:=j; //запоминаем номер строки
p:=p+1;//считаем количество перестановок, т.к. при каждой
//перестановке меняется знак определителя
end;
end;
if i>k then //если эта строка ниже данной
for j:=k to n do
begin
z:=a[i,j];
a[i,j]:=a[k,j];
a[k,j]:=z;//перестановка
end;
end;
function znak(p:integer):integer;//ф-я определения знака определителя
begin
if (p mod 2 <> 0) then //если четное количество перестановок, "+" , если нет "-"
znak:=1
else
znak:=-1;
end;
procedure determinante(n:integer;var a:RealMassive;var det:real);//собственно определитель
var k,i,j,p:integer;
r:real;
begin
det:=1;
for k:=1 to n do //считаем по алгоритму, который во всех учебниках
begin
if a[k,k]=0 then per(k,n,a,p);//если главный элемент=0, делаем перестановку
det:=znak(p)*det*a[k,k]; //меняем знак определителя
for j:=k+1 to n do //делаем преобразования
begin
r:=a[j,k]/a[k,k];
for i:=k to n do
begin
a[j,i]:=a[j,i]-r*a[k,i];
end;
end;
end;
end;
procedure _Real_Massive(mas: massive); {Преобразует массив в вещественный тип}
var Real_Massive: array [1..100,1..100] of real;
i,k: integer;
begin
for i:= 1 to n do
for k:= 1 to n do
Real_Massive[i,k]:= mas[i,k]/1;
determinante(n,real_Massive,det);
writeln('Determinante= ', det:0:2);
append(File_Matrix);
writeln(File_Matrix);
write(File_Matrix,'det= ',det:0:2);
close(file_matrix);
end; {/Преобразует массив в вещественный тип}

procedure MainMenu; {Главное меню}
var task: integer;
begin
writeln(' ** Main Menu ** ');
writeln;
writeln('Enter task number');
writeln('1. Sum Elements');
writeln('2. Matrix Rotation');
writeln('3. Matrix Transpose');
writeln('4. Determinant');
writeln('5. Exit from the
program');
readln(task);
case task of
1: SumElement;
2: SpinMatrix;
3: Transpose;
4: _Real_Massive(mas);
5: Ex_Pr:= 1;
end;
end;

begin {Основная программа}
randomize;
Курсовая работа. Сделал программу - не фурычит. В массивах полный 0, прошу помощи, плачу 100 рублей за правильное решение (программа выполняет свои функции без ошибок).
Задание, если нужно:
Вариант 15
Для матрицы А=|aij|, где i изменяется от 0 до N-1, j - от 0 до N-1, написать
подпрограммы, выполняющие следующие преобразования: − сложение элементов заданной строки с элементами заданного столбца (номера
строки и столбца – формальные параметры) − поворот матрицы на 90 градусов по часовой стрелке − транспонирование матрицы относительно главной диагонали − вычисление определителя матрицы
Программа должна обеспечить выбор конкретного преобразования

Последний раз редактировалось Skeezmo; 23.06.2019 в 17:02. Причина: Не указал тему
Skeezmo вне форума Ответить с цитированием
Старый 23.06.2019, 17:02   #2
alexcoder
Форумчанин
 
Регистрация: 31.05.2009
Сообщений: 786
По умолчанию

Skeezmo, обращайтесь e-mail: informatik101@mail.ru
Telegram: @alexcoder1
vk.com/alexcoder1
Дороже
Помощь с программами:
vk.com/alexcoder1
e-mail: informatik101@mail.ru
alexcoder вне форума Ответить с цитированием
Старый 23.06.2019, 17:03   #3
Вадим Мошев

Старожил
 
Аватар для Вадим Мошев
 
Регистрация: 12.11.2010
Сообщений: 8,568
По умолчанию

Цитата:
Сообщение от Skeezmo Посмотреть сообщение
Курсовая работа
Цитата:
Сообщение от Skeezmo Посмотреть сообщение
прошу помощи, плачу 100 рублей за правильное решение (программа выполняет свои функции без ошибок).
...
Вадим Мошев вне форума Ответить с цитированием
Старый 23.06.2019, 17:05   #4
Skeezmo
Новичок
Джуниор
 
Регистрация: 23.06.2019
Сообщений: 0
По умолчанию

Ну вот так вот. С работой не успеваю , а курсач сам себя не напишет.
Skeezmo вне форума Ответить с цитированием
Старый 23.06.2019, 17:06   #5
Skeezmo
Новичок
Джуниор
 
Регистрация: 23.06.2019
Сообщений: 0
По умолчанию

Написал вам на @mail
Skeezmo вне форума Ответить с цитированием
Старый 23.06.2019, 17:06   #6
Skeezmo
Новичок
Джуниор
 
Регистрация: 23.06.2019
Сообщений: 0
По умолчанию

Цитата:
Сообщение от alexcoder Посмотреть сообщение
Skeezmo, обращайтесь e-mail: informatik101@mail.ru
Telegram: @alexcoder1
vk.com/alexcoder1
Дороже
Написал.
Skeezmo вне форума Ответить с цитированием
Старый 24.06.2019, 05:25   #7
Cuprum5
Форумчанин
 
Регистрация: 09.05.2017
Сообщений: 735
По умолчанию

Здравствуйте, Skeezmo. Пишите, пожалуйста, мне на почту: sergeisky@yahoo.com
Напишу программу на C++ и Asm для AVR. Черчение: sergeisky@yahoo.com.
Cuprum5 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Проверьте, правильное ли решение? Vyacheslav. Паскаль, Turbo Pascal, PascalABC.NET 14 15.11.2017 14:45
Заплачу за решение Juicer_30 Фриланс 6 16.08.2017 23:03
Более правильное решение ndiezel Общие вопросы C/C++ 7 21.04.2013 21:32
Решение правильное маГГ85 PHP 2 15.12.2011 21:30
ВЫРУЧАЙТЕ ЗНАТАКИ, ЗАПЛАЧУ 250 рублей. Rad van Cor Фриланс 2 03.03.2010 13:34