11540

Разработка оконных приложений, использующих автономные модули

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

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

Лабораторная работа №8 Разработка оконных приложений использующих автономные модули Условие Задача 3.4. Составьте подпрограмму исходными данными которой являются числовые массивы C и или D из n элементов. Основной её результат – также массив получающий некотор

Русский

2013-04-08

91.98 KB

1 чел.

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

«Разработка оконных приложений, использующих автономные модули»

Условие

Задача 3.4.

Составьте подпрограмму, исходными данными которой являются числовые массивы C и (или) D из n элементов. Основной её результат – также массив, получающий некоторое множество элементов. Их количество (оно может быть равно нулю) – ещё один результат. Требуемые результаты подпрограммы и прочие данные указаны в вариантах.

Множество элементов массива C, следующих за первым нулевым элементом массива C (пустое множество, если в C нулей нет); число нулей в массиве C.

Состав данных для программы

Имя

Смысл

Тип

Структура

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

n

Число столбцов матрицы

Целый

Простая переменная

С

Заданный массив

Вещественный

Одномерный массив

Выходные данные

D

Множество элементов массива C, следующих за первым нулевым элементом массива C

Вещественный

Одномерный массив

Промежуточные данные

j

Счетчик столбцов

Целый

Простая переменная

Состав данных для подпрограммы nul

Имя

Смысл

Тип

Структура

Входные параметры

n

Число столбцов матрицы

Целый

Простая переменная

С

Заданный массив

Вещественный

Одномерный массив

Выходные параметры

k

Число нулей в массиве C

Целый

Простая переменная

Промежуточные данные

j

Счетчик столбцов

Целый

Простая переменная

Состав данных для подпрограммы mnog

Имя

Смысл

Тип

Структура

Входные параметры

n

Число столбцов матрицы

Целый

Простая переменная

С

Заданный массив

Вещественный

Одномерный массив

Выходные параметры

D

Множество элементов массива C, следующих за первым нулевым элементом массива C

Вещественный

Одномерный массив

Промежуточные данные

j

Счетчик столбцов

Целый

Простая переменная

g

Счетчик цикла

Целый

Простая переменная

Форма ввода

Блок-схема программы

начало

   

ввод  n,   Cj    nj=1

Вывод nul(c,n)

 

Mnog(c,d,n)

Вывод    Djnj=1

конец

Блок-схема для подпрограммы mnog

Передача C,D,n

j:=0; g:=0

  j<=n-1

C[j-1]=0

h:=j

i:=h

  h<=n-1

D[g]:=c[i]

 

        G:=g+1

        H:=h+1

       Выход из цикла

Передача D[j]

передача n, Ci nj=1

Блок-схема подпрограммы nul 

 k:=0

J:=0

        j<=n-1

     C[j]=0

 

k:=k+1

j:=j+1

nul:=k

Программный код автономного модуля

unit Unit2;

interface

function nul(var c:array of real; n:integer):integer;

procedure mnog(var c,d:array of real; var n,g:integer);

implementation

function nul;

 var j,k:integer;

begin

 for j:=0 to n-1 do

   if c[j]=0 then

     k:=k+1;

 nul:=k;

end;

procedure mnog;

 var j,i,h:integer;

begin

g:=0;

 For j:=0 To n-1 do

   if c[j-1]=0 then

    begin

     h:=j;

     For i:=h to (n-1) do

       begin

         d[g]:=c[i];

         g:=g+1;

       end;

     break;

    end;

end;

end.

Программный код основных обработчиков.

procedure TForm1.Button2Click(Sender: TObject);

var c,d:array of real; i,j,g:integer; a:real;

begin

setlength(c,n);

setlength(d,n);

for j:=0 to n-1 do

 if stringgrid1.Cells[j,1]='' then

   c[j]:=0

 else

   c[j]:=strtofloat(stringgrid1.Cells[j,1]);

mnog(c,d,n,g);

stringgrid2.ColCount:=g;

for j:=0 to g-1 do

 StringGrid2.Cells[j,0]:=IntToStr(j+1);

for j:=0 to g-1 do

 stringgrid2.cells[j,1]:=floattostr(d[j]);

edit2.text:=inttostr(nul(c,n));

end;

Тесты

1)Входные данные:

Выходные данные: 


 

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

66175. Основные свойства вирусов и современные методы диагностики вирусных заболеваний 255.5 KB
  Вирусы - мельчайшие микробы («фильтрующиеся агенты»), не имеющие клеточного строения, белоксинтезирующей системы, содержащие один тип нуклеиновой кислоты (только ДНК или РНК). Вирусы, являясь облигатными внутриклеточными паразитами, репродуцируются в цитоплазме или ядре клетки.
66176. З’єднання однопроволочних проводів 2.4 MB
  Мета: Виконати з’єднання однопроволочних проводів різними способами та визначити переваги та недоліки запропонованих способів. Виконати з’єднання однопроволочних проводів за наступними схемами.
66177. Вивчення та заповнення форм технічної документації 181.5 KB
  В господарстві необхідно мати таку документацію: Журнал обліку електрообладнання Журнал обліку освітлювальних приладів і внутрішніх проводок Графік технічних обслуговувань на квартал Графік поточних ремонтів на рік...
66179. Лабораторная диагностика гриппа и ОРЗ 89 KB
  Выявлены в последние годы новые свойства возбудителя гриппа способность обмениваться генетической информацией с возбудителями гриппа животных и птиц длительное время сохраняться в организме человека...
66181. Розрахунок трудомісткості робіт експлуатації електрообладнання 259 KB
  Системою ПЗРЕсг установлюється періодичність технічного обслуговування і ремонту для всіх видів електрообладнання. В ній також указується і річні затрати праці для кожного типу обладнання і виду робіт в залежності від умов експлуатації.
66182. Вибрионы. Спирохеты. Жгутики у бактерий. Изучение подвижности 107.5 KB
  Актуальность темы. Знание морфологии вибрионов и спирохет имеет большое значение для микроскопического метода лабораторной диагностики инфекционных болезней. Изучение морфологии осуществляется как у окрашенных с помощью иммерсионного микроскопа...
66183. Лабораторная диагностика аденовирусных инфекций 77 KB
  На модели аденовирусов изучают важные молекулярно-биологические факторы. Немного позже у лиц с заболеваниями верхних дыхательных путей сопровождающихся конъюнктивитами были выделены другие типы аденовирусов. Диаметр вирионов аденовирусов 60–90 нм они содержат двунитчатую...