Разработка алгоритмов (блок-схем) и программ на языке Delphi

Построение базовой линейной структуры и организация ввода с формы переменной. Определение значения функции и построение блок-схемы базовой структуры "ветвление". Использование цикла со счетчиком. Рассмотрение особенностей работы с одномерными массивами.

Рубрика Программирование, компьютеры и кибернетика
Вид контрольная работа
Язык русский
Дата добавления 10.12.2021
Размер файла 1,4 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

КОНТРОЛЬНАЯ РАБОТА

по дисциплине: «Программирование и основы алгоритмизации»

на тему: «Разработка алгоритмов (блок-схем) и программ на языке Delphi»

Ангарск, 2021 г.

СОДЕРЖАНИЕ

  • ЗАДАЧА 1. БАЗОВАЯ ЛИНЕЙНАЯ СТРУКТУРА
  • ЗАДАЧА 2. БАЗОВАЯ СТРУКТУРА «ВЕТВЛЕНИЕ»
  • ЗАДАЧА 3. ИСПОЛЬЗОВАНИЕ ЦИКЛА СО СЧЕТЧИКОМ
  • ЗАДАЧА 4. ИСПОЛЬЗОВАНИЕ ЦИКЛОВ С ПОСТУСЛОВИЕМ И ПРЕДУСЛОВИЕМ
  • ЗАДАЧА 5. РАБОТА С ОДНОМЕРНЫМИ МАССИВАМИ
  • СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ И ЛИТЕРАТУРЫ

ЗАДАЧА 1. БАЗОВАЯ ЛИНЕЙНАЯ СТРУКТУРА

Организовать ввод с формы переменной t

Определить константами: a = 8,2; b = 1,7

Определить по формулам:

Вывести y на экран.

Блок-схема линейного алгоритма:

Скриншот №1 программы:

Скриншот №2 программы:

Листинг программы:

unit Unit1;

interface

uses

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

Dialogs, StdCtrls, ExtCtrls, jpeg, Math;

type

TForm1 = class(TForm)

Label1: TLabel;

Edit1: TEdit;

Label2: TLabel;

img1: TImage;

Button1: TButton;

Label3: TLabel;

Edit2: TEdit;

procedure Button1Click(Sender: TObject);

procedure Edit1KeyPress(Sender: TObject; var Key: Char);

private { Private declarations }

public { Public declarations }

end;

var

Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);

const

a=8.2;

b=1.7;

var x, y, t: Real;

begin

t:=StrToFloat(Edit1.Text);

x:= b*(Sin((Pi/180 * (a*(Sqr(t))) * (Cos(Pi/180*(2*t))))))-1;

y:= (1/Exp(b*t))*(Sin(Pi/180*(x*t+b)))-(Sqrt(b*t+a));

Edit2.Text:= FloatToStrF(y, ffFixed, 10, 4)

end;

procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);

begin

case Key of

'0'..'9', #8: ;

',':

begin

if Pos(',', (Sender as TEdit).Text)> 0 then

Key:=#0;

end; else Key:=#0; end; end; end.

ЗАДАЧА 2. БАЗОВАЯ СТРУКТУРА «ВЕТВЛЕНИЕ»

Определить значение функции

Блок-схема базовой структуры «ветвление»:

Скриншот №1 программы:

Скриншот №2 программы:

Листинг программы:

unit Unit1;

interface

uses

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

Dialogs, StdCtrls, ExtCtrls, jpeg;

type

TForm1 = class(TForm)

Label1: TLabel;

img1: TImage;

lbl1: TLabel;

Edit1: TEdit;

Button1: TButton;

lbl2: TLabel;

Edit2: TEdit;

procedure Button1Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);

var

x, y: Real;

begin

x:= StrToFloat(Edit1.Text);

if x>0 then

y:= Exp(1/3*ln((x+ Sqr(x)+ (Exp(3*ln(x))))))

else y:= Exp(x* Ln(x+10));

Edit2.Text:= FloatToStrF(y, ffFixed, 10,3);

end;

procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);

begin

case Key of

'0'..'9', #8: ;

',', '-':

begin

if Pos(',', (Sender as TEdit).Text)> 0 then

Key:=#0;

end;

else

Key:=#0;

end;

end;

end.

ЗАДАЧА 3. ИСПОЛЬЗОВАНИЕ ЦИКЛА СО СЧЕТЧИКОМ

Дано натуральное число n=15. Вычислить:

y=

Блок-схема: использование цикла со счётчиком

Скриншот №1 программы:

Листинг программы:

unit Unit1;

interface

uses

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

Dialogs, ExtCtrls, StdCtrls, jpeg,Math;

type

TForm1 = class(TForm)

Button1: TButton;

Memo1: TMemo;

lbl1: TLabel;

img1: TImage;

procedure Button1Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);

var n, i: integer;

s: Real;

begin

n:=15;

s:=0;

for i:=1 to n do

s:= s+ ((Cos(Pi/180*1) + Cos(Pi/180*n))/ (Sin(Pi/180*1)+ Sin(Pi/180*n)));

Memo1.Text:=FloatToStrF(s, ffFixed,10,3);

end;

end.

ЗАДАЧА 4. ИСПОЛЬЗОВАНИЕ ЦИКЛОВ С ПОСТУСЛОВИЕМ И ПРЕДУСЛОВИЕМ

Вычислить:

при изменении x от значения - до с шагом 0,2.

Блок-схема с использованием циклов:

Скриншот программы:

Листинг программы:

unit Unit1;

interface

uses

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

Dialogs, StdCtrls, jpeg, ExtCtrls, Math;

type

TForm1 = class(TForm)

Button1: TButton;

Memo1: TMemo;

img1: TImage;

Edit1: TEdit;

Edit2: TEdit;

Edit3: TEdit;

lbl1: TLabel;

lbl2: TLabel;

lbl3: TLabel;

procedure Button1Click(Sender: TObject);

procedure Edit1KeyPress(Sender: TObject; var Key: Char);

procedure Edit2KeyPress(Sender: TObject; var Key: Char);

procedure Edit3KeyPress(Sender: TObject; var Key: Char);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);

var

a, b, c, x, r, y: Real;

begin

a:=StrToFloat(edit1.Text);

b:=StrToFloat(Edit2.Text);

c:=StrToFloat(edit3.Text);

x:= 1/pi;

r:= 0.2;

while x<=Pi do

begin

y:= (Sin(a*x) - Cos(b*x))/c;

Memo1.Lines.Add('при x= ' + FloatToStrF(x, ffFixed, 10, 2)+ ' y= '+ FloattostrF(y, ffFixed, 10, 2));

x:= x+r;

end;

end;

procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);

begin

case Key of

'0'..'9', #8: ;

',', '-':

begin

if Pos(',', (Sender as TEdit).Text)> 0 then

Key:=#0;

end;

else Key:=#0;

end;

end;

procedure TForm1.Edit2KeyPress(Sender: TObject; var Key: Char);

begin

case Key of

'0'..'9', #8: ;

',', '-':

begin

if Pos(',', (Sender as TEdit).Text)> 0 then

Key:=#0;

end;

else Key:=#0;

end;

end;

procedure TForm1.Edit3KeyPress(Sender: TObject; var Key: Char);

begin

case Key of

'0'..'9', #8: ;

',', '-':

begin

if Pos(',', (Sender as TEdit).Text)> 0 then

Key:=#0;

end;

else Key:=#0;

end;

end;

end.

ЗАДАЧА 5. РАБОТА С ОДНОМЕРНЫМИ МАССИВАМИ

блок схема массив линейный

Ввести элементы одномерного массива размером 30 с использованием генератора случайных чисел в диапазоне [-10?10]. Найти: минимальный элемент и его номер

Блок-схема: работа с одномерным массивом

Скриншот №1 программы:

Скриншот №2 программы:

Листинг программы:

unit Unit1;

interface

uses

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

Dialogs, StdCtrls;

type

TForm1 = class(TForm)

lbl1: TLabel;

lbl2: TLabel;

Edit1: TEdit;

Label3: TLabel;

Button1: TButton;

procedure Button1Click(Sender: TObject);

private { Private declarations }

public { Public declarations }

end;

var

Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);

var i, j, min: Integer;

A: array[1..30] of Integer;

st:string;

begin

Randomize;

for i:=1 to 30 do

A[i]:= Random(21)-10;

st:=' ';

for i:=1 to 30 do

st:=st+Inttostr(A[i])+' '+' ';

edit1.Text:=st;

min:=1;

for i:=1 to 30 do begin

if A[min]> A[i] then

min:=i;

j:= min;

end;

Label3.Caption:='минимальный элемент массива = '+intToStr(A[min]) + ' ' +'его номер = '+ IntToStr(j);

end; end.

СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ И ЛИТЕРАТУРЫ

1 Бобровский С. И. Delphi 7. Учебный курс. СПб.: Питер, 2008. 736 с.: ;

2 Каймин В. А. Информатика: Учебник. 5-е изд. М.: ИНФРА-М, 2008.- 285 с. (Высшее образование);

3 Программирование. Методические указания и варианты по выполнению лабораторных работ./Составила Засухина О. А. Ангарская государственная техническая академия. Ангарск, 2014 - 114 с.;

4 Рапаков Г. Г. Turbo Pascal для студентов и школьников / Г. Г. Рапаков, С. Ю. Ржеуцкая. СПб.:БХВ-Петербург, 2013. 352 с.: ил.;

5 Симонович С. В. Информатика. Базовый курс: Учебник для вузов. 3-е изд. Стандарт третьего поколения. СПб.: Питер, 2016. 640 с.: ил. (Серия «Учебник для вузов»);

6 Фаронов В. В. Delphi. Программирование на языке высокого уровня: Учебник для вузов - СПб.: Питер, 2008. 640 с.: ил.

Размещено на Allbest.ru


Подобные документы

  • Изучение функций и возможностей среды разработки языка программирования Pascal. Рассмотрение работы с одномерными и двумерными массивами, со строками и числами. Математическая формулировка задач. Разработка алгоритмов, описание структуры программ.

    курсовая работа [879,8 K], добавлен 11.02.2016

  • Приобретение навыков структурных блок-схем и листингов программ на языке "Ассемблер" для простых микропроцессорных систем управления процессами. Типовые структуры блок-схем алгоритмов обработки данных. Программная реализация типовых функций управления.

    методичка [1007,8 K], добавлен 01.10.2010

  • Особенности среды визуального проектирования Borland Delphi 7.0. Этапы разработки программы и составления блок-схемы алгоритмов. Способы вычисления кусочно-заданной функции одной переменной. Рассмотрение компонентов среды Delphi, ее предназначение.

    контрольная работа [703,8 K], добавлен 24.09.2012

  • Составление блок-схемы алгоритма решения задачи, погрешности вычисления суммы членов числового ряда. Разработка программ на языке на Visual Basic, работа с массивами. Особенности работы со строковыми данными. Варианты реализации формы приложения.

    контрольная работа [220,4 K], добавлен 18.06.2010

  • Исследование особенностей разработки линейных алгоритмов и их реализации в среде Delphi. Составление тестов для проверки программы. Характеристика основных элементов интерфейса, компонентов, значения их свойств. Построение графической схемы алгоритма.

    лабораторная работа [316,6 K], добавлен 08.11.2012

  • Понятие алгоритма, его назначение, представление (изобразительные средства для описания), типы, способы записи, схемы. Основные принципы разработки алгоритмов и программ. Характеристика языков программирования. Средства и правила построения блок-схем.

    реферат [87,9 K], добавлен 26.03.2010

  • Анализ и формализация задачи моделирования: построение концептуальной модели, ее формализация в виде Q-схемы. Построение имитационной модели: создание блок-схемы, представление базовой исходной имитационной модели. Исследование экономических процессов.

    контрольная работа [156,0 K], добавлен 21.11.2010

  • Разработка простейших линейных алгоритмов (составление логических выражений), программ с ветвлениями, циклических программ и составление их блок-схем. Практическое выполнение обработки массивов на примере вычисления элементов квадратной матрицы.

    контрольная работа [173,3 K], добавлен 01.03.2010

  • Приемы работы с инструментальной средой программирования С++. Кодирование арифметических и логических выражений с использованием стандартных библиотечных функций ввода, вывода в С++. Описание переменной вещественного типа в языке программирования С++.

    лабораторная работа [137,9 K], добавлен 13.06.2014

  • Разновидности конструктивных решений реализации весового оборудования. Разработка блок-схемы предустановок, блок-схемы измерения веса, блок-схемы вывода информации о весе в компьютер, блок-схемы устройства и программы работы микропроцессорного блока.

    курсовая работа [525,4 K], добавлен 13.02.2023

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.