Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Центр помощи > [Паскаль]матрицы


Автор: axilesa 16.7.2006, 18:42
помогите пожалуйста хоть намекните что делать((((((((((                          дана  квадратная матрица А порядка n : Получить матрицу АВ:элементы матрицыв вычисляются по формуле bij=1/i+j-1 smile 
 

Автор: Palladin 16.7.2006, 20:57
Условие неверное, или ты его неправильно написал, т.к. незачем задавать квадратную матрицу Аsmile ведь она не учавствует в вычислении

вообщем вот программа по твоему условию, но ещё раз повторяю условие неверное, уточни его

Код

programm RooR;
var
i,j,k,h,n:integer;
a,b:array[1..100] of real;              
begin
Writeln('vvedite razmernost massiva');
readln(n);
for i:=1 to n do
for j:=1 to n do 
begin
write('a[',i,']=');
readln(a[i,j]);
end;

for k:=1 to n do
for h:=1 to n do
begin
b[k,h]:=1/(k+h-1);
end;
//дальше вывод по дефолту, массив b сформирован




 

Автор: axilesa 24.7.2006, 16:33
Условие правильное!(я девушка)Спасибо что откликнулся!
 smile

Добавлено @ 16:35 
только там написано элементы матрицы В вычисляються по формуле 

Автор: Damarus 24.7.2006, 17:33
Цитата(RooR @  16.7.2006,  21:57 Найти цитируемый пост)
Условие неверное, или ты его неправильно написал, т.к. незачем задавать квадратную матрицу А ведь она не учавствует в вычислении


Цитата(axilesa @  24.7.2006,  17:33 Найти цитируемый пост)
Условие правильное!(я девушка)Спасибо что откликнулся!


Возможно условие выглядит так:

Цитата(axilesa @  16.7.2006,  19:42 Найти цитируемый пост)
дана  квадратная матрица А порядка n : Получить матрицу АВ:элементы матрицыв вычисляются по формуле bij=1/i+j-1


т.е.: дана квадратная матрица А порядка n, матрица B вычисляется по формуле B[i][j] = 1 / i + j - 1, получить матрицу C = A * B.
   

Автор: axilesa 24.7.2006, 19:08
да именно так))))))

Добавлено @ 19:10 
и как  же ее решить?????????
 smile  

Автор: Palladin 24.7.2006, 19:11
О дак понятно ща напишу smile  

Автор: Palladin 24.7.2006, 19:34
Код

Program RooR;
var
a:array[1..100,1..100] of integer;
b,c:array[1..100,1..100] of real;
i,j,n:integer;
begin
Writeln('vvedite poryadok matricbi');
readln(n);
for i:=1 to n do
for j:=1 to n do
begin
Write('a[',i,j,']=');
Readln(a[i,j]);
end;
 for i:=1 to n do
 for j:=1 to n do
 begin
 b[i,j]:=1/i+j-1;
 end;
  for i:=1 to n do
  for j:=1 to n do
   begin
   c[i,j]:=a[i,j]*b[j,i];
   end;
.............. // тут вывод незнаю просто что выводить матрицу с или все ;-) 
end.


Вроде всё парвильно, но единственное это умножение матрицsmile я точно не помню как их перемножать нужно smile 

Если не правильно то напиши как перемножать нужно правильно,я код подправлю 

Автор: axilesa 24.7.2006, 20:01
Спасибо большое ты меня спас))))))))))) 

Автор: Palladin 24.7.2006, 20:08
А всё вспомнилsmile))) вот такой вот код будет правильным

Код

Program RooR;
var
a:array[1..100,1..100] of integer;
c:array[1..20,1..20] of real;
b:array[1..20,1..20] of real;
i,j,n,k:integer;
t:real;
r:integer;
begin
Writeln('1) Vbichislenie');
Writeln('2) Uslovie');
Writeln('3) Avtor');
Writeln('4) Vbihod');
writeln;
writeln;
writeln;
Writeln('Vvedite nomer jelaemogo punkta i najmite ENTER!!!!!');
Readln(r);

case r of
1:
begin
t:=0;
Writeln('vvedite poryadok matricbi');
readln(n);
for i:=1 to n do
for j:=1 to n do
begin
Write('a[',i,',',j,']=');
Readln(a[i,j]);
end;
 for i:=1 to n do
 for j:=1 to n do
 begin
 b[i,j]:=1/i+j-1;
 end;
  for i:=1 to n do
  for j:=1 to n do
   begin
  for k:=1 to n do
    begin
     t :=t+a[i,k]*b[k, j];
    end;
   c[i,j]:=t;
   t:=0;
   end;
   for i:=1 to n do
   begin
    for j:=1 to n do
   begin
   write(' ',c[i,j]:2:2);
   end;
   Writeln;
   end;
   Readln;
   Readln;
   Writeln;
   Writeln('vbichislenie okoncheno!! Vvedite nomer jekaemogo punkta');
   Readln(r);
   end;
2:
   begin
   Writeln('Dana kvadratnaya matrica A poradka n');
   Writeln('Poluchitb matricu AB');
   Writeln('Esli matrica B vbichislyatsa po formule b[i,j]=1/i+j-1 ');
   Readln;
   Writeln;
   Writeln('Vvedite nomer jelaemogo punkta!!!!!!!!!');
   Readln(r);
   end;

3: begin
   Writeln('Avtorom dannoy programbi yavlyaets Kylechova Natalya');
   Writeln('Gruppa A22');
   Writeln('Zadanie 700A');
   Readln;
   Writeln;
   Writeln('vvedite nomer jelaemogo punkta!!!!!!!!!');
   Readln(r);
   end;



4:
end;
end.


Добавлено @ 20:14 
Протести хотьsmile 

P.S. Пылкая какая smile  smile  smile      

Последняя поправка(время 22:53 по Гомельскому времени(по московскому 23:53)) Щас уверен что всё работает, на процентов 99 smile    

Автор: axilesa 25.7.2006, 18:26
большое спасибо за помощь)это лучший форум!!!!!!! 

Автор: trim74 15.6.2010, 20:55
Спасибо большое у меня такое же задание в лабе.

Но вот одно но 
зачем вводить k
  for k:=1 to n do

если она не используется я сделал с i,j и все сработала.  smile 



Еще раз спс

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)