Опора деревянной одностоечной и способы укрепление угловых опор: Опоры ВЛ - конструкции, предназначенные для поддерживания проводов на необходимой высоте над землей, водой...
Историки об Елизавете Петровне: Елизавета попала между двумя встречными культурными течениями, воспитывалась среди новых европейских веяний и преданий...
Топ:
Основы обеспечения единства измерений: Обеспечение единства измерений - деятельность метрологических служб, направленная на достижение...
Комплексной системы оценки состояния охраны труда на производственном объекте (КСОТ-П): Цели и задачи Комплексной системы оценки состояния охраны труда и определению факторов рисков по охране труда...
Интересное:
Искусственное повышение поверхности территории: Варианты искусственного повышения поверхности территории необходимо выбирать на основе анализа следующих характеристик защищаемой территории...
Уполаживание и террасирование склонов: Если глубина оврага более 5 м необходимо устройство берм. Варианты использования оврагов для градостроительных целей...
Инженерная защита территорий, зданий и сооружений от опасных геологических процессов: Изучение оползневых явлений, оценка устойчивости склонов и проектирование противооползневых сооружений — актуальнейшие задачи, стоящие перед отечественными...
Дисциплины:
|
из
5.00
|
Заказать работу |
Содержание книги
Поиск на нашем сайте
|
|
|
|

procedure TForm1.formirovanie(var P, R: massiv;max_kol, max_num, max_dx, progression_type: integer);x,j:integer;:boolean;:=P[max_num];(R,1);[0]:=x;book1.NumberRC[6,2]:=R[0];:=false;progression_type of
: beginbook1.TextRC[7,11]:=’Разность’+inttostr(max_dx);1book1.TextRC[5,11]:=’Арифметическая прогрессия’;
repeat
j:=0;
repeatP[j]=x+max_dx then begin:=x+max_dx;(R,length(R)+1);[high(R)]:=x;book1.NumberRC[6,length(R)+1]:=R[high(R)];:=true endbegin:=false;(j) end(b=true) or (j=high(P));j=high(P) end;
: beginbook1.TextRC[7,11]:=’Знаменатель’+inttostr(max_dx);1book1.TextRC[5,11]:=’Геометрическая прогрессия.’;
repeat:=0;(P[j]=x*max_dx) and (j<>max_num) then begin:=x*max_dx;(R,length(R)+1);[high(R)]:=x;book1.NumberRC[6,length(R)+1]:=R[high(R)];:=true endbegin:=false;(j) end(b=true) or (j=high(P));j=high(P) end;
P - последовательность;
R - прогрессия;
Progression_type - переменная, определяющая тип прогрессии, которую нужно сформировать. Значение определяется в основной процедуре, в результате сравнения длин самой длинной арифметической и самой длинной геометрической прогрессий. Значению 1 соответствует арифметическая прогрессия, значению 2 соответствует геометрическая прогрессия.
Max_kol - длина самой длинной прогрессии;
Max_num - номер элемента последовательности, являющегося первым элементом самой длинной прогрессии;
Max_dx - разность самой длинной прогрессии;
J - номер элемента последовательности, с которым сравнивается последний найденный член прогрессии;
X - последний найденный член прогрессии;
B - логическая переменная, которая сообщает о том, что найден следующий член прогрессии.
Полный текст программы
unit Unit1;
interface, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,, Menus, AxCtrls, OleCtrls, VCF1, StdCtrls, Math, OleCtnrs,, jpeg;=array of integer;= class(TForm): TMainMenu;: TEdit;: TLabel;Book1: TF1Book;: TMenuItem;: TMenuItem;: TMenuItem;: TMenuItem;: TMenuItem;: TMenuItem;: TOleContainer;: TLabel;: TImage;arithmetic_progression(var P: massiv;max_kol, max_num, max_dx: integer);geometric_progression(var P: massiv;max_kol, max_num, max_dx: integer);formirovanie(var P, R:massiv;max_kol, max_num, max_dx, progression_type: integer);posledovatelnost(var P:massiv);N1Click(Sender: TObject);N2Click(Sender: TObject);N3Click(Sender: TObject);N4Click(Sender: TObject);N5Click(Sender: TObject);
{ Private declarations }
{ Public declarations };: TForm1;
{$R *.dfm}
////////////////////////////////////////////////////////////////////////////////
{ Определение арифметической прогрессии.}
procedure TForm1.arithmetic_progression(var P: massiv;max_kol, max_num, max_dx: integer);i,j,x,dx,kol:integer;:boolean;dx:=1 to high(P) doi:=0 to high(P) do begin:=P[i];:=0;:=0;P[j]=x+dx then begin(kol);:=x+dx;:=true endbegin:=false;(j) end;(b=true) or (j=high(P));j=high(P);kol>max_kol then begin_kol:=kol;_num:=i;_dx:=dx end end;;
////////////////////////////////////////////////////////////////////////////////
{Формирование самой длинной прогрессии.}
procedure TForm1.formirovanie(var P, R: massiv;max_kol, max_num, max_dx, progression_type: integer);x,j:integer;:boolean;:=P[max_num];(R,1);[0]:=x;book1.NumberRC[6,2]:=R[0];:=false;progression_type of
: beginbook1.TextRC[7,11]:=’Разность’+inttostr(max_dx);1book1.TextRC[5,11]:=’Арифметическая прогрессия’;
repeat
j:=0;
repeatP[j]=x+max_dx then begin:=x+max_dx;(R,length(R)+1);[high(R)]:=x;book1.NumberRC[6,length(R)+1]:=R[high(R)];:=true endbegin:=false;(j) end(b=true) or (j=high(P));j=high(P) end;
: beginbook1.TextRC[7,11]:=’Знаменатель’+inttostr(max_dx);1book1.TextRC[5,11]:=’Геометрическая прогрессия.’;
repeat:=0;(P[j]=x*max_dx) and (j<>max_num) then begin:=x*max_dx;(R,length(R)+1);[high(R)]:=x;book1.NumberRC[6,length(R)+1]:=R[high(R)];:=true endbegin:=false;(j) end(b=true) or (j=high(P));j=high(P) end;
////////////////////////////////////////////////////////////////////////////////
{Определение самой длинной геометрической прогрессии.}
procedure TForm1.geometric_progression(var P:massiv;max_kol, max_num, max_dx: integer);i,j,x,dx,kol:integer;:boolean;dx:=-high(P) to high(P) doi:=0 to high(P) doP[i]<>0 then begin:=P[i];:=1;(dx>1) or (dx<-1) then begin:=0;(P[j]=x*dx) and (j<>i) then begin(kol);:=x*dx;:=true endbegin:=false;(j) end;(b=true) or (j=high(P));j=high(P);kol>max_kol then begin_kol:=kol;_num:=i;_dx:=dx end end end;;
////////////////////////////////////////////////////////////////////////////////
{Формирование самой длинной арифметической прогрессии.}
procedure TForm1.N1Click(Sender: TObject);P,R:massiv;_kol,max_num,max_dx,i,y,progression_type:integer;i:=1 to 2 dobook1.ClearRange(3*i,2,3*i,256,3);_kol:=0;_num:=0;_dx:=0;(P);_progression(P,max_kol,max_num,max_dx);_type:=1;(P,R,max_kol,max_num,max_dx,progression_type);
////////////////////////////////////////////////////////////////////////////////
{Формирование самой длинной геометрической прогрессии.}
procedure TForm1.N2Click(Sender: TObject);P,R:massiv;_kol,max_num,max_dx,i,y,progression_type:integer;i:=1 to 2 dobook1.ClearRange(3*i,2,3*i,256,3);_kol:=0;_num:=0;_dx:=0;(P);_progression(P,max_kol,max_num,max_dx);_type:=2;(P,R,max_kol,max_num,max_dx,progression_type);
////////////////////////////////////////////////////////////////////////////////
{Формирование самой длинной арифметической или геометрической, в зависимости от случая, прогрессии}
procedure TForm1.N3Click(Sender: TObject);P,R:massiv;_kol,max_num,max_dx,i,y,progression_type:integer;i:=1 to 2 dobook1.ClearRange(3*i,2,3*i,256,3);_kol:=0;_num:=0;_dx:=0;(P);_progression(P,max_kol,max_num,max_dx);:=max_kol;_progression(P,max_kol,max_num,max_dx);y<max_kol then_type:=2_type:=1;(P,R,max_kol,max_num,max_dx,progression_type);
////////////////////////////////////////////////////////////////////////////////
{Очистка результатов.}TForm1.N4Click(Sender: TObject);book1.ClearRange(3,2,3,256,3);book1.ClearRange(6,2,6,256,3);book1.ClearRange(8,2,10,4,3);.Clear;
////////////////////////////////////////////////////////////////////////////////
{Закрытие программы.}TForm1.N5Click(Sender: TObject);
form1.Close
end;
////////////////////////////////////////////////////////////////////////////////
{Формирование последовательности.}
procedure TForm1.posledovatelnost(var P: massiv);n,i:integer;:boolean;;strtoint(edit1.Text)<250 then:=strtoint(edit1.Text):=250;(P,n);i:=0 to n-1 do begin[i]:=random(n+1)-random(n+1);book1.NumberRC[3,i+2]:=P[i] end
end;
////////////////////////////////////////////////////////////////////////////////.
Скриншоты
Основной вид программы.

Меню

Найдена арифметическая прогрессия

Найдена геометрическая прогрессия

Заключение
Проделав весь этот долгий путь, мы пришли к тому, что можем выделить из любой последовательности самую длинную арифметическую прогрессию, самую длинную геометрическую прогрессию и самую длинную прогрессию из всех арифметических и геометрических прогрессий.
Можно было бы предложить несколько иной способ выполнения поставленной задачи: сформировать самые длинные арифметическую и геометрическую прогрессию, сравнить их между собой и вывести самую длинную из них. Но, в целях того, чтобы не находить лишнее а программе, был использован предложенный выше подход.
Таким образом, можно считать что с поставленной задачей мы справились полностью.
Список литературы
v Фаронов В.В. DELPHI. Программирование на языке высокого уровня. Учебник для вузов. СПб, Питер, 2003.
v Сухарев М. Delphi. Полное руководство. Включая версию 2010. СПб.: Наука и техника, 2010.
v Иванова Г.С. Технология программирования: Учебник для вузов. - М.: Изд-во МГТУ им. Н.Э. Баумана, 2002.
v Киммел П. Создание приложений в Delphi. М.: Издат. Дом «Вильямс», 2003.
v Далахвелидзе П.Г., Марков Е.П. Разработка Web-служб средствами Delphi. СПб, БХВ-Петербург, 2003.
|
|
|
Папиллярные узоры пальцев рук - маркер спортивных способностей: дерматоглифические признаки формируются на 3-5 месяце беременности, не изменяются в течение жизни...
Археология об основании Рима: Новые раскопки проясняют и такой острый дискуссионный вопрос, как дата самого возникновения Рима...
Адаптации растений и животных к жизни в горах: Большое значение для жизни организмов в горах имеют степень расчленения, крутизна и экспозиционные различия склонов...
Особенности сооружения опор в сложных условиях: Сооружение ВЛ в районах с суровыми климатическими и тяжелыми геологическими условиями...
© cyberpediasu.com 2017-2026 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!