IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

> бинарный файл, числа, подготовка к экзамену
Катюша
сообщение 23.07.2005 15:56
Сообщение #1


Пионер
**

Группа: Пользователи
Сообщений: 55
Пол: Женский

Репутация: -  0  +


В некотором бинарном файле записаны числа типа LongInt. Если в файле
есть хотя бы одно число, начинающееся цифрой 1 и содержащее цифры 2 и 3, упорядочить файл по неубыванию. Имя исходного файла и имя упорядоченного файла программа должна получать через командную строку. Не использовать массивы и динамическую память.


жду помощи =)


--------------------
Удачи.
Катерина
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов(1 - 8)
Digitalator
сообщение 23.07.2005 16:23
Сообщение #2


Бывалый
***

Группа: Пользователи
Сообщений: 247
Пол: Мужской

Репутация: -  1  +


Цитата
упорядочить файл

Цитата
Не использовать массивы и динамическую память.

прикольно, наверное сначала нужно установить дополнительное охлаждение на винт.


--------------------
In byte we trust
ICQ World.ru
mail[dog]digitalator[dot]com
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
mlc
сообщение 23.07.2005 16:26
Сообщение #3


Гость






Сейчас Volvo опять в глаз даст smile.gif
uses crt;
var f,f2:file of longint;
b:boolean;
i,j,x,y:longint;
s:string;
begin
assign(f,paramstr(1)); reset(f);
assign(f2,paramstr(2)); rewrite(f2);
b:=false;
repeat
read(f,x); str(x,s);
if (s[1]='1') or (pos ('2',s)>0) or (pos('3',s)>0) then b:=true;
write(f2,x);
until eof(f);
if b then begin
for i:=0 to filesize(f2)-1 do
for j:=i+1 to filesize(f2) do begin
seek(f2,i); read(f2,x);
seek(f2,j); read(f2,y);
if x>y then begin
seek(f2,i); write (f2,y);
seek(f2,j); write (f2,x);
end;
end;
end;
close(f); close(f2);
end.
 К началу страницы 
+ Ответить 
Катюша
сообщение 23.07.2005 23:31
Сообщение #4


Пионер
**

Группа: Пользователи
Сообщений: 55
Пол: Женский

Репутация: -  0  +


пасип огромное.. разберусь.. дополнительно

а компактненько как! =)))


--------------------
Удачи.
Катерина
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
volvo
сообщение 24.07.2005 22:07
Сообщение #5


Гость






Цитата(Катюша @ 23.07.05 23:31)
а компактненько как! =)))

Компактненько, да неправильно smile.gif Задание какое было?
Цитата(Катюша @ 23.07.05 15:56)
... Если в файле есть хотя бы одно число, начинающееся цифрой 1 и содержащее цифры 2 и 3, упорядочить файл по неубыванию...


Что имеем?
Цитата(mlc @ 23.07.05 16:26)
...
if (s[1]='1') or (pos ('2',s)>0) or (pos('3',s)>0) then b:=true;
...

Понимаешь о чем я? То что получилось - "начинающееся цифрой 1 или содержащее цифры 2 или 3"
Аккуратнее надо условия читать ;)
 К началу страницы 
+ Ответить 
mlc
сообщение 24.07.2005 22:34
Сообщение #6


Гость






Цитата(volvo @ 24.07.05 22:07)
Компактненько, да неправильно smile.gif Задание какое было?
Аккуратнее надо условия читать ;)

Ааа, сорри, ты прав, посыпаю голову пеплом smile.gif Как в воду глядел про глаз smile.gif Ну ор на на анд поменяй.

[Offtop удален: мой ответ был здесь достаточное время, чтобы ты успел его прочитать...]

Сообщение отредактировано: volvo - 25.07.2005 1:19
 К началу страницы 
+ Ответить 
Катюша
сообщение 26.07.2005 11:17
Сообщение #7


Пионер
**

Группа: Пользователи
Сообщений: 55
Пол: Женский

Репутация: -  0  +


я нашла старую программу, писала ее почти 2 года назад.. показываю ее..

но она не совсем такая, как это условие..

но похожа.. хорошая прога?

uses crt,dos;
var f1,f2:file of word;
function kratno11(x:word):boolean;
var sum:byte;
begin
kratno11:=false;
sum:=0;
while x>=10 do
begin
sum:=sum+(x mod 10);
x:=x div 10;
end;
if (sum mod 11=0) then kratno11:=true;
end;
var number,n1,n2,tmp:word;
boolNum:boolean;
i,j,k:longInt;
begin
clrscr;
if ParamCount<2 then
begin
textcolor(red);
writeln('‘Їа ўЄ :');
textcolor(white);
writeln('?¬п Ёб室­®Ј® д ©« Ё Ё¬п гЇ®а冷祭­®Ј® д ©« Їа®Ја ¬¬ ¤®«¦­ Ї®«гз вм зҐаҐ§ '+
+'Є®¬ ­¤­го бва®Єг!');
ReadKey;
halt;
end;
assign(f1,paramStr(1));
assign(f2,paramStr(2));
{$I-}
reset(f1);
if ioresult <> 0 then
begin
writeln('” ©« ­Ґ ­ ©¤Ґ­!');
readkey;
halt;
end;
{$I-}
rewrite(f2);
boolNum:=false;
while not Eof(f1) do
begin
read(f1,number);
write(f2,number);
writeln(number);
if kratno11(number) then boolNum:=true;
end;
readKey;
if boolNum=true then
begin
writeln('Ќ ¦¬ЁвҐ «оЎго Є« ўЁиг ¤«п ўл室 ..');
writeln('‚ д ©«Ґ бҐвм зЁб« - б㬬 жЁда Є®в®але а ў­ 11- ­Ґ гЇ®а冷稢 Ґ¬');
readKey;
halt;
end;
readkey;
writeln('Sort');
for i:=0 to fileSize(f2)-2 do
begin
Seek(f2,i);
Read(f2,n1);
for j:=i+1 to fileSize(f2)-1 do
begin
Seek(f2,j);
Read(f2,n2);
if n1>n2 then
begin
tmp:=n1;
n1:=n2;
n2:=tmp;
Seek(f2,j);
Write(f2,n2);
Seek(f2,i);
Write(f2,n1);
end;
end;
end;
close(f1);
close(f2);
writeln('“бҐ!');
readkey;
end.




--------------------
Удачи.
Катерина
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Malice
сообщение 26.07.2005 12:16
Сообщение #8


Профи
****

Группа: Пользователи
Сообщений: 705
Пол: Мужской

Репутация: -  20  +


Цитата(Катюша @ 26.07.05 11:17)
но похожа.. хорошая прога?


Не понял, что значит хорошая. smile.gif
Поменяй функцию Kratno11 на свою по условию и можно здавать.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Катюша
сообщение 26.07.2005 18:46
Сообщение #9


Пионер
**

Группа: Пользователи
Сообщений: 55
Пол: Женский

Репутация: -  0  +


гы..

это числа, который вводятся с командной строки.. СТОРМОЗИЛА unsure.gif


--------------------
Удачи.
Катерина
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия 20.07.2025 20:04
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"