Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум «Всё о Паскале» _ Задачи _ Немогу переделать(переписать) прогу!

Автор: metamfetamin 26.11.2007 0:44

Короче есть прога делит матрицу на блоки. Матрицы использывающиеся в программе с сцелочисленными значениями, а мне нужно что бы значение в файлах были типа 0.2 0.3 и т.д. (показано ниже) У меня вопрос что нужно изменить в программе кроме масива с integer на real что бы прогрмма могла открыть файлы описаны ниже:
Файлы:
programma.txt (прога которую нужно исправить)
matrix.txt (матрицы с целочисленными значениями которую я использую)
mx.txt (матрицы кторые мне нужно открыть в етой проге)


Программу и те матрицы которые я использывал в программе с целочисленными значениями прикрепил ниже!!!!!


Прикрепленные файлы
Прикрепленный файл  matrix.txt ( 183 байт ) Кол-во скачиваний: 236
Прикрепленный файл  programma.txt ( 6.71 килобайт ) Кол-во скачиваний: 284
Прикрепленный файл  mx.txt ( 387 байт ) Кол-во скачиваний: 219

Автор: metamfetamin 27.11.2007 14:47

Цитата(metamfetamin @ 25.11.2007 20:44) *
Короче есть прога делит матрицу на блоки. Матрицы использывающиеся в программе с сцелочисленными значениями, а мне нужно что бы значение в файлах были типа 0.2 0.3 и т.д. (показано ниже) У меня вопрос что нужно изменить в программе кроме масива с integer на real что бы прогрмма могла открыть файлы описаны ниже:
Файлы:
programma.txt (прога которую нужно исправить)
matrix.txt (матрицы с целочисленными значениями которую я использую)
mx.txt (матрицы кторые мне нужно открыть в етой проге)
Программу и те матрицы которые я использывал в программе с целочисленными значениями прикрепил ниже!!!!!


Короче изменил описание переменных масив описал как real:
Вот так было: (для целочисленных)
program umblok;
uses crt;
type mas=array[1..7,1..7] of integer;
var
m,n,k,i,j,p,s,r,l,l1,kk,w,g,t,SA11,SA12,SA21,SA22,SB11,SB12,SB21,SB22:integer;
a,b,c,d:mas;
A11,A12,A21,A22,B11,B12,B21,B22:mas;
z1,z2:boolean;
c01,c02,c03,c04,c05,c06,c07,c08:mas;
c11,c12,c21,c22:mas;
t1:text;
name1:string;


Вот так стало после моей поправки под те числа которые надо мне:
program umblok;
uses crt;
type mas=array[1..7,1..7] of real;
var
l1,kk,w,g,t,SA11,SA12,SA21,SA22,SB11,SB12,SB21,SB22:real;
s,r,l,p,i,j,m,n,k:integer;
a,b,c,d:mas;
A11,A12,A21,A22,B11,B12,B21,B22:mas;
z1,z2:boolean;
c01,c02,c03,c04,c05,c06,c07,c08:mas;
c11,c12,c21,c22:mas;
t1:text;


Но мне выдает ошибку в процедуре умножения
...
procedure umnog(X,Y:mas;mx,kx,nx:integer;var Z:mas);
begin
for i:=1 to mx do
for j:=1 to kx do
begin
s:=0;
for p:=1 to nx do
s:=s+X[i,p]*Y[p,j];
z[i,j]:=s;
end;
end;
...


в строке s:=s+X[i,p]*Y[p,j]; type mismatch
Матрицы и программа прицеплены в первом сообщение(если надо)

Автор: Ozzя 27.11.2007 14:58

s: real;

Автор: metamfetamin 27.11.2007 15:53

Цитата(Ozzя @ 27.11.2007 10:58) *

s: real;



Вроде работает!!!!Спасибо огромное!!!




Эскизы прикрепленных изображений
Прикрепленное изображение