Помощь в учёбе, очень быстро...
Работаем вместе до победы

Основы алгоритмизации

КонтрольнаяПомощь в написанииУзнать стоимостьмоей работы

Для получения рекуррентной зависимости можно воспользоваться отношением: Усенков Д. Ю. Рекурсивный генератор перестановок // Информатика. 1996. № 12. Нам необходимо вычислить сумму первых n членов последовательности ак. Выгодский М. Я. Справочник по элементарной математике. — М.: Наука, 1989. Компьютерная игра «Две кучки спичек» // Информатика. 2004. № 40. 3. Вирт Н. Алгоритмы + структуры данных… Читать ещё >

Основы алгоритмизации (реферат, курсовая, диплом, контрольная)

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

Нам необходимо вычислить сумму первых n членов последовательности ак.

ак=

Где x=, a p=p0+(i-1)h, i:=1,…, m.

Исходными являются значения параметров: a, b, n, m, p0, h. В примере используется факториал k! = k (k — 1)(k — 2)*…*1.

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

Для получения рекуррентной зависимости можно воспользоваться отношением:

==-1sin (x)e-p (k-2)

Подставим k=1,найдем а1:

а1=sin (x)/ep

S1=a1;

S:=S+a.

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

Рисунок 1 — Блок-схема программы

Тестовые данные

Для тестирования программы используем следующие данные:

d+b>0, d

d=6

b=8

n=2

m=4

p0=10

h =12

d+b>0, d>b:

d=15

b=10

n=3

m=4

p0=4

h =2

d+b<0:

d=-11

b=10

n=3

m=4

p0=4

h =2

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

алгоритмизация задача алгоритм программа Протестировав программу, получили следующие результаты:

Для первых вводимых данных получили результаты.

s= 1,418 553 124 7312E-20

a=0

x=8

p=10

Для вторых вводимых данных получили результаты:

s= -0,413 322 311 759 435

a= -0,442 845 334 027 966

x= 15

p=4

Для третьих вводимых данных получили результаты:

s= -0,160 454 188 426 478

a= -0,147 083 006 057 605

x= 5,98 423 221 978 307

p=4

1. Кушниренко А. Г., Лебедев А. Г., Зайдельман Я. Н. Информатика 7−9: Учебник для общеобразовательных учебных заведений. — М.: Дрофа, 2000.

2. Компьютерная игра «Две кучки спичек» // Информатика. 2004. № 40. 3.

3. Златопольский Д. М. Сборник задач по программированию. — СПб.: БХВ-Петербург, 2007.

4. Вьюкова Н. И., Галатенко В. А., Ходулев А. Б. Систематический подход к программированию. — М.: Наука, 1988.

5. Кнут Д. Искусство программирования для ЭВМ. Т. 3. Сортировка и поиск. — М.: Мир, 1978.

6. Вирт Н. Алгоритмы + структуры данных = программы. — М.: Мир, 1985.

7. Вентцель Е. С. Исследование операций: задачи, принципы, методология. — М.: Наука, 1988.

8. Окулов С. М. Программирование в алгоритмах. — М.: БИНОМ. Лаборатория знаний, 2002.

9. Липский В. Комбинаторика для программистов. — М.: Мир, 1988. 10.

10. Выгодский М. Я. Справочник по элементарной математике. — М.: Наука, 1989.

11. Андреева Е. В. Комбинаторные задачи / Библиотечка «Первого сентября». Серия «Информатика». — М., 2004.

12. Усенков Д. Ю. Рекурсивный генератор перестановок // Информатика. 1996. № 12.

Приложение

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

unit Unit1;

interface

uses

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

Dialogs, StdCtrls;

type

TForm1 = class (TForm)

Edit1: TEdit;

Edit2: TEdit;

Edit3: TEdit;

Edit4: TEdit;

Edit5: TEdit;

Edit6: TEdit;

Button1: TButton;

Edit7: TEdit;

procedure Button1Click (Sender: TObject);

private

{Private declarations}

public

{Public declarations}

end;

var

Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1. Button1Click (Sender: TObject);

var

n, m, i, k: integer;

t, x, a, b, h, p, S, y: real;

begin

n:=strtoint (edit1.Text);

m:=strtoint (edit2.Text);

a:=strtofloat (edit3.Text);

b:=strtofloat (edit4.Text);

t:=strtofloat (edit5.Text);

h:=strtofloat (edit6.Text);

Form1.caption:=edit1.Text;

if (a+b)>0 then

if a>b then x:=a else x:=b

else x:=a*sin (b);

for i:=1 to m do begin

p:=t+(i-1)*h;

y:=sin (x)/exp (p);

S:=y;

for k:=2 to n do

begin

y:=-1*(k-2)*a*sin (x)/exp (p);

S:=S+y;

end;

edit8.Text:=floattostr (y);

edit7.Text:=floattostr (s);

edit9.Text:=floattostr (x);

edit10.Text:=floattostr (t);

end.

Показать весь текст
Заполнить форму текущей работой