Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
kukurudz_new27_06.doc
Скачиваний:
20
Добавлен:
02.12.2018
Размер:
37.42 Mб
Скачать

Р исунок 7.3 – Результат виконання програми

Програма мовою Delphi

Опис форми.

Відкриваємо нову форму і на цій формі створюємо такі елементи:

Таблиця 7.2 - Елементи керування і їх властивості

Елемент (Name)

Властивість

Значення

Label1

Caption

Результати

Label2

Caption

Сума S

Label3

Caption

Добуток не нул. Елем.

Label4

Caption

Кількість нул. Елем.

Memo1

Line

Вхідні дані

Button1

Caption

Обчислити

Button2

Caption

Вихід

В результаті наша форма буде мати

вигляд:

Рисунок 7.4 – Інтерфейс програми

Код програми матиме вигляд:

unit Unit1;

interface

uses

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

StdCtrls;

type

Tform1 = class(Tform)

Memo1: Tmemo;

Button1: Tbutton;

Button2: Tbutton;

Label1: Tlabel;

Label2: Tlabel;

Label3: Tlabel;

Label4: Tlabel;

procedure FormCreate(Sender: Tobject);

procedure Button1Click(Sender: Tobject);

procedure Button2Click(Sender: Tobject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form1: Tform1;

s,d: real;

n,i: integer;

a: array [1..7] of real;

implementation

{$R *.DFM}

procedure Tform1.FormCreate(Sender: Tobject);

begin

for i:=1 to 7 do

begin

a[i]:=StrToFloat(InputBox(‘Масив’,’A[‘+IntToStr(i)+’]’,’1’));

Memo1.Lines.Add(‘A[‘+IntToStr(i)+’]=’+FloatToStr(a[i]));

end;

end;

procedure Tform1.Button1Click(Sender: Tobject);

begin

s:=0;

d:=1;

n:=0;

for i:=1 to 7 do

begin

s:=s+a[i];

if a[i]=0 then n:=n+1

else d:=d*a[i];

end;

Label2.Caption:=’Сума S=’+Format(‘%5.6s’,[FloatToSTr(s)]);

Label3.Caption:= ‘Добуток не нул. Елем.=’+Format(‘%5.8s’,[FloatToSTr(d)]);

Label4.Caption:=’Кількість нул. Елем.= ‘+Format(‘%5s’,[FloatToSTr(n)]);

end;

procedure Tform1.Button2Click(Sender: Tobject);

begin

close;

end;

end.

Рисунок 7.5 – Результат виконання програми

Пояснення до програм

Особливість програм з накопиченням суми або добутку полягає в тому, що формування суми чи добутку проводиться в циклі. Перед заголовком циклу, символ 3, рис.7.1, змінній, в якій накопичується сума, присвоюється нуль (S=0), а змінній для добутку – одиниця (D=1). Обчислення добутку проводиться при хибності умови A(I)=0, символ 6. Структура програми являє собою цикл з параметром, який є індексом масиву, і містить розгалуження. Очевидно, що цикл можна організувати за допомогою оператора циклу чи оператора умовного переходу. Також можуть бути використані циклічні структури з передумовою чи післяумовою.

Питання для самоперевірки.

1.Яка структура алгоритму накопичення суми?

2.Яка структура алгоритму накопичення добутку?

3.Чому змінній, в якій накопичується добуток, перед його обчисленням присвоюють одиницю?

4.Яка структура алгоритму знаходження парних чисел; чисел кратних трьом, п’яти?

5.Побудуйте розгалуження за допомогою логічного умовного оператора.

6.Як побудувати програму накопичення суми і добутку, користуючись циклічними структурами з передумовою, з післяумовою?

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]