русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Алгоритмы удаления, вставки и перестановки элементов


Дата добавления: 2015-06-12; просмотров: 1995; Нарушение авторских прав


Задача 1. Дан массив A, состоящий из 12 элементов. Элементы массива - произвольные целые числа. Поменять местами значения 1 и 2 элементов, 3 и 4 и т.д. Измененный массив вывести на экран.

USES Crt;

VAR

A:ARRAY[0..12] OF INTEGER;

I: BYTE; PP:INTEGER;

BEGIN

ClrScr; Randomize;

WriteLn(' Значения элементов массива');

FOR I:=1 TO 12 DO Begin

A[I]:=Random(20); Write(A[I]:3);

End; WriteLn;

I:=1;

WHILE I<=12 DO Begin

{перестановка элементов местами, используя промежуточную переменную PP }

PP:=A[I]; A[I]:=A[I+1]; A[I+1]:=PP;

I:=I+2;

End;

WriteLn(' Значения элементов измененного массива');

FOR I:=1 TO 12 DO

Write(A[I]:3);

END.

Задача 2. Дан массив целых чисел из 15 элементов, заполненный случайным образом числами из промежутка [-20,50].

1. Удалить из него все элементы, в записи которых есть цифра 5.

2. Вставить число K после всех элементов, кратных своему номеру (К вводится с клавиатуры).

3. Поменять местами первый положительный и последний отрицательный элементы.}

USES Crt;

VAR

P,P1:ARRAY[0..15] OF INTEGER; P2:ARRAY[0..30] OF INTEGER;

I,J,E,D,PP,PO,FL: BYTE; K,PRP:INTEGER;

BEGIN

ClrScr; Randomize;

WriteLn(' Значения элементов массива P');

FOR I:=1 TO 15 DO Begin

P[I]:=Random(70)-20; Write(P[I]:4);

End; WriteLn;

J:=1;

{ 1. Удаление }

FOR I:=1 TO 15 DO Begin

E:=ABS(P[I]) mod 10; {Выделение единиц}

D:=ABS(P[I]) div 10; {Выделение десятков}

{ формирование нового массива }

IF (E<>5) AND (D<>5) THEN Begin P1[J]:=P[I]; J:=J+1; End;

End;

WriteLn(' Массив, в котором нет элементов с цифрой 5');

FOR I:=1 TO J-1 DO

Write(P1[I]:4);

WriteLn;

{ 2. Вставка }

Write(' Введите значение переменной '); ReadLn(K);

J:=1;

FOR I:=1 TO 15 DO Begin

P2[J]:=P[I]; J:=J+1;

IF ABS(P[I]) mod I = 0 THEN Begin P2[J]:=K; J:=J+1; End;



End;

WriteLn(' Массив, в котором после элементов, кратных своему номеру, вставлено число =',K);

For I:=1 TO J-1 DO

Write(P2[I]:4);

WriteLn;

{ 3. Перестановка }

{ Нахождение первого положительного и последнего отрицательного элемента }

FL:=0;

FOR I:=1 TO 15 DO Begin

IF (P[I]>0) AND (FL=0) THEN Begin PP:=I; FL:=1; End;

IF P[I]<0 THEN PO:=I;

End;

{ перестановка местами первого положительного и последнего отрицательного'}

PRP:=P[PP]; P[PP]:=P[PO]; P[PO]:=PRP;

WriteLn(' Массив, в котором первый положительный и последний отрицательный');

WriteLn(' поменяли местами');

FOR I:=1 TO 15 DO

Write(P[I]:4);

END.

.....................................................................................................................................

Практические задания

.....................................................................................................................................

Дан массив целых чисел из 10 элементов, заполненный случайным образом из промежутка [-40, 30].

1. Удалить из него все элементы, которые состоят из одинаковых цифр ( включая однозначные числа).

2. Вставить число К перед всеми элементами, в которых есть цифра 1 (К вводится с клавиатуры)

3. Переставить первые три и последние три элемента местами, сохраняя порядок их следования.



<== предыдущая лекция | следующая лекция ==>
Алгоритмы нахождения наибольшего или наименьшего элемента массива и его индекса | Алгоритмы действий над элементами двумерного массива


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 1.528 сек.