![]() |
Внимание, важное сообщение: Дорогие Друзья!
В ноябре далекого 2001 года мы решили создать сайт и форум, которые смогут помочь как начинающим, так и продвинутым пользователям разобраться в операционных системах. В 2004-2006г наш проект был одним из самых крупных ИТ ресурсов в рунете, на пике нас посещало более 300 000 человек в день! Наша документация по службам Windows и автоматической установке помогла огромному количеству пользователей и сисадминов. Мы с уверенностью можем сказать, что внесли большой вклад в развитие ИТ сообщества рунета. Но... время меняются, приоритеты тоже. И, к сожалению, пришло время сказать До встречи! После долгих дискуссий было принято решение закрыть наш проект. 1 августа форум переводится в режим Только чтение, а в начале сентября мы переведем рубильник в положение Выключен Огромное спасибо за эти 24 года, это было незабываемое приключение. Сказать спасибо и поделиться своей историей можно в данной теме. С уважением, ваш призрачный админ, BigMac... |
|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » Delphi - Востановление данных в матрице |
|
Delphi - Востановление данных в матрице
|
Новый участник Сообщения: 3 |
Вопрос таков: Нужно создать матрицу 3х3 разработать схему контрольных сумм для востановления данных в матрице.
Зарание спасибо |
|
Отправлено: 22:35, 17-12-2010 |
Необычный Сообщения: 4466
|
Профиль | Сайт | Отправить PM | Цитировать zDevil, Это не вопрос, это задание.
Вопрос то в чем? Какие требования к матрице, к контрольным суммам, к степени "восстанавливаемости"? Какие собственные мысли по реализации? |
------- Отправлено: 03:26, 18-12-2010 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Новый участник Сообщения: 3
|
Профиль | Отправить PM | Цитировать Хорошо скажу по другому. Нужна помощь с этой задачей
|
Отправлено: 18:22, 19-12-2010 | #3 |
Необычный Сообщения: 4466
|
Профиль | Сайт | Отправить PM | Цитировать zDevil, ок, поменяем ответ. Ты можешь мне помочь построить дачу?
|
------- Отправлено: 18:48, 19-12-2010 | #4 |
Новый участник Сообщения: 3
|
Профиль | Отправить PM | Цитировать Нужна помощь по курсавой
Есть задача: Нужно создать матрицу 3х3 разработать схему контрольных сумм для востановления данных в матрице. Есть код: program DataCheck; {$APPTYPE CONSOLE} uses SysUtils; var data: array of array of integer; var sum,ind,check,tsum: array of integer; ldata,i,j:integer; procedure zero(m_zero:array of integer;length:integer); begin for i := 0 to (2*length+1) do begin m_zero[i]:=0; end; end; procedure data_check; begin for i := 0 to (2*ldata+1) do begin ind[i]:=0; check[i]:=0; tsum[i]:=0; end; for i := 0 to ldata-1 do begin for j := 0 to ldata-1 do begin if data[i,j]=0 then begin ind[i]:=j; ind[ldata+j]:=i; inc(check[i]); inc(check[ldata+j]); if i=j then begin ind[2*ldata]:=i; inc(check[2*ldata]); end; if i+j=ldata-1 then begin ind[2*ldata+1]:=i; inc(check[2*ldata+1]); end; end; end; end; for i := 0 to ldata-1 do for j := 0 to ldata-1 do begin if check[i]=1 then begin tsum[i]:=tsum[i]+data[i,j]; end; end; for i := 0 to ldata-1 do for j := 0 to ldata-1 do begin if check[ldata+j]=1 then begin tsum[ldata+j]:=tsum[ldata+j]+data[i,j]; end; end; if check[2*ldata]=1 then begin for i := 0 to ldata-1 do for j := 0 to ldata-1 do begin if i=j then tsum[2*ldata]:=tsum[2*ldata]+data[i,j]; end; end; for i := 0 to ldata-1 do for j := 0 to ldata-1 do begin if check[2*ldata+1]=1 then begin if i+j=ldata-1 then tsum[2*ldata+1]:=tsum[2*ldata+1]+data[i,j]; end; end; for i := 0 to ldata-1 do begin if tsum[i]<>0 then data[i,ind[i]]:=sum[i]-tsum[i]; end; for j := 0 to ldata-1 do begin if tsum[ldata+j]<>0 then data[ind[ldata+j],j]:=sum[ldata+j]-tsum[ldata+j]; end; for i := 0 to ldata-1 do begin for j := 0 to ldata-1 do begin if tsum[2*ldata]<>0 then data[ind[2*ldata],ind[2*ldata]]:=sum[2*ldata]-tsum[2*ldata]; if tsum[2*ldata+1]<>0 then data[ind[2*ldata+1],ldata-1-ind[2*ldata+1]]:=sum[2*ldata+1]-tsum[2*ldata+1]; end; end; end; begin randomize; ldata:=3; setlength(ind,2*ldata+2); setlength(check,2*ldata+2); setlength(tsum,2*ldata+2); setlength(sum,2*ldata+2); setlength(data,ldata); for i := 0 to ldata-1 do setlength(data[i],ldata); for i := 0 to ldata-1 do for j := 0 to ldata-1 do begin data[i,j]:=random(9)+1; end; for i := 0 to (2*ldata+1) do begin sum[i]:=0; end; for i := 0 to ldata-1 do for j := 0 to ldata-1 do begin sum[i]:=sum[i]+data[i,j]; sum[ldata+j]:=sum[ldata+j]+data[i,j]; if i=j then sum[2*ldata]:=sum[2*ldata]+data[i,j]; if i+j=ldata-1 then sum[2*ldata+1]:=sum[2*ldata+1]+data[i,j]; end; for i := 0 to ldata-1 do begin for j := 0 to ldata-1 do begin write(data[i,j],' '); end; writeln; end; for i := 0 to 2*ldata+1 do begin write(sum[i],' '); end; for i := 0 to 5 do data[random(ldata),random(ldata)]:=0; writeln; for i := 0 to ldata-1 do begin for j := 0 to ldata-1 do begin write(data[i,j],' '); end; writeln; end; for i := 0 to ldata do begin data_check(); data_check(); data_check(); end; writeln; for i := 0 to ldata-1 do begin for j := 0 to ldata-1 do begin write(data[i,j],' '); end; writeln; end; readln; end. |
|
Последний раз редактировалось Drongo, 24-12-2010 в 22:45. Причина: [code]!!! Отправлено: 21:58, 24-12-2010 | #5 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
[решено] фото в матрице)) | One THE darK | Цифровое изображение | 3 | 11-06-2010 18:42 | |
HDD - [решено] Востановление данных с поврежденной таблицей раздела | Nsirotin | Накопители (SSD, HDD, USB Flash) | 1 | 15-03-2010 18:51 | |
Установка - Помогите пожалуйста(срочно) востановление данных | Dos-basist | Microsoft Windows 7 | 3 | 15-12-2009 14:51 | |
HDD - востановление данных | OvosH | Накопители (SSD, HDD, USB Flash) | 1 | 11-02-2009 23:54 | |
Удален профиль. Востановление Данных профиля. Windows 2000 | unl1ke | Microsoft Windows NT/2000/2003 | 4 | 29-10-2007 17:40 |
|