Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 17.04.2011, 21:26   #1
Олег093
Пользователь
 
Регистрация: 17.04.2011
Сообщений: 18
По умолчанию файлы и матрицы

помогите!!!!задача: Ввести 2 целочисленных файла и в которых первая компонента – количество строк, а вторая – количество столбцов в хранящихся в этих файлах матрицах. Третья компонента – сумма всех элементов в этих матрицах. Восстановить исходные матрицы , и вывести их. В случае невозможности проведения операции восстановления (элементов в файле меньше заявленного или размерность меньше 1) вывести об этом сообщение. Кроме того, вывести истинную и заявленные суммы элементов в матрицах. (прим.: при решении использовать подпрограммы).Я решаю ,но, что то не очень получается...
Олег093 вне форума Ответить с цитированием
Старый 17.04.2011, 21:47   #2
malinoff
Форумчанин
 
Аватар для malinoff
 
Регистрация: 08.01.2010
Сообщений: 205
По умолчанию

Язык, наработки?
Если помог - кликни на значок весов под аватаром.
malinoff вне форума Ответить с цитированием
Старый 18.04.2011, 07:48   #3
Олег093
Пользователь
 
Регистрация: 17.04.2011
Сообщений: 18
По умолчанию

язык паскаль,наработки совсем малы....и их невозможно связать в программу...
Олег093 вне форума Ответить с цитированием
Старый 18.04.2011, 07:55   #4
malinoff
Форумчанин
 
Аватар для malinoff
 
Регистрация: 08.01.2010
Сообщений: 205
По умолчанию

Я правильно понял, входной файл имеет вид:
3 3 3
100
010
001
?
Если помог - кликни на значок весов под аватаром.
malinoff вне форума Ответить с цитированием
Старый 18.04.2011, 19:47   #5
Олег093
Пользователь
 
Регистрация: 17.04.2011
Сообщений: 18
По умолчанию

правильно...
Олег093 вне форума Ответить с цитированием
Старый 18.04.2011, 20:12   #6
Mad_Cat
Made In USSR!
Старожил
 
Аватар для Mad_Cat
 
Регистрация: 01.09.2010
Сообщений: 3,657
По умолчанию

а в чем сложность раз других условий нет?
Код:
элемент = Сумма div (кол_столб*кол_строк);
последний_элемент=элемент+Сумма mod (кол_столб*кол_строк);
и зачем тут подпрограммы7
"...В жизни я встречал друзей и врагов.В жизни много всего перевидал.Солнце тело мое жгло, ветер волосы трепал,но я смысла жизни так и не узнал..."
(c) Юрий Клинских aka "Хой"
Mad_Cat вне форума Ответить с цитированием
Старый 18.04.2011, 20:23   #7
Олег093
Пользователь
 
Регистрация: 17.04.2011
Сообщений: 18
По умолчанию

в том то и проблемы что необходимо через подпрограммы решить
Олег093 вне форума Ответить с цитированием
Старый 18.04.2011, 20:32   #8
malinoff
Форумчанин
 
Аватар для malinoff
 
Регистрация: 08.01.2010
Сообщений: 205
По умолчанию

Ну выделите определение ошибки в отдельную функцию, восстановление элементов в отдельную функцию... Хотя странное какое-то задание.
Если помог - кликни на значок весов под аватаром.
malinoff вне форума Ответить с цитированием
Старый 18.04.2011, 20:42   #9
Олег093
Пользователь
 
Регистрация: 17.04.2011
Сообщений: 18
По умолчанию

вот и я не особо понимаю,поэтому и прошу помочь
Олег093 вне форума Ответить с цитированием
Старый 20.04.2011, 21:41   #10
Олег093
Пользователь
 
Регистрация: 17.04.2011
Сообщений: 18
По умолчанию

вот написал программу..но не выводятся сами матрицы...
program MaxMInExch;
uses crt;
const L=10;
type T2M = array[1.. L,1..L] of integer;
Tname = string[4];
TF = file of integer;
var A1,A2: T2M;
F1,F2 :TF;
N1,N2,M1,M2:byte;
maxF1,maxF2,Npol1,Notr1,kchet1,kche t2,Npol2,Notr2:integer;

// процедура для ввода файла
procedure VvodF(var F:TF; const name:Tname);
var buf:integer;
begin
rewrite(F);
writeLn('введите первую компоненту файла ', name);
writeLn('999 - окончание ввода');
readLn(buf);
while buf<>999 do
begin
write(F,buf);
writeLn('введите следующую компоненту:');
readLn(buf);
end;
end;

// процедура для вывода файла
procedure VivodF(var F:TF; const name:Tname);
var buf:integer;
begin
reset(F);
writeLn('Выводим файл ', name);
while not EOF(F) do
begin
read(F,buf);
write(buf:5);
end;
writeLn;
end;
// процедура для вывода матрицы
procedure VivodMx(const A:T2m; const N,M: byte; const name:Tname);
var i,j:byte;
begin
writeLn('Матрица ',name,' после формирования:');
for i:=1 to N do
begin
for j:=1 to M do
write(A[i,j]:4);
writeLn;
end;
end;



// формирование матриц из файла
procedure form(var F:Tf; var A:T2m; var N,M:byte);
var i,j:byte;
buf1,buf2,buf:integer;
begin
reset(F);
read(F,buf1);
read(F,buf2);
N:=round(buf1);
M:=round(buf2);
for i:=1 to N do
begin
for j:=1 to M do
read(F,buf);
A[i,j]:=buf;
end;
end;




// основная программа
begin
cls;
// инициализация файла F1
Assign(F1,'F1.dat');
VvodF(F1,'F1');
// инициализация файла F2
Assign(F2,'F2.dat');
VvodF(F2,'F2');
VivodF(F1,'F1');
VivodF(F2,'F2');



form(F1,A1,N1,M1);
form(F2,A2,N2,M2);
VivodMx(A1,N1,N1,'A1');
VivodMx(A2,N2,N2,'A2');

close(F1);
close(F2);
end.
Олег093 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Ф-ия, определяющая сумму строк матрицы, если на главной диагонали матрицы имеется отрицательный эл-т. Volk_xD Помощь студентам 6 05.01.2011 13:39
Матрицы:функция изменения порядка столбцов матрицы Fajyz Помощь студентам 0 13.01.2010 09:40
На главную диагональ матрицы поместить наибольшие элементы этой матрицы mivel Помощь студентам 2 23.12.2009 21:19
Файлы, матрицы. Паскаль. anatoliy_julia Помощь студентам 1 27.06.2009 09:31
Нужно написать программу....файлы...матрицы Calfa Паскаль, Turbo Pascal, PascalABC.NET 24 06.05.2009 21:04