Разбитие на процедуры(СРОЧНО), Заплачу если мне помогут |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
Разбитие на процедуры(СРОЧНО), Заплачу если мне помогут |
warning777 |
Сообщение
#1
|
Новичок Группа: Пользователи Сообщений: 14 Пол: Мужской Репутация: 0 |
У меня проблема, есть готовая программа но ее надо разбить на процедуры,программа рабочая.
Моя ася 5515795 заплачу 50р Сдавать послезавтра ! |
warning777 |
Сообщение
#2
|
Новичок Группа: Пользователи Сообщений: 14 Пол: Мужской Репутация: 0 |
{ Задание - если имеются нулевые и отрицательные элементы}
{ то отсортировать элементы стоящие между} { первым отрицательным и последним нулевым } { в порядке возрастания . Если нет нулевых или отрицательных} { не сортировать } {Надо разбить на процедуры :} {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 - |
sintanial |
Сообщение
#3
|
Пионер Группа: Пользователи Сообщений: 70 Пол: Мужской Реальное имя: Мартын Репутация: 1 |
А в чем трудность ? это 5-10 минут делов, ты дольше ответа будешь тута ждать, так как это тупо механическая работа =).
|
warning777 |
Сообщение
#4
|
Новичок Группа: Пользователи Сообщений: 14 Пол: Мужской Репутация: 0 |
Очень нужна помощь !
Добавлено через 2 мин. Я просто не понимаю как это делается |
sintanial |
Сообщение
#5
|
Пионер Группа: Пользователи Сообщений: 70 Пол: Мужской Реальное имя: Мартын Репутация: 1 |
Варнинг, отредактируй, поставь в теги паскалевские, и сделай редактирование текста, что бы легче читать мона было, тогда я тебе помогу =)
|
warning777 |
Сообщение
#6
|
Новичок Группа: Пользователи Сообщений: 14 Пол: Мужской Репутация: 0 |
Так ? Плиз хелп
|
sintanial |
Сообщение
#7
|
Пионер Группа: Пользователи Сообщений: 70 Пол: Мужской Реальное имя: Мартын Репутация: 1 |
ПОСТАВЬ в паскалевские теги свой код программы, и отредактируй нормально. Я не собираюсь тута пол часа сидеть и пытаться разобрать твой код, мне же не чего не видно, что под чем стоит. Каким ендом какой цикл закрывается и т.д. ! Вот когда сделаешь, тогда я тебе помогу
З.ы. И еще сделай пожалуйста вот так если тебя конечно не затруднит. Это что бы видно было где мне процедуры делать =)
Сообщение отредактировано: sintanial - |
warning777 |
Сообщение
#8
|
Новичок Группа: Пользователи Сообщений: 14 Пол: Мужской Репутация: 0 |
Я НЕ знаю что значит поставить в теги паскалевские !!!
Разбил и отредактировал, если не так,напиши как надо,я правда не знаю |
sintanial |
Сообщение
#9
|
Пионер Группа: Пользователи Сообщений: 70 Пол: Мужской Реальное имя: Мартын Репутация: 1 |
Когда отвечаешь на пост то вверху есть такая надпись CODE, а там рядом с ней стрелочка. Жмякай на стрелочку, ищи паскаль/делфи, и ставь два тега. Один это начало {code=pas} дальше пишешь код программы тута и потом закрываешь тегом {/code}. ТОлько замени {} на []
Сообщение отредактировано: sintanial - |
warning777 |
Сообщение
#10
|
Новичок Группа: Пользователи Сообщений: 14 Пол: Мужской Репутация: 0 |
Сообщение отредактировано: warning777 - |
sintanial |
Сообщение
#11
|
Пионер Группа: Пользователи Сообщений: 70 Пол: Мужской Реальное имя: Мартын Репутация: 1 |
Ураааа, хоть это получилось =). Щас сделаю все что в моих силах =) . По хорошему процедуры нужно уметь делать самому =)
Добавлено через 11 мин. Варнинг, покажи где именно нужно делать процедуры. Те комментарии можешь удалить =), лучше поставь коменты где надо делать процедуры. Потому что там не везде нужны процедуры, в некоторых случаях нужны функции Добавлено через 13 мин. Слухай а у тя прога вообще правельно пашет ?
Как это так ? сначало k:=1 а потом делаем цикл до k. Он все время вроде будет выполняться один раз. Если я ошибаюсь то поправь =) ! |
warning777 |
Сообщение
#12
|
Новичок Группа: Пользователи Сообщений: 14 Пол: Мужской Репутация: 0 |
САм в шоке
но даже если я меняю k на 10 (тестю и у меня 10 элементов для сортировки получается,все работает) три раза проверил,пашет |
sintanial |
Сообщение
#13
|
Пионер Группа: Пользователи Сообщений: 70 Пол: Мужской Реальное имя: Мартын Репутация: 1 |
Ну правельно. У тебя ведь там два цикла. Первый вот там де ошибка выполняется один раз если я не ошибаюсь, а второй уже выполняет столько раз сколько тебе нуна !
З.ы. Ща заканчиваю =) Добавлено через 10 мин. То что я выделил красным, у мя вопрос. ЗАЧЕМ ТЕБЕ ЭТО ? =)
Добавлено через 2 мин. Основную программу думаю ты сам сделаешь. И еще , так как я писал тута, и уже час ночи( сам понимаешь), то ошибак там не мало =) . Де то end; пропустил в процедуре, де то не описал переменную, де то точку забыл. Подредактируй =) |
warning777 |
Сообщение
#14
|
Новичок Группа: Пользователи Сообщений: 14 Пол: Мужской Репутация: 0 |
Спасибо !!! Спасибо !
Попробую доделать У меня четыре часа ночи) |
Текстовая версия | 18.04.2024 13:37 |