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

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

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

> 1 - файлы 2 - Сортировка массива, 2 задачи
FENIX
сообщение 15.12.2004 19:20
Сообщение #1


Новичок
*

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

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


Помогите, плиз, решить следущее:

1) Сравнить два файла с точностью до слов (без учета неотображаемых символов и пробелов между словами). Совпадающие слова вывести в третий файл, несовпадающие слова в четвертый, а их количества на экран.

2) Упорядочить методом прямого включения по возрастанию только положительные элементы массива, оставив остальные эл-ты на своих местах. Напечатать индексы эл-ов, оставшихся на местах.

Вот мой исходник проги, но она работает не совсем правильно. Если запустить, то прога сортирует + эл-ты по блокам, а не весь массив (после запуска станет понятно, почему работает неправильно).
Как ее доделать (или переделать совсем), чтобы все было ОК?

Код
Program Lab;
Uses Crt;

Type TMas = array[1..30] of integer;

Var i,n : integer;
   A, B : TMas;

Procedure Sort(Var A : TMas);
Var i,j,x : integer;
Begin
  For i:=2 to n do
  begin
     x:=A[i];
     j:=i-1;
     If x > 0 then
        While (j>0) and (x<=A[j]) do
        begin
           A[j+1]:=A[j];
           Dec(j);
        end;
        A[j+1]:=x;
  end;
end;

BEGIN
ClrScr;
Write('Vvedite N=');
readln(n);
Writeln('Vvedite isxodnyi massiv:');
  For i:=1 to n do
  begin
     write('A[',i,']=');
     readln(A[i]);
  end;

Writeln;
Writeln('Otsortirovannyi massiv:');
Writeln;
For i := 1 to n do writeln('A[',i,']=',A[i]);
Writeln;
Writeln('Homepa elementov, ostavshixsya na svoix mestax:');
For i := 1 to n do
If A[i] < 0 then Writeln(i);
readln;
END.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

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


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

 



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