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)Входные данные:

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


 

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

75047. Немецкие автомобили 934.5 KB
  Ich heiße Eshow Wlad. Ich lerne in der Klasse 6. Unser Thema heißt „Das Deutsche Auto“. Im Jahre 2011 (zwanzighundertelf) feierte das Auto sein Jubiläum. Es ist 125 (hundertfünfundzwanzig) Jahre alt. Der vorige Sommer von 7 (siebenten) Mai bis zum 10 (zehnten) September hieß „der Autosommer“.
75048. Русская и немецкая школы. Какие они? 984.5 KB
  Ich heiße Antonowa Anna. Ich lerne in der Klasse 6 «А». Ab 2. Klasse lerne ich Deutsch. Das ist mein Lieblingsfach. Besonders gefiel mir das Thema “Deutsche Schülen. Wie sind sie?” Darüber diskutieren wir viel mit unseren Mitschülern.
75049. ВОЗНИКНОВЕНИЕ ЧИСЕЛ 695.5 KB
  В современном мире человек постоянно пользуется числами, даже не задумываясь об их происхождении. Без знания прошлого нельзя понять настоящее. Поэтому целью данной работы является исследование истории возникновения чисел, связанной с необходимостью выражения всех чисел знаками.
75050. Основные направления поэтического творчества Ф. Достоевского 111.5 KB
  Цель моей исследовательской работы: выявить основные направления поэтического творчества Ф. Достоевского. Объект исследования: произведения поэта, литература о жизни и творчестве поэта после выхода из острога в 1854 году. Задачи исследования я бы сформулировала так: «Каково поэтическое наследие Ф.М.Достоевского?»
75051. Берегите око от монитора 505 KB
  Целью моей исследовательской работы стало изучение влияния компьютера на здоровье школьников а именно влияние компьютера на зрение ребёнка исходя из этого были поставлены следующие задачи: Задачи: Проанализировать влияние компьютера на зрение учащихся.
75052. Исследование динамики распространения вируса гриппа среди населения 114.5 KB
  В последние дни апреля 2009 года в средствах массовой информации появилось сообщение о появлении в Мексике нового вируса гриппа. Жертвами заболевания в Мексике стали в основном взрослые люди от 25 до 45 лет отличительная черта пандемического гриппа. человек 165 населения том числе...
75053. Формирование желаемого поведения (на примере кошки) 92 KB
  Цель моей работы - изучение теории подкрепления и её практическое применение в воспитании домашней кошки Василисы. Мной поставлены задачи: познакомиться с теорией подкрепления желаемого поведения, изучить законы подкрепления, применить принципы подкрепления на практике.
75054. Памятники 63 KB
  Памятники –- это не только архитектурные сооружения со своими композиционными особенностями но это прежде всего история. А история нашего города –- это памятники которые могут о многом поведать: и смутные годы гражданской войны и героические страницы Великой Отечественной и давно забытый...
75055. Каспий. Карты прошлого и настоящего 970.5 KB
  Свое название море получило от имени древних племен - каспиев, населявших среднее и юго-восточное Закавказье во втором тысячелетии до нашей эры. В первом тысячелетии до нашей эры соседние племена оттеснили каспиев в юго-западную часть побережья, которое получило название Каспиана.