• Добро пожаловать на компьютерный форум Tehnari.ru. Здесь разбираемся с проблемами ПК и ноутбуков: Windows, драйверы, «железо», сборка и апгрейд, софт и безопасность. Форум работает много лет, сейчас он переехал на новый движок, но старые темы и аккаунты мы постарались сохранить максимально аккуратно.

    Форум не связан с магазинами и сервисами – мы ничего не продаём и не даём «рекламу под видом совета». Отвечают обычные участники и модераторы, которые следят за порядком и качеством подсказок.

    Если вы у нас впервые, загляните на страницу о проекте, чтобы узнать больше. Чтобы создавать темы и писать сообщения, сначала зарегистрируйтесь, а затем войдите под своим логином.

    Не знаете, с чего начать? Создайте тему с описанием проблемы – подскажем и при необходимости перенесём её в подходящий раздел.
    Задать вопрос Новые сообщения Как правильно спросить
    Если пришли по ссылке со старого Tehnari.ru – вы на нужном месте, просто продолжайте обсуждение.

Матрица в Паскале

ксюха 13

Ученик
Регистрация
16 Ноя 2011
Сообщения
6
Реакции
0
Баллы
0
Матрица в Паскале

помогите пожалуйста, я совершенно не понимаю как нужно писать программы... а завтра нужен отчет:tehnari_ru_281:
задание звучит так. Дан массив А=(a_ij)mxn. элементы матрицы B вычисляются по формуле b_ij = {a_ij ,i не равно j
1 , i=j
найти матрицу B и сумму элементов ее k-того столбца.
A= (3.1 -4.4 -3.8 1.9)
(9.2 -6.5 -7.9 -0.8)
(-4.8 -1.1 2.5 3.9)
(2.2 4.6 -4.8 1.5)
k=2
 
мне не нужна сложная программа, что-то простое, но чтобы работала
 
помогите пожалуйста, я совершенно не понимаю как нужно писать программы...
Элементарно, Ватсон.
мне не нужна сложная программа, что-то простое, но чтобы работала
Вот... работает:
Код:
TYPE
 Matrix=Array[1..4,1..4] of Real;
CONST
 A:Matrix=(( 3.1, -4.4, -3.8,  1.9),
           ( 9.2, -6.5, -7.9, -0.8),
           (-4.8, -1.1,  2.5,  3.9),
           ( 2.2,  4.6, -4.8,  1.5));
VAR
 B:Matrix;
 i,j:Integer;
 Sum:Real;

BEGIN
 writeln('Matrix A:');
 For i:=1 to 4 do
  begin
   For j:=1 to 4 do write(A[i,j]:6:1);
   writeln;
  end;
 writeln;
 writeln('Matrix B:');
 For i:=1 to 4 do
  begin
   For j:=1 to 4 do
    begin
     if i=j then B[i,j]:=1.0 else B[i,j]:=A[i,j];
     write(B[i,j]:6:1);
    end;
   writeln;
  end;
 writeln;
 Sum:=0;
 For i:=1 to 4 do
  Sum:=Sum+B[i,2];
 writeln('Sum= ',Sum:0:1);
 readln
END.
 
спасибо огромное, отчет прошел на ура))))
 
а как эту программу написать через file?
 
а как эту программу написать через file?
"Элементарно, Ватсон!" ©
1. Создаем где-нибудь файл такого содержания:
Код:
  3.1 -4.4 -3.8  1.9
  9.2 -6.5 -7.9 -0.8
 -4.8 -1.1  2.5  3.9
  2.2  4.6 -4.8  1.5
У меня он назван Matr.dat и расположен на диске D:. Вы, конечно, можете обозвать и расположить его по-своему.
2. Пишем программу:
Код:
TYPE
 Matrix=Array[1..4,1..4] of Real;
VAR
 A,B:Matrix;
 i,j:Integer;
 Sum:Real;
 f:Text;

BEGIN
 Assign(f, 'D:\matr.dat');
 ReSet(f);
 For i:=1 to 4 do
  begin
   For j:=1 to 4 do read(f,A[i,j]);
   readln(f);
  end;
 Close(f);
 Append(f);
 Writeln(f);
 For i:=1 to 4 do
  begin
   For j:=1 to 4 do
    begin
     if i=j then B[i,j]:=1.0 else B[i,j]:=A[i,j];
     write(f,B[i,j]:5:1);
    end;
   writeln(f);
  end;
 writeln(f);
 Sum:=0;
 For i:=1 to 4 do
  Sum:=Sum+B[i,2];
 writeln(f,'Sum = ',Sum:0:1);
 Close(f);
END.
3. И после ее выполнения тот же файл должен приобрести такой вид:
Код:
  3.1 -4.4 -3.8  1.9
  9.2 -6.5 -7.9 -0.8
 -4.8 -1.1  2.5  3.9
  2.2  4.6 -4.8  1.5

  1.0 -4.4 -3.8  1.9
  9.2  1.0 -7.9 -0.8
 -4.8 -1.1  1.0  3.9
  2.2  4.6 -4.8  1.0

Sum = 0.1
 
я не поняла последний пункт, у меня файл этот не открывается
 
вы не могли бы посоветовать программу в которой можно решать задачи по химии.
нам задали семестровую сделать что-нибудь в любом пакете...
 
Назад
Сверху