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

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

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

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

Паскаль. Задача с файлами, помогите пожалуйста

Valerosha

Ученик
Регистрация
7 Ноя 2011
Сообщения
1
Реакции
0
Баллы
0
Паскаль. Задача с файлами, помогите пожалуйста

Компоненты 2 матриц А и Б и вектора С записаны в 3 тесктовых файлах. Записать в другой файл:
(А+Б)*С=?
Я понимаю что основа вычислений в этом
Сложение матриц
Код Pascal1
for i:=1 to n do
for j:=1 to n do
c[i,j]:=a[i,j]+b[i.j];

и в этом:
Умножение матрицы на вектор
Код Pascal
for i:=1 to n do
begin
y:=0;
for j:=1 to n do
y:=y+c[i,j]*d[j];
end;

А не могу написать программу для файлов.... Помогите пожалуйста!!!!:tehnari_ru_837:
 
А не могу написать программу для файлов.... Помогите пожалуйста!!!!
Пожалуйста (пути и, возможно, имена файлов поставьте свои):
Код:
CONST
 M=10; {Number of lines}
 N=8; {Number of columns}
VAR
 f_A,f_B,f_C,f_R:Text;
 A,B:Array[1..M,1..N] of Integer;
 C:Array[1..N] of Integer;
 R:Array[1..M] of Integer;
 i,j:Integer;
BEGIN
 Randomize;
 Assign(f_A,'D:\Inp_A');
 Rewrite(f_A);
 Assign(f_B,'D:\Inp_B');
 Rewrite(f_B);
 Assign(f_C,'D:\Inp_C');
 Rewrite(f_C);
 for i:=1 to M do
  begin
   for j:=1 to N do
    begin
     A[i,j]:=-9+Random(19);
     write(f_A,A[i,j]:4);
     B[i,j]:=-9+Random(19);
     write(f_B,B[i,j]:4);
    end;
   writeln(f_A);
   writeln(f_B);
  end;
  for i:=1 to N do
   begin
    C[i]:=-9+Random(19);
    writeln(f_C,C[i]:4);
   end;
 Close(f_A);
 Close(f_B);
 Close(f_C);

 Reset(f_A);
 Reset(f_B);
 Reset(f_C);
 Assign(f_R,'D:\Out_R');
 Rewrite(f_R);
 for i:=1 to M do
  begin
   for j:=1 to N do
    begin
     read(f_A,A[i,j]);
     read(f_B,B[i,j]);
    end;
   readln(f_A);
   readln(f_B);
  end;
 for i:=1 to N do
  readln(f_C,C[i]);
 Close(f_A);
 Close(f_B);
 Close(f_C);
 for i:=1 to M do
  begin
   R[i]:=0;
   for j:=1 to N do
    R[i]:=R[i]+(A[i,j]+B[i,j])*C[j];
   writeln(f_R,R[i]:6);
  end;
 Close(f_R);
END.
 
Назад
Сверху