Помощь - Поиск - Пользователи - Календарь
Полная версия: Обработка файлов и массивов
Форум «Всё о Паскале» > Pascal, Object Pascal > Задачи
annna
В файле W задан массив из девяти элементов. В новом файле WW сформировать массив, в котором каждому элементу будет присвоено значение соседнего с ним справа. Последнему элементу присвоить значение первого.
Altair
Файл титпизированный? (говорю же - сразу надо точно писать условие)
annna
Oleg_Z
Это не дано в условии, но скорее всего нет.
Altair
Ок, сделаем на текстовый (скорее всего так, чтобы легко его вводить было)
Altair
Сделал для вас 2 варианта. 1 -это с текстовым фалом, второй-с типизированным
Код
{ў аЁ ­в 1 - д ©« ’…Љ‘’Ћ‚›‰, Є ¦¤л© н«-в ­  ­®ў®© бва®ЄҐ}
Program Massivi_iz_faila;
uses crt;
var
w:text;  {д ©« Ё§ Є®в®а®Ј® зЁв Ґ¬}
ww:text; {­®ўл© д ©«, ў Є®в®ал© § ЇЁблў Ґ¬}
a:array[1..9] of integer; {Є Є®Ј® вЁЇ  н«Ґ¬Ґ­вл ¬ ббЁў  - ­Ґ ў ¦­®, ¬®¦­® ¬Ґ­пвм}
filename,fn2:string; {Їгвм Є д ©«г}
i:byte;
begin
ClrScr; {®зЁбвЁ¬ нЄа ­}
Writeln('‚ўҐ¤ЁвҐ Ё¬п д ©«  FILE NAME : ');
readln(filename);
Assign(w,filename);
{$I-} reset(w); {$I+}
If IoResult<>0 then
begin
 writeln('Ћ??ЃЉЂ, ERROR, д ©« Ќ… ®вЄалв, NOT RESET!');
 writeln('‡ ЇгбвЁвҐ Їа®Ја ¬¬г б­®ў ');
 halt(IoResult) {§ ўҐаи Ґ¬ а Ў®вг, б Є®¤®¬ ®иЁЎЄЁ}
end;
{зЁв Ґ¬ ¬ ббЁў}
For i:=1 to 9 do readln(w,a[i]);
{Ј®в®ўЁ¬ ­®ўл© д ©« ww}
writeln; writeln('‚ўҐ¤ЁвҐ Ё¬п ᮧ¤ ў Ґ¬®Ј® д ©« ');
readln(fn2);
Assign(ww,fn2);
{ᮧ¤ Ґ¬ д ©«}
rewrite(ww);
{§ ЇЁблў Ґ¬ вг¤  Ё­д®а¬ жЁо, Ї® § ¤ ­Ёо}
{§ ЇЁблў Ґ¬ б­ з «  б 2 Ї® 9 н«-в   Ї®в®¬ ў Є®­Ґж 1 н«-в, в ЄЁ¬ ®Ўа §®¬
 Ї®«гз Ґ¬ ᬥ饭ЁҐ н«-в®ў ўЇа ў®.}
For i:=2 to 9 do writeln(ww,a[i]);
writeln(ww,a[1]);
writeln('ўбҐ, ўбҐ ¤Ґ©бвЁп ўлЇ®«­Ґ­­л Ї® § ¤ ­Ёо!');
Close(w); Close(ww);
end.

вариант 21
Код

{ў аЁ ­в 2 - д ©« вЁЇЁ§Ёа®ў ­­л©}
Program Massivi_iz_faila;
uses crt;
var
w:file of integer;  {д ©« Ё§ Є®в®а®Ј® зЁв Ґ¬}
ww:file of integer;  {­®ўл© д ©«, ў Є®в®ал© § ЇЁблў Ґ¬}
a:array[1..9] of integer; {Є Є®Ј® вЁЇ  н«Ґ¬Ґ­вл ¬ ббЁў  - ­Ґ ў ¦­®, ¬®¦­® ¬Ґ­пвм}
filename,fn2:string; {Їгвм Є д ©«г}
i:byte;
begin
ClrScr; {®зЁбвЁ¬ нЄа ­}
Writeln('‚ўҐ¤ЁвҐ Ё¬п д ©«  FILE NAME : ');
readln(filename);
Assign(w,filename);
{$I-} reset(w); {$I+}
If IoResult<>0 then
begin
 writeln('Ћ??ЃЉЂ, ERROR, д ©« Ќ… ®вЄалв, NOT RESET!');
 writeln('‡ ЇгбвЁвҐ Їа®Ја ¬¬г б­®ў ');
 halt(IoResult) {§ ўҐаи Ґ¬ а Ў®вг, б Є®¤®¬ ®иЁЎЄЁ}
end;
{зЁв Ґ¬ ¬ ббЁў}
{­Ґ § Ўлў Ґ¬, зв® 1 н«-в ў вЁЇЁ§Ёа. д ©«Ґ - ­ б ¬®¬ ¤Ґ«Ґ ­г«Ґў®©}
for i:=1 to 9 do
begin
 seek(w,(i-1));
 read(w,a[i])
end;
{Ј®в®ўЁ¬ ­®ўл© д ©« ww}
writeln; writeln('‚ўҐ¤ЁвҐ Ё¬п ᮧ¤ ў Ґ¬®Ј® д ©« ');
readln(fn2);
Assign(ww,fn2);
{ᮧ¤ Ґ¬ д ©«}
rewrite(ww);
{§ ЇЁблў Ґ¬ вг¤  Ё­д®а¬ жЁо, Ї® § ¤ ­Ёо}
{§ ЇЁблў Ґ¬ б­ з «  б 2 Ї® 9 н«-в   Ї®в®¬ ў Є®­Ґж 1 н«-в, в ЄЁ¬ ®Ўа §®¬
 Ї®«гз Ґ¬ ᬥ饭ЁҐ н«-в®ў ўЇа ў®.}
For i:=2 to 9 do
begin
 seek(ww,(i-2));
 write(ww,a[i])
end;
seek(ww,filesize(ww)); {ЇҐаҐ¬Ґй Ґ¬ ­  Ї®б«Ґ¤­Ё© н«-в}
write(ww,a[1]);
writeln('ўбҐ, ўбҐ ¤Ґ©бвЁп ўлЇ®«­Ґ­­л Ї® § ¤ ­Ёо!');
Close(w); Close(ww);
end.
annna
big tnx smile.gif
Altair
Цитата
big tnx

А что это значит?
annna
Oleg_Z
Ну енто спасибо, на старорусском ;)
Altair
Понял!, fhgd (а ето пожалуста по старорусски) ;) smile.gif
HelpAusHeaven
Цитата(Oleg_Z @ 23.04.04 22:20)
Понял!, fhgd (а ето пожалуста по старорусски)  ;)  smile.gif

хмsmile.gif а терь я ничего не понялsmile.gif smile.gif
big tnx = big thanks (по созвучию)
fhgd равно чему? you're welcome?smile.gif че т не подходитsmile.gif smile.gif smile.gif
Altair
Цитата
fhgd равно чему?
Да не чему не равно! Я просто первое сочетание на клаве написал. smile.gif
Вот люди пошли, шутки начинают исследовать на созвучие... smile.gif прямо настоящие программеры smile.gif
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.