515

Обработка одномерных массивов. Формирование новых массивов

Лабораторная работа

Информатика, кибернетика и программирование

Получить навыки разработки и реализации типовых алгоритмов обработки одномерных массивов на языке Delphi. Научиться формировать новые массивы из заданных массивов в соответствии с некоторым условием.

Русский

2013-01-06

246 KB

64 чел.

МИНИСТЕРСТВО ОБРАЗОВАНИЯ РЕСПУБЛИКИ БЕЛАРУСЬ

УЧРЕЖДЕНИЕ ОБРАЗОВАНИЯ

«ГОМЕЛЬСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ ИМЕНИ П.О. СУХОГО»

Факультет автоматизированных и информационных систем

Кафедра «Информатика»

Отчёт по лабораторной работе №8

«Обработка одномерных массивов. Формирование новых массивов»

Выполнил студент гр. ГА-11

Луцко А.Н.

Принял преподаватель

Мисюткин В.И.

Дата допуска к защите __________

Дата защиты __________

Гомель 2012


Цель работы
: Получить навыки разработки и реализации типовых алгоритмов обработки одномерных массивов на языке Delphi. Научиться формировать новые массивы из заданных массивов в соответствии с некоторым условием.

Задание: В каждой из задач заданы два массива чисел произвольной длины. Требуется сформировать новый массив по алгоритму, указанному в задании.

Программа должна:

вводить размерности и элементы исходных массивов;

выполнять действия в соответствии с условием задачи;

выводить:

исходные массивы,

сформированный массив, если он был сформирован. В противном случае –соответствующее сообщение.

Исходные данные для отладки программы выбрать самостоятельно. Для ввода и вывода массива использовать визуальный компонент StringGrid. Тесты составлять таким образом, чтобы были учтены различные возможные случаи.

Задача: Сформировать  массив из отрицательных элементов первого массива и элементов второго массива, небольших 3.

Вид окна формы

Таблица свойств компонентов

Элемент интерфейса

Компонент

Свойство

Значение свойства

Заголовок окна

Form1

Caption

Лабораторная работа8

Размер массива A

Label1

Caption

Размер массива A:

Размер массива B

Label2

Caption

Размер массива B:

Исходные данные

Label4

Caption

Исходные данные:

Результат

Label5

Caption

Результат:

Поле ввода размера массива A

Edit1

Text

Поле ввода размера массива B

Edit2

Text

Кнопка Вычислить

Button1

Caption

Вычислить

Таблица для ввода значений массива A

StringGrid1

FixedRows

FixedCols

ColCount

RowCount

goEditing

0

0

20

1

True

Таблица для ввода значений массива B

StringGrid2

FixedRows

FixedCols

ColCount

RowCount

goEditing

0

0

20

1

True

Таблица для вывода значений

StringGrid3

FixedRows

FixedCols

ColCount

RowCount

goEditing

0

0

20

1

False

Таблица используемых событий

Компонент

Событие

Имя процедуры обработки события

Реализуемый алгоритм

Button1

OnClick

TForm1.Button1Click

Вычисление

Edit1

OnChange

TForm1.Edit1Change

Изменение размера массива A

Edit2

OnChange

TForm1.Edit2Change

Изменение размера массива B

Таблица используемых переменных

Имя переменной в задаче

Имя переменной в программе

Тип переменной

Комментарий

-

a

array[1..20] of real

Массив значений A

-

b

array[1..20] of real

Массив значений B

-

c

array[1..20] of real

Массив конечных значений

-

i

integer

Текущий элемент массива

N

n

integer

Размер  массива A

M

m

integer

Размер  массива B

-

kol

integer

Размер  массива C

Тест 1

Исходные данные: n = 5, m = 5

1

2

3

4

5

5

6

7

8

9

Ожидаемый результат : Сообщение “Нет таких элементов”

Результат в программе:

 

Тест 2

Исходные данные: n = 5, m = 5,

-1

-2

3

4

5

6

7

8

9

10

Ожидаемый результат :  

-1

-2

Результат в программе:  

Тест 3

Исходные данные: n = 5, m = 5,

1

2

3

4

5

3

2

1

1

0

Ожидаемый результат :  

3

2

1

1

0

Результат в программе:  

Тест 4

Исходные данные: n = 5, m = 5,

-1

-2

8

4

5

3

2

-1

4

4

Ожидаемый результат :  

-1

-2

3

2

-1

Результат в программе:   


                                                               
Cхема алгоритма


Текст
 модуля

unit Unit1;

//Выполнил: Луцко А.Н.

interface

uses

 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

 Dialogs, StdCtrls, Grids;

type

 TForm1 = class(TForm)

   Edit1: TEdit;

   Label1: TLabel;

   StringGrid1: TStringGrid;

   Button1: TButton;

   StringGrid2: TStringGrid;

   Label4: TLabel;

   Label5: TLabel;

   StringGrid3: TStringGrid;

   Label2: TLabel;

   Edit2: TEdit;

   procedure Button1Click(Sender: TObject);

   procedure Edit1Change(Sender: TObject);

   procedure Edit2Change(Sender: TObject);

 private

   { Private declarations }

 public

   { Public declarations }

 end;

var

 Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);

var a,b,c:array[1..20] of real;

i, n, m, kol: integer;

begin

 n := StrToInt(Edit1.Text);

 m := StrToInt(Edit2.Text);

 for i := 1 to n do begin

   a[i] := StrtoFloat(StringGrid1.Cells[i - 1,0]);

 end;

 for i := 1 to m do begin

   b[i] := StrtoFloat(StringGrid2.Cells[i - 1,0]);

 end;

 kol := 1;

 for i := 1 to n do begin

   if a[i] < 0 then  begin

     c[kol] := a[i];

     kol := kol + 1;

   end;

 end;

 for i := 1 to m do

 begin

   if b[i] <= 3 then

   begin

     c[kol] := b[i];

     kol := kol + 1;

   end;

 end;

 if kol > 1 then begin

   StringGrid3.ColCount := kol - 1;

   for i := 1 to kol - 1 do begin

     StringGrid3.Cells[i - 1,0] := FloatToStr(c[i]);

   end;

 end

 else ShowMessage('Нет таких элементов');

end;

procedure TForm1.Edit1Change(Sender: TObject);

begin

 StringGrid1.ColCount := StrToInt(Edit1.Text);

end;

procedure TForm1.Edit2Change(Sender: TObject);

begin

 StringGrid2.ColCount := StrToInt(Edit2.Text);

end;

end.

Вывод: Получил навыки разработки и реализации типовых алгоритмов обработки одномерных массивов на языке Delphi. Научился формировать новые массивы из заданных массивов в соответствии с некоторым условием.


конец

Нет таких элементов

Вывод C

Нет

Да

kol>1

i = i + 1

c[kol] = b[i]

kol = kol+1

Нет

Да

b[i]<=3

Нет

Да

i<=m

i  = 1

i = i + 1

kol = kol+1

c[kol] = a[i]

Нет

Да

a[i]<0

Нет

Да

i  = 1

i<=n

kol = 1

Ввод D, элементов массивов A, B

начало


 

А также другие работы, которые могут Вас заинтересовать

29968. Основные проблемы психологии эмоций 65.5 KB
  Основные проблемы психологии эмоций Эмоции это переживание челом его отношения к окружающему миру и самому себе. Экспрессии выделил Дарвин; по внешн проявлениям другие судят об эмоции; важно у животных сист знаков предупреждений оповещений. Появление данной теории привело к упрощению понимания механизмов произвольной регуляции например нежелательные эмоции такие как горе или гнев можно подавить если намеренно совершать действия в результате которых обычно появляются положительные эмоции. В ней эмоции трактуются как субъективные...
29969. Основные проблемы психологии воли 91 KB
  Основные проблемы психологии воли. Понятие воли волевого действия волевой регуляции. Проблема воли имеет не только психологические но и философские и правовые аспекты. Характерно что проблема свободы воли и ответственности продолжает оставаться предметом анализа и споров философов юристов.
29970. Основные проблемы психологии мотивации 76.5 KB
  Потребность ПТ свойство всех живых существ у человека осознание и цель. Понимание потребности как нужды в чёмлибо что находится за пределами организма Узнадзе Платонов Потребность как отсутствие блага благо состояние человека и внешней среды которые обуславдивают сохранение и развитие субекта Магун. Потребность как необходимость как заложенная программа Д.Леонтьев: потребность есть объективное отношение между субъектом и миром.
29971. Мотивация отдельных видов деятельности. Ильин, Вилюнас 74 KB
  Мотивация отдельных видов деятельности. В контексте Д мотив в структуре этой деятельности. Экспериментальные изучения мотивации трудовой деятельности. Мотивация трудовой деятельности стремление работника удовлетворить свои потребности в определенных благах посредством труда направленного на достижение целей организации.
29972. Проблема предмета психологии 53 KB
  А на некоторых ученых она произвела такое впечатление что они связали с ней решение двух фундаментальных вопросов: о предмете и о методе психологии. Однако этот вывод был преодолен дальнейшим развитием психологии. Проблема предмета психологии является одной из ключевых в связи с тем на современном этапе развития психологической науки нет единого представления о ее предмете.
29973. Методология и методы исследования в психологии 71 KB
  Методология и методы исследования в психологии Вступление: об актуальности изучения методологии развитие науки междисциплинарные связи новые исследования в больших коллективах требуют единого понимания методов. Методология науки учение о методах и принципах познания обеспечивающих путь к объективной истине это учение о структуре логической организации методах и средствах Дружинин В. предмет саморефлексия науки а именно изучение методологических принципов познания позволяющих решать ключевые психологич проблемы психофизич...
29974. Развитие психики в процессе эволюции животного мира 48.5 KB
  Развитие психики в процессе эволюции животного мира Психика системное свойство высокоорганизованной материи заключается в активном отражении субъектом объективного мира в построении картины мира и саморегуляция на этой основе своего поведения и деятельности. Зоопсихизм путь к изучению психики ч з изучение поведения. Низший уровень простейшие: преобладают инстинктивные формы поведения. В основном форма поведения таксисы простейшие движения у некоторых появляется подобие брачных игр черви.
29975. ВПФ по Л.С. Выготскому. Их происхождение, свойства, генезис 57 KB
  Выготский создал культурноисторическую теорию психики человека. Иногда ее называют теорией общественноисторического происхождения высших психических функций человека. 1 измененное взаимоотношение человека и природы. 2 высшие появляются у человека произвольные: человек может заставить себя запомнить некоторый материал обратить внимание на какойто предмет организовать свою умственную деятельность.
29976. ПРОБЛЕМА СОЗНАНИЯ В ПСИХОЛОГИИ 147 KB
  Поэтому в психологии говорят о единстве сознания челка и его деятельности. Явления сознания как предмет интроспективной психологии XIX века. Существование сознания главный и безусловный факт а задача психологии проанализировать состояния и содержание сознания предмет сознание.