![]() |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
![]() |
warning777 |
![]()
Сообщение
#1
|
Новичок ![]() Группа: Пользователи Сообщений: 14 Пол: Мужской Репутация: ![]() ![]() ![]() |
У меня проблема, есть готовая программа но ее надо разбить на процедуры,программа рабочая.
Моя ася 5515795 заплачу 50р ![]() Сдавать послезавтра ! |
![]() ![]() |
warning777 |
![]()
Сообщение
#2
|
Новичок ![]() Группа: Пользователи Сообщений: 14 Пол: Мужской Репутация: ![]() ![]() ![]() |
{ Задание - если имеются нулевые и отрицательные элементы}
{ то отсортировать элементы стоящие между} { первым отрицательным и последним нулевым } { в порядке возрастания . Если нет нулевых или отрицательных} { не сортировать } {Надо разбить на процедуры :} {1)Ввод массива } {2)Вывод массива } {3)Обработка массива : } {-Анализ (состоит из поиска нулевого и отрицательного элемента а так } {же флаг } {Который передает управление дальше или на конец программы) } {-Выбор элементов для сортировки } {-Сортировка } {-Возврат отсортированного массива в начальный } Program zamuta; var i,max,k,x1,x2,n,m,p,n3,tmp,j,z:integer; a:array [1..100] of integer; b:array [1..100] of integer; f1,f2:text; IncreaseFlag:Boolean; begin assign(f1,'in.txt'); {начинаем делать} assign(f2,'out.txt'); reset(f1); n:=0; i:=1; while not EoF(f1) do {чтение файла} begin n:=n+1; read(f1,a[i]); {перегоняется в массив а(и) } i:=i+1; end; close(f1); for i:=1 to n do {поиск последнего нулевого} begin if a[i]=0 then m:=i; x1:=1 {присваиваем ему букву м и х1=1} end; for i:=n downto 1 do {поиск первого отрицательного} begin if a[i]<0 then p:=i; x2:=1 {присваеваем ему букву п и х2=1} end; k:=0; {выбор элементов для сортировки} for i:=p+1 to m-1 do begin k:=k+1; b[k]:=a[i]; {перегоняем в массив б(к) } end; n3:=m-p; {считаем колличество чисел в массиве} {дальше должна идти проверка если} { х1 и х2 оба равны единице то флаг принимает true} { и мутим дальше,если хотя бы одно ноль - идем на конец файла} z:=k; {сортировка по возрастанию} for k:=1 to k do for j:=1 to z-1 do if B[j]>B[j+1] then begin tmp:=B[j]; B[j]:=B[j+1]; B[j+1]:=tmp; end; k:=0 ; {возврат отсортированнного в общий массив а(и) } for i:=p+1 to m do begin k:=k+1; a[i]:=b[k]; end; Assign(f2,'out.txt'); {записываем все полученное в файл} Rewrite(f2); for i:=1 to n do Write(f2,A[i]:4); Close(f2); end. Сообщение отредактировано: warning777 - 26.05.2008 23:19 |
sintanial |
![]()
Сообщение
#3
|
Пионер ![]() ![]() Группа: Пользователи Сообщений: 70 Пол: Мужской Реальное имя: Мартын Репутация: ![]() ![]() ![]() |
А в чем трудность ? это 5-10 минут делов, ты дольше ответа будешь тута ждать, так как это тупо механическая работа =).
|
warning777 |
![]()
Сообщение
#4
|
Новичок ![]() Группа: Пользователи Сообщений: 14 Пол: Мужской Репутация: ![]() ![]() ![]() |
Очень нужна помощь !
Добавлено через 2 мин. Я просто не понимаю как это делается |
sintanial |
![]()
Сообщение
#5
|
Пионер ![]() ![]() Группа: Пользователи Сообщений: 70 Пол: Мужской Реальное имя: Мартын Репутация: ![]() ![]() ![]() |
Варнинг, отредактируй, поставь в теги паскалевские, и сделай редактирование текста, что бы легче читать мона было, тогда я тебе помогу =)
|
warning777 |
![]()
Сообщение
#6
|
Новичок ![]() Группа: Пользователи Сообщений: 14 Пол: Мужской Репутация: ![]() ![]() ![]() |
Так ? Плиз хелп
![]() |
sintanial |
![]()
Сообщение
#7
|
Пионер ![]() ![]() Группа: Пользователи Сообщений: 70 Пол: Мужской Реальное имя: Мартын Репутация: ![]() ![]() ![]() |
ПОСТАВЬ в паскалевские теги свой код программы, и отредактируй нормально. Я не собираюсь тута пол часа сидеть и пытаться разобрать твой код, мне же не чего не видно, что под чем стоит. Каким ендом какой цикл закрывается и т.д. ! Вот когда сделаешь, тогда я тебе помогу
З.ы. И еще сделай пожалуйста вот так если тебя конечно не затруднит. Это что бы видно было где мне процедуры делать =)
Сообщение отредактировано: sintanial - 26.05.2008 23:14 |
warning777 |
![]()
Сообщение
#8
|
Новичок ![]() Группа: Пользователи Сообщений: 14 Пол: Мужской Репутация: ![]() ![]() ![]() |
Я НЕ знаю что значит поставить в теги паскалевские !!!
Разбил и отредактировал, если не так,напиши как надо,я правда не знаю |
sintanial |
![]()
Сообщение
#9
|
Пионер ![]() ![]() Группа: Пользователи Сообщений: 70 Пол: Мужской Реальное имя: Мартын Репутация: ![]() ![]() ![]() |
Когда отвечаешь на пост то вверху есть такая надпись CODE, а там рядом с ней стрелочка. Жмякай на стрелочку, ищи паскаль/делфи, и ставь два тега. Один это начало {code=pas} дальше пишешь код программы тута и потом закрываешь тегом {/code}. ТОлько замени {} на []
Сообщение отредактировано: sintanial - 26.05.2008 23:25 |
warning777 |
![]()
Сообщение
#10
|
Новичок ![]() Группа: Пользователи Сообщений: 14 Пол: Мужской Репутация: ![]() ![]() ![]() |
Сообщение отредактировано: warning777 - 26.05.2008 23:52 |
sintanial |
![]()
Сообщение
#11
|
Пионер ![]() ![]() Группа: Пользователи Сообщений: 70 Пол: Мужской Реальное имя: Мартын Репутация: ![]() ![]() ![]() |
Ураааа, хоть это получилось =). Щас сделаю все что в моих силах =) . По хорошему процедуры нужно уметь делать самому =)
Добавлено через 11 мин. Варнинг, покажи где именно нужно делать процедуры. Те комментарии можешь удалить =), лучше поставь коменты где надо делать процедуры. Потому что там не везде нужны процедуры, в некоторых случаях нужны функции Добавлено через 13 мин. Слухай а у тя прога вообще правельно пашет ?
Как это так ? сначало k:=1 а потом делаем цикл до k. Он все время вроде будет выполняться один раз. Если я ошибаюсь то поправь =) ! |
warning777 |
![]()
Сообщение
#12
|
Новичок ![]() Группа: Пользователи Сообщений: 14 Пол: Мужской Репутация: ![]() ![]() ![]() |
САм в шоке
![]() но даже если я меняю k на 10 (тестю и у меня 10 элементов для сортировки получается,все работает) три раза проверил,пашет ![]() |
sintanial |
![]()
Сообщение
#13
|
Пионер ![]() ![]() Группа: Пользователи Сообщений: 70 Пол: Мужской Реальное имя: Мартын Репутация: ![]() ![]() ![]() |
Ну правельно. У тебя ведь там два цикла. Первый вот там де ошибка выполняется один раз если я не ошибаюсь, а второй уже выполняет столько раз сколько тебе нуна !
З.ы. Ща заканчиваю =) Добавлено через 10 мин. То что я выделил красным, у мя вопрос. ЗАЧЕМ ТЕБЕ ЭТО ? =)
Добавлено через 2 мин. Основную программу думаю ты сам сделаешь. И еще , так как я писал тута, и уже час ночи( сам понимаешь), то ошибак там не мало =) . Де то end; пропустил в процедуре, де то не описал переменную, де то точку забыл. Подредактируй =) |
warning777 |
![]()
Сообщение
#14
|
Новичок ![]() Группа: Пользователи Сообщений: 14 Пол: Мужской Репутация: ![]() ![]() ![]() |
Спасибо !!! Спасибо !
Попробую доделать ![]() У меня четыре часа ночи) |
![]() ![]() |
![]() |
Текстовая версия | 19.06.2025 21:16 |