Короче есть прога делит матрицу на блоки. Матрицы использывающиеся в программе с сцелочисленными значениями, а мне нужно что бы значение в файлах были типа 0.2 0.3 и т.д. (показано ниже) У меня вопрос что нужно изменить в программе кроме масива с integer на real что бы прогрмма могла открыть файлы описаны ниже: Файлы: programma.txt (прога которую нужно исправить) matrix.txt (матрицы с целочисленными значениями которую я использую) mx.txt (матрицы кторые мне нужно открыть в етой проге)
Программу и те матрицы которые я использывал в программе с целочисленными значениями прикрепил ниже!!!!!
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;
Вроде работает!!!!Спасибо огромное!!!
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.