Другие языки программирования и технологии
Задача массив. Паскаль.
В заданном массиве найти все числа, меньшие заданного А, и переместить их в начало массива в той же последовательности. пожалуйста!! оч надо!!
const aSize = 30 ; //размер массива
type TMyType : integer ;
TMyArray : Array[1..aSize] of TMyType ;
var myarray : TMyArray;
ss : TMyType ;
i, j : byte; // при условии что размер массива не больше 255 иначе integer
a : integer;
function perenos(var myarray : TMyArray; i, j : byte) ;
//функция переносит j элемент массива на место i
// при это сдвигая вправо все элементы за i
// i меньше j
var l : byte ;//темповая переменная
ss : TMyType ;//темповая переменная
begin
ss := myarray[j] ;
while j <> i do begin
myarray[j] := myarray[j - 1] ;
Dec(j) ;
end ;
myarray := ss ;
end ;
begin
write('Введите элементы массива - ');
for i := 1 to aSize do begin
//насколько помню, сразу массив нельзя писать т. е. read(myarray);
//если можно то переделай, продебагь
read(ss) ;
myarray := ss ;
end ;
writeln('Введите А') ;
read(a) ;
i := 1 ; //на какое место переставлять меньшие числа
for j := 1 to aSize do
if myarray[j] < a then begin
perenos(myarray, i, j) ;
Inc(i) ;
end ;
writeln('Результат - ')
for j := 1 to aSize do begin
write(myarray[j]);
write(' ');
//и вот не помню как вместе с разделителем в одну строчку сделать (((
//13 лет прошло
end;
end.
type TMyType : integer ;
TMyArray : Array[1..aSize] of TMyType ;
var myarray : TMyArray;
ss : TMyType ;
i, j : byte; // при условии что размер массива не больше 255 иначе integer
a : integer;
function perenos(var myarray : TMyArray; i, j : byte) ;
//функция переносит j элемент массива на место i
// при это сдвигая вправо все элементы за i
// i меньше j
var l : byte ;//темповая переменная
ss : TMyType ;//темповая переменная
begin
ss := myarray[j] ;
while j <> i do begin
myarray[j] := myarray[j - 1] ;
Dec(j) ;
end ;
myarray := ss ;
end ;
begin
write('Введите элементы массива - ');
for i := 1 to aSize do begin
//насколько помню, сразу массив нельзя писать т. е. read(myarray);
//если можно то переделай, продебагь
read(ss) ;
myarray := ss ;
end ;
writeln('Введите А') ;
read(a) ;
i := 1 ; //на какое место переставлять меньшие числа
for j := 1 to aSize do
if myarray[j] < a then begin
perenos(myarray, i, j) ;
Inc(i) ;
end ;
writeln('Результат - ')
for j := 1 to aSize do begin
write(myarray[j]);
write(' ');
//и вот не помню как вместе с разделителем в одну строчку сделать (((
//13 лет прошло
end;
end.
дуй в аську 169527143
Похожие вопросы
- Задача по паскалю. Массивы
- Помогите решить задачу по паскалю на двумерные массивы.
- Задача на МАССИВЫ Паскаль ОЧЕНЬ СРОЧНО!!!!
- Задачи на массив паскаль, помогите пожалуйста
- Pascal. Помогите пожалуйста решить задачу в паскале !
- кто может решить и кому не лень помогите с задачей по паскалю, сам плохо с двумерными массивами лажу
- ПОМОГИТЕ С ЗАДАЧАМИ В ПАСКАЛЕ
- Сортировка массива (Паскаль) помогите пожалуйста
- одномерные массивы паскаль
- Помогите, пожалуйста с задачей :( Сижу, туплю уже какой день, вообще не соображу - чтокуда. Задача на Паскале