![]() |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
![]() |
Райдер |
![]()
Сообщение
#1
|
Гость ![]() |
ребят, такая же фигня. в Паскале надо решить такую задачу:
Цитата вставить число в упорядоченный массив. Вновь образованный массив вывести на экран. Завтра в универе будет грустно без этой задачи. А в Паскале и вообще в программировании не понимаю НИЧЕГО. вообще дуб дубом. задача то наверное для вас детская, но кто поможет тому МЕГА респект и спасибо! ![]() Добавлено (21.12.04 9:55): сорри, забыл, массив одномерный. |
![]() ![]() |
mithquessir |
![]()
Сообщение
#2
|
Гость ![]() |
volvo
Согласен. :yes: Код type ArrElem = integer; ArrType = array[1..1] of ArrElem; TArr = object Arr:^ArrType; private ArrSize:word; public constructor Create; destructor Destroy; procedure SetArrSize(size:word); procedure Enter; procedure Print; procedure Insert(pos:word,num:integer); procedure IncArrSize; end; constructor TArr.Create; begin GetMem(Arr,ArrSize * SizeOf(ArrElem)); end; destructor TArr.Destroy; begin FreeMem(Arr,ArrSize * SizeOf(ArrElem)); end; procedure TArr.SetArrSize(size:word); begin ArrSize := size; end; procedure TArr.Enter; var i:integer; begin WriteLn('Vvodite elementy postrochno'); for i := 1 to ArrSize do begin Write('[',i,']='); Read(Arr^[i]); end; end; procedure TArr.Print; var i:integer; begin WriteLn('Massiv:'); for i := 1 to ArrSize do WriteLn('[',i,']=',Arr^[i]); end; procedure TArr.Insert(pos:word,num:integer); var i:integer; begin IncArrSize; for i := ArrSize downto pos do Arr^[i] := Arr^[i-1]; Arr^[pos] := num; end; procedure TArr.IncArrSize; var b:array[1..1000] of ArrElem; i,oldsize:integer; begin for i := 1 to ArrSize do b[i] := Arr^[i]; oldsize := ArrSize; SetArrSize(ArrSize+1); Create; for i := 1 to oldsize do arr^[i] := b[i]; end; var a:TArr; begin a.SetArrSize(5); a.Create; a.Enter; a.Insert(2,0); a.Print; a.Destroy; end. |
![]() ![]() |
![]() |
Текстовая версия | 27.07.2025 11:46 |