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

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


 

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

58354. Полет на планету МИФ 49 KB
  Цели: Обобщить и систематизировать знания и умения учащихся по теме: «Формулы. Площади. Объем». Выделить наиболее общие и существенные понятия, законы и закономерности, установить причинно-следственные связи и отношения между важнейшими процессами.
58355. Музика. Стилі музики 568.5 KB
  The Beatles in the 1960s mixed rhythm and blues, rock and roll, and soul music. The new style was “beat” music. Groups used drums, bass and two guitars with vocal lead and harmony.
58359. Надёжная защита организма 60.5 KB
  Как вы думаете почему сплошной слой краски так повлиял на мальчика понизилась температура тела кожа не могла дышать поры были закрыты краской Какой орган мы будем изучать сегодня Орган осязания кожу. Какая кожа На доске карточки.
58360. Строение тела человека 60.5 KB
  Цель урока: Дать первоначальные сведения о работе внутренних органов человека. Задачи урока: обучающие: ввести понятие «внешнее» и «внутреннее» строение тела человека; познакомить с частями и внутренними органами человека...
58361. Урок Памяти, посвященный празднованию 65-летней годовщине Великой Победы 52.5 KB
  О Великой Отечественной войне; нарисовать рисунок на военную тематику; поинтересоваться у родителей бабушек дедушек об участии родственников в войне а по возможности найти и принести на урок фотографии того времени. Выставку подборку книг о войне так же можно составить с помощью детей.