Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Pascal. Файлы

60K
24 декабря 2010 года
C++oder
14 / / 04.10.2010
Создать файл, содержащий не более 100 случайных целых чисел. Выполнить сортировку чисел по возрастанию.

Код:
Program FileTest1;
uses crt;
const
N=100;
var
X:array [1..N] of integer;
F: file of integer;
i,j,T: integer;
m: integer;
begin
randomize;
clrscr;
Assign(F,'test1.dat');
ReWrite(F);
for i:=1 to N do begin
x:= Random(N);
write(f, x);
end;
Close(F);
ReSet(F);
for i:=1 to N do
begin
read(f, x);
End;
for i := 0 to n - 1 do begin
T := x;
j := i - 1;
while (j >= 0) and (T < x[j]) do begin
x[j + 1] := x[j];
Dec(j);
end;
x[j + 1] := T;
end;
for i:=1 to N do
writeln (x);
Close(F);
WriteLn;
readln;
end.


посмотрите, пожалуйста, я правильно сделал? если да, то не могу понять, почему в результате обязательно присутствует число 2573. остальные числа рандомны.
29K
24 декабря 2010 года
Енот_в_Засаде
224 / / 09.11.2010
вот посмотрите:
Код:
Program FileTest1;
uses crt;
const N=100;
var  X:array [1..N] of integer;

F: file of integer;
i,j,T: integer;
m: integer;
begin
randomize;
clrscr;
Assign(F,'test1.txt');
Rewrite(F);
for i:=1 to N do begin
x:= Random(N);
write(f, x);
end;
Close(F);
for i:=1 to N do begin
write(x,' ');
end;

ReSet(F);

for i:=1 to N do begin
read(f, x);
End;
Close(F);
writeln;
write('Po vozrastaniu');
writeln;

for i:=1 to N-1 do
          for j:=i+1 to N do
              if (x[j]<x) then
                begin
                   T:=x;
                   x:=x[j];
                   x[j]:=T;
              end;

for i:=1 to N do begin
write(x,' ');
end;
readln;
end.

я немного изменил Вашу сортировку. Запись и чтение у вас были сделаны верно, а вот из-за сортировки вылазило это число 2573 (правда откуда оно там бралось, я так и не нашёл:D)
60K
24 декабря 2010 года
C++oder
14 / / 04.10.2010

я немного изменил Вашу сортировку. Запись и чтение у вас были сделаны верно, а вот из-за сортировки вылазило это число 2573 (правда откуда оно там бралось, я так и не нашёл:D)




Спасибо огромное!!! =)

29K
24 декабря 2010 года
Енот_в_Засаде
224 / / 09.11.2010
да не за что:)
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог