|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
02.05.2011, 11:24 | #1 |
Новичок
Джуниор
Регистрация: 25.04.2011
Сообщений: 1
|
матрицы. ввод из файла. проблема.
подскажите, пожалуйста что нужно исправить в этой программе. мучаюсь уже неделю.
может ввод из файла неправильно записан или в самой программе лага??? и какие исходные данные должны быть в текстовом документе? может там что-то неправильно пишу?? вот задание Выполнить над прямоугольной матрицей В размером m х n последовательность действий: а) Заменить заданным вектором столбцы матрицы В, содержащие хотя бы один нулевой элемент; б) в полученной матрице вычислить суммы элементов строк, номера которых задаются целочисленным вектором. вот программа Program Matrix; uses crt; const m=5; n=4; {размерности массивов} type range=1..n; {значения для элементов вектора не более числа столбцов} a=array[1..m,1..n] of byte; v=array[1..m] of range; var f:text; b: a; vect: v; i, j:integer; procedure get_data(var f:text;var b:a; var vect:v); var i,j: byte; begin assign(f,'in.txt'); reset(f); for i:=1 to m do for j:=1 to n do read(f,b[i,j]); for i:=1 to m do read(f, vect[i]); close(f); end; procedure replace_column(vect:v; var b:a); var i,j,k: byte; begin for i:=1 to m do for j:=1 to n do if b[i,j]=0 then {если найден нулевой элемент} for k:=1 to m do b[k,j]:=vect[k]; {то весь j-й столбец прописываем значениями из вектора} end; function get_sum(b:a; vect:v):longint; var sum: longint; i,j: byte; begin sum:=0; for i:= 1 to m do for j:=1 to n do sum:=sum+b[vect[i],j]; {добавляем в сумму значения элементов матрицы, номер строки которых определяется значением вектора} get_sum:=sum end; procedure put_data(b:a; vect:v); var i,j: byte; begin for i:=1 to m do begin for j:=1 to n do write(b[i,j]:4); writeln; end; writeln; writeln('summa=',get_sum(b,vect)); end; begin get_data(f,b, vect); replace_column(vect,b); put_data(b, vect); readln end. |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Ввод матрицы | La`Fleur | C++ Builder | 3 | 07.05.2011 20:41 |
Проблема с чтением матрицы с txt-файла в C# | Денис89 | Помощь студентам | 5 | 08.09.2010 17:40 |
Ввод из файла,меню,матрицы turbopascal. | Amenus | Помощь студентам | 2 | 17.06.2009 22:33 |