Отчет о лабораторной работе №4




ТЕМА РАБОТЫ

по дисциплине «Основы программирования»

 

 

Выполнил: ст-т гр. 19КП1

Солдатов К. А.

Проверил: доцент каф. ИВС

Хохлов А. Е.

 

 


1 Формулировка задачи

 

Подсчитать в строке наибольшее число идущих подряд пробелов.

 

2 Техническое задание

 

2.1 Требования к программе

 

Программа должна определять наибольшее число идущих подряд пробелов в строке.

 

2.2 Порядок контроля и приёмки

 

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

 

 

3 Описание программы

 

3.1 Общие сведения

 

Программа разработана в среде Lazarus, её текст приведен в приложении А.

 

3.2 Функциональное назначение

 

Программа предназначена для определения наибольшего количество идущих подряд пробелов в строке.

 

3.3 Описание логической структуры

 

Схема главной программы представлена на рисунке 1.

Решение задачи начинается с ввода строки s, а переменным max и k присваивается значение 0 (блок 2). После этого выполняется цикл А со счетчиком I,1<=i<длина s (блок 3). В теле цикла А (блоки 4-8) в блоке 4 проверяется условие s[i]=’ ‘. Если условие истинно, то переменная k увеличивается на единицу (блок 5), после чего проверяется условие k>max (блок 6). Если условие истинно, то переменной max присваивается значение k (блок 7). Если условие ложно, то выполняется следующий за блоком условия блок. Если условие ложно, то переменной k присваивается значение 0 (блок 8). После этого цикл А завершается (блок 9). Далее происходит вывод max (блок 10).

 

Рисунок 1 – Схема главной программы

 

Текст программы приведен в приложении А.

На форме расположены следующие объекты:

- метки Label1-Label2 с вкладки Standart. В свойстве Caption этих объектов помещены пояснения для пользователя программы:

Label1.Caption – «Введите строку»,

Label2.Caption – «Результат».

- поля редактирования Edit1 (для ввода строки), Edit2 (для вывода результата) с вкладки Standart;

- кнопка Button1 с вкладки Standart для создания обработчика события, который осуществляет решение задачи. В свойстве Caption этого объекта помещено пояснение для пользователя программы: Button1.Caption - «Выполнить».

Обработчик TForm1.Button1Click обрабатывает щелчок по кнопке «Выполнить».

В разделе описания переменных этого обработчика описаны:

- переменные действительного типа integer:

K – текущее количество пробелов

Max – максимальное количество пробелов,

I – счетчик цикла.

Исполняемая часть обработчика начинается ввода значения строки s с помощью свойства объекта edit1.text и с помощью оператора присваивания, Далее с помощью оператора цикла со счетчиком и функции определения длины строки length() выполняется цикл for i:=1 to length(s) do. В теле цикла со счетчиком с помощью условного оператора проверяется условие if s[i]=' ' then. Если условие истинно, то переменная k увеличивается на единицу с помощью оператора присваивания, а также проверяется условие if k>max then. Если условие истинно, то переменной max присваивается значение k. Если условие ложно, выполняется следующий за оператором условия оператор. Если условие ложно, то переменной k присваивается значение 0 с помощью оператора присваивания. После этого цикл со счетчиком завершается и происходит вывод max с помощью оператора присваивания и свойства объекта edit2.text, при этом используется функция перевода из целочисленного типа в строковый – inttostr.

 

4 Программа и методика испытаний

 

Для проверки правильности работы программы подготовлен тестовый набор данных, представленный в таблице 1.

 

Таблица 1

Введите строку Результат
Текст слово.  

 

Для проверки правильности работы программы необходимо запустить ее на выполнение, ввести тестовые значения текста из таблицы 1 и нажать левой кнопкой мыши на кнопку «Выполнить». На форме появляется результат работы программы.

При работе программы с тестовыми данными получены результаты, приведенные в приложении Б на рисунке Б.1. Результат, приведенный в таблице 1 совпадают с результатами на рисунке Б.1. Таким образом, можно сделать вывод, что программа работает правильно

 

5 Описание применения

 

После запуска программы на выполнение на экране появляется форма (см. Приложение Б). Пользователь должен ввести значение строки и нажать левой кнопкой мыши на кнопку «Выполнить». На форме появляется результат работы программы.


 

Вывод

 

В ходе выполнения лабораторной работы было сформулировано и утверждено техническое задание на разработку программы, определяющей максимальное количество идущих подряд пробелов в строке, разработан алгоритм решения задачи, составлена и отлажена программа, оформлена документация на программу. Проведенные испытания показали, что программа работает правильно.


 

 

ТЕКСТ ПРОГРАММЫ

Приложение А

(обязательное)


unit Unit1;

 

{$mode objfpc}{$H+}

 

interface

 

uses

Classes, SysUtils, Forms, Controls, Graphics, Dialogs, StdCtrls;

 

type

 

{ TForm1 }

 

TForm1 = class(TForm)

Button1: TButton;

Edit1: TEdit;

Edit2: TEdit;

Label1: TLabel;

Label2: TLabel;

procedure Button1Click(Sender: TObject);

private

 

public

 

end;

 

var

Form1: TForm1;

 

implementation

 

{$R *.lfm}

 

{ TForm1 }

 

procedure TForm1.Button1Click(Sender: TObject);

var

s:string;

k,max,i:integer;

begin

s:=edit1.text;

max:=0;

k:=0;

for i:=1 to length(s) do

if s[i]=' ' then

begin

k:=k+1;

if k>max then max:=k;

end

else k:=0;

edit2.text:=inttostr(max);

 

end;

 

end.

 

РЕЗУЛЬТАТЫИСПЫТАНИЙ

Приложение Б

(обязательное)


Рисунок Б.1

 



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2020-12-27 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: