Математическая постановка задачи для алгоритмизации

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Содержание

1. Анализ данных…………………………………………………………………………4

2. Математическая постановка задачи  для алгоритмизации…………………………..5

3. Алгоритм решения задачи…………………………………………………………….6

4. Результаты, соответствующие тестовым данным…………………………………...8

5. Список литературы и использованных источников…………………………………9

Приложение. …………………………………………………………………………….10

           

СФУ ИГУРЭ УБ - 080801.65 - 110906428

Лист

           

3

           

 

  1. Анализ данных

 

a–переменная предназначенная для вычисления параметра x, у которого тип обозначен с плавающей запятой, поддерживающий приблизительно 15 цифр точности.

b-переменная предназначенная для вычисления параметра x, имеющая целочисленный тип.

c-переменная предназначенная  для вычисления параметра x, имеющая целочисленный тип, имеющая целочисленный тип.

d-переменная предназначенная для вычисления параметра x, имеющая целочисленный тип.

p0 – переменная предназначенная для расчета числа p, имеющая целочисленный тип.

h - переменная предназначенная для расчета числа p, имеющая целочисленный тип.

m – переменная предназначенная для расчета числа p, имеющая целочисленный тип.

n – переменная предназначенная для уточнения количества элементов в числовой последовательности, имеющая целочисленный тип.

 

           

СФУ ИГУРЭ УБ - 080801.65 - 110906428

Лист

           

4

           

 

2. Математическая постановка  задачи для алгоритмизации.

 

Перед тем как составлять схему алгоритма, необходимо свести вычисления членов последовательности к рекуррентным формулам. Найдем соотношение:

;

 

 

;

 

 

 

Таким образом, согласно выражению,

 

;

 

В этом случае

 

           

СФУ ИГУРЭ УБ - 080801.65 - 110906428

Лист

           

5

           

 

3. Алгоритм решения задачи.

 

 Начало алгоритма

                                                                     Ввод исходных данных

 

 да

 

 нет

 да

 

 нет

 

 

 

 

 

                                                     Вывод очередного члена последовательности


                                                     Заголовок цикла по I

Вычисляем значение p

 Вычисляем значение A

                                                 Вывод очередного члена последовательности

 Заголовок цикла по S

Заголовок цикла по K

 Вычисляем значение a

           

СФУ ИГУРЭ УБ - 080801.65 - 110906428

Лист

           

6

           

 

 

 

                                                           Вывод очередного члена последовательности

 нет

 да

 

 

 

                                                                      Окончание цикла по k


 

Вывод значения

Окончание цикла по I 

Конец алгоритма

 

           

СФУ ИГУРЭ УБ - 080801.65 - 110906428

Лист

           

7

           

 

4. Результаты, соответствующие тестовым данным.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Рисунок 1. Пример вычисления.

 

Для  нахождения результата следующие значения:

a=1

b=2

c=3

d=1

p0=4

h=6

m=2

n=5

после чего программой был  подчитаны  результаты:

s( сумма положительных членов последовательности)=0

значение p=10

 

 

 

 

 

 

 

 

           

СФУ ИГУРЭ УБ - 080801.65 - 110906428

Лист

           

8

           

 

5.Список литературы

  1. Златопольский Д. М. Сборник задач по программированию. — СПб.: БХВ-Петербург, 2007.
  2.  Баврин И.И. Матросов В.Л Высшая математика для ВУЗов. — М.: Владос, 2004.
  3. Окулов С. М. Программирование в алгоритмах. — М.: БИНОМ. Лаборатория знаний, 2002.
  4. Вячеслав Понамарев Базы данных в Delphi 7. Самоучитель. — СПб.: Питер, 2007

 

 

 

 

 

 

           

СФУ ИГУРЭ УБ - 080801.65 - 110906428

Лист

           

9

           

 

Приложение.

unit Unit1;

 

interface

 

uses

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

  Dialogs, StdCtrls, ExtCtrls;

 

type

  TForm1 = class(TForm)

    Edit1: TEdit;

    Edit2: TEdit;

    Edit3: TEdit;

    Edit4: TEdit;

    Edit5: TEdit;

    Edit6: TEdit;

    Edit7: TEdit;

    Edit8: TEdit;

    Button1: TButton;

    Edit9: TEdit;

    Edit10: TEdit;

    Label1: TLabel;

    Label2: TLabel;

    Label3: TLabel;

    Label4: TLabel;

    Label5: TLabel;

    Label6: TLabel;

    Label7: TLabel;

    Label8: TLabel;

    Label9: TLabel;

    Label10: TLabel;

    GroupBox1: TGroupBox;

    Label11: TLabel;

    Label12: TLabel;

    Label13: TLabel;

    Label14: TLabel;

    procedure Button1Click(Sender: TObject);

  private

    { Private declarations }

  public

           

СФУ ИГУРЭ УБ - 080801.65 - 110906428

Лист

           

10

           

{ Public declarations }

  end;

 

var

  Form1: TForm1;

         implementation

          {$R *.dfm}

            procedure TForm1.Button1Click(Sender: TObject);

  var

     p,i,m,n,b,c,d,p0,h,k:integer; //указываем их тип

                   s,x ,a,temp:real;

         begin

a:=strtoint(edit1.text); //присваиваем переменной а Edit1

b:=strtoint(edit2.text); //присваиваем переменной b Edit1

c:=strtoint(edit3.text); //присваиваем переменной c Edit1

d:=strtoint(edit4.text); //присваиваем переменной d Edit1

p0:=strtoint(edit5.text); //присваиваем переменной po Edit1

h:=strtoint(edit6.text); //присваиваем переменной h Edit1

m:=strtoint(edit7.text); //присваиваем переменной m Edit1

n:=strtoint(edit8.text); //присваиваем переменной n Edit1

 

  if(a>b) and(a>c) then x:=a+d

     else

  if(b>a) and(b>c) then x:=b+d

     else

  if(c>a) and(c>b) then x:=c+d;

    for i:=1 to m do                            //находим максимальное значение из a,b,c  и присваиваем x максимальное значение плюс d

    begin

       p:=p0+(i-1)*h ;            //вычисляем значение p

       temp:=(-x)/2*exp(2*ln(p)); //вычисляем значение temp

       s:=0 ;                 // начальное значение суммы=0

    for k:=2 to n do

    begin

         a:=temp*(x/(2*k)*(2*k-1)*exp(2*ln(p)));  // очередной член последовательноти

         if a>0 then s:=s+a;      // проверка условия

         end;

         edit9.Text:=floattostr(s);   // вывод значения суммы

         edit10.Text:=floattostr(p);  // вывод значения p

end;

end;

end.

 

 

 

           

СФУ ИГУРЭ УБ - 080801.65 - 110906428

 
           

11

           

 

Федеральное государственное образовательное  учреждение  
высшего профессионального образования

«СИБИРСКИЙ ФЕДЕРАЛЬНЫЙ УНИВЕРСИТЕТ»

Институт градостроительства, управления и региональной экономики

 

Кафедра информационных технологий

 

 

 

 

 

 

Пояснительная записка

к курсовой работе

 

по дисциплине: Основы алгоритмизации.

 

Вариант №7

 

 

 

 

Руководитель Кузьменко Н.Г                     

                                    (Ф.И.О. подпись)

Выполнил студент гр.УБ 09-09 

Кривоногова Ю.А.    (Ф.И.О. подпись)   

 Оценка __________  

 Дата ____________ 

 

  

 

 

 

Красноярск 2010

 

 



Математическая постановка задачи для алгоритмизации