Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 29.09.2009, 15:56   #1
LIARH
 
Регистрация: 09.07.2009
Сообщений: 7
Печаль Помогите с Паскалем Часть 2

Задача 3.

Условие задачи:

Дан одномерный массив Zn. Удалить все элементы массива с четными индексами. Дописать в конец массива умму положительных элементов массива. Отсортировать исходный массив по возрастанию.

Программа:
Код:
PROGRAM Arrays3; {заголовок программы}

USES Crt, {Подключение модуля, содержащего процедуры ClrScr и ReadKey}
     UnitArr3;

VAR x, y, z: TArray;
    i, iz: Integer; {для цикла}
    count: Integer;

BEGIN
ClrScr; {процедура очистки экрана}

ReadArrs(x, y); {считываю массив из файла}

count := 0;
iz := 0;
for i := 1 to N do
begin
    if (x[i] > 0) and (count < 5) then begin
                                           Inc(iz);
                                           z[iz] := x[i];
                                           Inc(count);
                                       end;
end; {for i}
count := 0;
iz := 11;
for i := N downto 1 do
begin
    if (y[i] < 0) and (count < 5) then begin
                                           Dec(iz);
                                           z[iz] := y[i];
                                           Inc(count);
                                       end;
end; {for i}

Sort(x, N);

Write('Массив Z: ');
for i := 1 to 10 do Write(z[i], ' ');
WriteLn;

Write('Отсортированный массив X: ');
for i := 1 to N do Write(x[i], ' ');

ReadKey; {процедура ожидания нажатия клавиши (чтобы можно было посмотреть результат)}
END.
Подключение модуля:
Код:
Unit UnitArr3;

INTERFACE

    Const N = 10; {размерность массива}

    Type TElem = Integer;
         TArray = array [1..N] of TElem;
    Procedure ReadArrs(var a1, a2: TArray);
    Procedure Sort(var a: TArray; n: Integer); {Процедура сортировки массива по возрастанию}
IMPLEMENTATION

    Procedure ReadArrs(var a1, a2: TArray);
    Var i: Integer;
        f: Text;
    Begin
        Assign(f, 'D:\Arrays3.txt');
        Reset(f);
            for i := 1 to N do
            begin
                Read(f, a1[i]);
                Write(a1[i], ' ');
            end; {for i}
            WriteLn;
            for i := 1 to N do
            begin
                Read(f, a2[i]);
                Write(a2[i], ' ');
            end; {for i}
            WriteLn;
        Close(f);
    End; {ReadArr}

    Procedure Sort(var a: TArray; n: Integer); {Процедура сортировки массива по возрастанию}
    Var i, j, iMin: Integer;
        e: TElem;
    Begin
        for i := 1 to n do
        begin
            iMin := i;
            for j := i+1 to n do
                if a[j] < a[iMin] then iMin := j;
            e := a[iMin];
            a[iMin] := a[i];
            a[i] := e;
        end; {for i}
    End; {Sort}
END.

Последний раз редактировалось Stilet; 15.12.2010 в 20:52.
LIARH вне форума Ответить с цитированием
Старый 15.12.2010, 19:59   #2
biostar
Новичок
Джуниор
 
Регистрация: 10.12.2010
Сообщений: 2
По умолчанию Решим Паскаль

http://vkontakte.ru/club22127441 - тут всё решим.
biostar вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите с паскалем KocTuK Паскаль, Turbo Pascal, PascalABC.NET 5 15.09.2008 06:33
Помогите с Паскалем Luchnik_666 Помощь студентам 1 19.06.2008 12:54
Часть фона одним цветом а другая часть другим (без таблиц). Lanselot HTML и CSS 4 25.04.2008 18:41
помогите с паскалем lyonya0111 Помощь студентам 12 22.01.2008 18:39