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

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

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

> СРОЧНО! Сортировка массива строковых данных., Не понимаю почему не происходит ...
сообщение
Сообщение #1


Гость






Доброго времени суток !
Вот друг попросил накидать программку(ака 1ую часть курсовой).
Накидал, но почемуто не происходит сортировка =(
Объясните где что не так плиз (желательно asap)
вот код

program p4;
uses strings;
var
mas:array[1..10,1..2] of string ;
c,x,y,l:integer;
input,output:text;
temp:string;
begin
assign(input,'dan.txt');
reset (input);
assign(output,'res.txt');
rewrite(output);

x:=0;
Repeat
x:=x+1;
Readln(input,temp);
c:=pos(' ',temp);
l:=length(temp);
mas[x,1]:=copy(temp,1,(c-1));
mas[x,2]:=copy(temp,c+1,(l-c));
{y:=pos('r',mas[2,x]);
delete(mas[2,x],y,3);}
until EOF(input);

for y:=1 to x do begin
if mas[y,2]>mas[y+1,2] then begin
temp:=mas[y,2];
mas[y,2]:=mas[y+1,2];
mas[y+1,2]:=temp;
temp:=mas[y,1];
mas[y,1]:=mas[y+1,1];
mas[y+1,1]:=temp;

end;
end;

for y:=1 to x do writeln(output,mas[y,1],' ',mas[y,2]);

close(input);
close(output);
readln;
end.

 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
сообщение
Сообщение #2


Гость






Интересно, возник такой лаг если сравнивать 1200 и 200, то 200 оказывается больше... Any ideas ?
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3


Гость






Цитата(Stranger @ 22.09.2005 18:24)
возник такой лаг если сравнивать 1200 и 200, то 200 оказывается больше...
Абсолютно правильно, это вовсе не лаг, это нормальный результат при сравнении строк: '1200' < '200', т.к. строки сравниваются посимвольно, и уже первая пара символов дает '1' < '2' ... Чтобы получить результат, правильный для чисел, нужно сравнивать числа... smile.gif

Переводи строку в число (Val) и сравнивай...
 К началу страницы 
+ Ответить 

Сообщений в этой теме


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

 





- Текстовая версия 13.09.2025 9:06
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name