27.11.2011, 16:31 | #1 (permalink) |
Member
Регистрация: 27.11.2011
Сообщений: 29
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
|
Массив, почти решена задача
вот листинг Program massive; Var r,buffer,j,imax,i,n,k,max,b:integer; l:boolean; A,az : array [1..500] of integer; begin cls; writeLn('Ââåäèòå ðàçìåðíîñòü ìàññèâà ='); readLn(n); for I:=1 to n do begin Write('A[',I:2,']='); Readln(A[I]) End; For k:=1 to n do if a[k]>max then begin max:=a[k]; i:=k; end; writeln('Ìàêñèìàëüíûé ýëåìåíò ìàññèâà A[',i,']=',max); for i:=i+1 to n do az[I+1]:=a[I]; for i:=3 to n do for j:=i to n do Begin If az[i]>az[j] Then Begin Buffer:=az[j]; aZ[j]:=az[i]; aZ[i]:=Buffer; End; End; WriteLn ('Óïîðÿäî÷åí ïî âîçðàñòàíèþ:'); for I:=1 to n Do Begin Write (az[I]:4,' '); end; end. я уже незнаю что делать, ну не получается вывести массив отсортированный( от max до n ) + кусок старого до max напишите как правильно |
27.11.2011, 16:31 | |
Helpmaster
Member
Регистрация: 08.03.2016
Сообщений: 0
|
Эти обсуждения по содержанию схожи с вашими и могут вам помочь Усилитель почти без деталей Почти моддинг Экзаменационная задача на массив Двумерный массив. Задача |
27.11.2011, 17:23 | #2 (permalink) |
Специалист
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,807
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
|
Дык... отлаживать программу. Чтобы получилось, например, так:
Код:
Var buffer,j,i,i_max,n,n1,k,max:integer; A,az : array [1..500] of integer; begin write('Введите размерность массива = '); readLn(n); for i:=1 to n do begin Write('A[',i:2,']= '); Readln(A[i]) End; Writeln; Writeln; max:=A[1]; i_max:=1; For k:=2 to n do if a[k]>max then begin max:=a[k]; i_max:=k; end; writeln('Максимальный элемент массива A[',i_max,']= ',max); Writeln; Writeln; for k:=i_max+1 to n do Az[k-i_max]:=A[k]; n1:=n-i_max; for i:=1 to n1 do for j:=1 to n1-i do If Az[j]>Az[j+1] then begin Buffer:=Az[j]; Az[j]:=Az[j+1]; Az[j+1]:=Buffer; end; Writeln('Исходный массив:'); For i:=1 to n do Write(A[i]:4); Writeln; Writeln; WriteLn ('Упорядоченный по возрастанию после максимального:'); for i:=1 to i_max do Write(A[i]:4); for i:=1 to n1 do Write(Az[i]:4); Readln end. |
Ads | |
Member
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
|
|
|