Технолгия разработки програмных продуктов

Автор работы: Пользователь скрыл имя, 15 Декабря 2011 в 15:26, курсовая работа

Краткое описание

Целью данной курсовой работы является разработка программ на языках С, Pasсal и в среде Delphi для описания процессов развития динамики популяции. Данные процессы описываются моделью Ферхюльда, представляющей собой дифференциальное уравнение первого порядка. Решение данного уравнения будем искать с помощью метода Эйлера. В ходе курсового проектирования будет проведен обзор теоретических вопросов, разработан алгоритмы решения поставленной задачи.

Содержание работы

Введение 3
1 Аналитический обзор 4
1.1 Определение популяции 4
1.2 Модель Ферхюльста (рождаемость и смертность с учетом роста численности) 5
1.3. Решение дифференциальных уравнений 6
1.4 Метод Эйлера. 7
1.5 Улучшенный метод Эйлера 9
2Язык Pascal 11
3 Язык С 14
4Среда быстрой разработки Delphi 15
5 Алгоритм решения задачи 17
6 Тестирование программ 18
6.1. Тестирование на языке С 18
6.2 Тестирование на языке Pascal 19
6.3 Тестирование приложения в Delphi 19
7 Листинг программ на языке С 22
8 Листинг программ на языке Pascal 24
9 Листинг программы в Delphi 26
Выводы 30
Список использованной литературы 31

Содержимое работы - 1 файл

Записка.doc

— 660.50 Кб (Скачать файл)

    StringGrid1.Cells[0,i]:=IntToStr(i);

    StringGrid1.Cells[1,i]:=FloatToStr(RoundTo(p,-3));

    Series1.AddXY(i,RoundTo(p,-3));

    p1:=p;

    i:=i+1;

  until i>n

end; 

procedure TForm2.BitBtn2Click(Sender: TObject);

begin

p:=StrToFloat(Edit3.Text);

n:=StrToInt(Edit4.Text);

Series2.Clear;

StringGrid2.RowCount:=n+1;

StringGrid2.Cells[0,0]:='t';

StringGrid2.Cells[1,0]:='p';

 p1:=p;

  i:=1;

  repeat

    f1:=fun2(p);

    p:=p+f1;

    p:=p1+(f1+fun2(p))/2;

    StringGrid2.Cells[0,i]:=IntToStr(i);

    StringGrid2.Cells[1,i]:=FloatToStr(RoundTo(p,-3));

    Series2.AddXY(i,RoundTo(p,-3));

    p1:=p;

    i:=i+1;

  until i>n 

end; 

procedure TForm2.BitBtn3Click(Sender: TObject);

begin

a:=StrToFloat(Edit8.Text);

b:=StrToFloat(Edit9.Text);

c:=StrToFloat(Edit10.Text);

p:=StrToFloat(Edit5.Text);

pp:=StrToFloat(Edit7.Text);

n:=StrToInt(Edit6.Text);

Series3.Clear;

StringGrid3.RowCount:=n+1;

StringGrid3.Cells[0,0]:='t';

StringGrid3.Cells[1,0]:='p';

 p1:=p;

  i:=1;

  repeat

    f1:=fun3(pp,p,a,b,c);

    p:=p+f1;

    p:=p1+(f1+fun3(pp,p,a,b,c))/2;

    StringGrid3.Cells[0,i]:=IntToStr(i);

    StringGrid3.Cells[1,i]:=FloatToStr(RoundTo(p,-3));

    Series3.AddXY(i,RoundTo(p,-3));

    p1:=p;

    i:=i+1;

  until i>n

   end; 

end. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

  • Выводы
  •        В данной курсовой работе был разработан алгоритм решения задач развития популяций по модели Фюрхельста. Для  решения дифференциальных уравнений  использовался численный метод Эйлера.

           В ходе курсового проектирования были изучены теоретические основы метода Эйлера и его модификации для  решения дифференциальных уравнений. Рассмотрены основные характеристики используемых языков программирования – С и Pascal, а также проанализирована среда разработки приложений Delphi. На основе разработанного алгоритма решения задачи были разработаны 3 программы: на языке С, Pascal и в среде Delphi. Все программы протестированы на различных наборах данных и ошибок выявлено не было.

  • Список  использованной литературы
  •  
    1. Каханер Д., Моулер К., Неш С. Численные методы и программное обеспечение. –  М.: Мир, 1998 – 356с.
    2. Культин Н. Программирование в Turbo Pascal 7.0 и Delphi. – 2-е изд.,перераб. И доп. – СПб.: БХВ – Санкт-Петербург, 2002. – 416 с.
    3. Марченко А.И., Марченко Л.А. – Программирование в среде Turbo Pascal 7.0 – К.: ВЕК+, М.: Бином Универсал, 1998. – 496 с.
    4. Фаронов В.В. Турбо Паскаль 7.0. Практика программирования. Учебное пособие. Издание 7-е, переработанное. –М.: «Нолидж», издатель Молгачева С.В., 2001. -416 с.

    Информация о работе Технолгия разработки програмных продуктов