Алгоритмы для вычисления корней системы на языке Паскаль

Структура языка Паскаль, встроенные процедуры и функции. Составление алгоритма решения уравнения, описывающего работу кривошипно-шатунного механизма, с помошью метода итерации, метода Гаусса и метода Зейделя. Блок-схемы алгоритмов и текст программы.

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык русский
Дата добавления 07.05.2011
Размер файла 64,6 K

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

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

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

Министерство образования Республики Беларусь

Белорусский национальный технический университет

Кафедра « Тепловые электрические станции»

КУРСОВАЯ РАБОТА

ПО ИНФОРМАТИКЕ

Исполнитель: Стражникова Е. В.

Гр. 106422

Руководитель: Тарасевич Л.А.

Минск 2003г.

1. Постановка задачи

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

Показанный на рисунке кривошипно-шатунный механизм описывается уравнением

К1•S1•cos(цi)+K2•sin(цi)-K3=SiІ

при =1,2,3, где А1=К1/2;

А2=vА1І+А3І-К3 ;

А3=К2/2•А1;

Механизм должен удовлетворять следующим условиям:

i

Si

цi

1

1.0

20°

2

1.2

45°

3

2.0

60°

Спроектировать устройство, отвечающее всем трем указанным условиям. Для этого записать трижды уравнение, описывающее работу механизма, и найти Кi, какие значения А1, А2, А3 соответствуют искомому решению?

2. Краткое описание Pascal

Язык программирования

Язык - это средство общения между людьми, человеком и машиной и между машинами. Языки могут быть естественные и искусственные, или формальные. Естественным языкам присуща неопределенность и неточность. Искусственные языки, предназначенные для записи программ, называют алгоритмическими или языками программирования.

Алгоритмический язык - это набор символов, являющихся алфавитом языка, система правил связи символов для образования “слов” и “предложений” (синтаксис языка), с помощью которых представляются компоненты языка, и система правил их истолкования (семантика).

Паскаль - один из наиболее перспективных языков программирования. Он разработан в 1971 году математиком Никлаусом Виртом, профессором Института информатики Швейцарской высшей политехнической школы в Цюрихе. Язык получил наименование в честь знаменитого математика и философа Блеза Паскаля (1623-1662), который один из первых изобрел в 1641 году калькулятор (суммирующую машину).

Язык удовлетворяет требованиям структурного программирования: он имеет операторы для реализации управляющих структур программирования. Хороший выбор структур данных позволяет разрабатывать на языке Паскаль простые и эффективные алгоритмы. В 1979 году принят стандарт Паскаля. Основной целью разработки Паскаля было дать язык, пригодный для обучения программированию как систематической дисциплине. Достоинства Паскаля:

ь он ориентирован на структурное программирование, имеет развитые средства контроля и достаточно прост в изучении;

ь язык имеет хороший состав типов и структур данных;

ь трансляторы есть во всех распространенных ПК;

ь конкретные реализации языка дают возможность использовать все аппаратные средства ПК;

ь на основе языка Паскаль разработан Delphi - одна из современных систем визуального программирования.

Недостатки языка Паскаль: в нем нет операции возведения в степень.

Интегрированная среда TURBO PASKAL

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

Интегрированность среды проявляется не только в единой идеологии построения компонент, но и в связи их друг с другом: при возникновении ошибки TURBO автоматически переходит в режим экранного редактирования и позиционирует курсор в точку возникновения ошибки. Аналогичные действия выполняются и отладчиком при возникновении ошибки во время выполнения программы.

Структура языка Паскаль

Структура различных языков программирования однотипна. Они должны иметь средства для:

ь определения свойств объектов программы (ее данных);

ь определения обработки, т. е. получения новых значений объектов;

ь организации процесса обработки данных (разветвлений процесса обработки данных и циклической обработки);

ь ввода-вывода данных, т. е. обмена данными между ОП и внешними устройствами (магнитными дисками, портами, принтером);

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

Схематичная структура языка Паскаль

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

Рис. 2.1 Структура языка Паскаль

Классификация операторов

Программа на языке Паскаль состоит из операторов. Операторы - это единицы действия языка. Синонимы операторов: предложения, утверждения, инструкции, Statement. Операторы могут быть выполняемые и невыполняемые Выполняемые производят вычисления или управляют процессом вычислений. Невыполняемые содержат сведения о структуре и организации данных, их свойствах и размещении данных в памяти. Почти все операторы начинаются ключевым словом.

Все операторы языка Паскаль можно разбить на ряд групп. Классификация операторов и типов выражений на языке Паскаль дана на рис 2.2.

Встроенные процедуры и функции языка Паскаль

В языке Паскаль можно использовать как подпрограммы (процедуры и функции), разработанные программистом, так и встроенные (стандартные) подпрограммы, расположенные в его модулях (библиотеках). Паскаль содержит 8 стандартных модулей, в том числе: System, Crt, DOS, Graph, Overlay. Для использования их процедур и функций надо после оператора PROGRAM записать оператор

Uses список-имен-используемых-модулей.

Подключение модуля System производится по умолчанию, без указания его имени в списке Uses. В модуле System располагаются наиболее часто используемые процедуры и функции языка. Основная группа процедур и функций модуля System:

ь процедуры управления выполнения программы;

ь функции преобразования типов;

ь процедуры и функции для переменных ординального типа;

ь математические функции;

ь процедуры и функции для работы со строками;

ь процедуры и функции управления динамической памятью;

ь процедуры ввода-вывода и работы с файлами и каталогами.

Процедуры и функции модуля Crt предназначены для работы с экраном: его очистки, управления движением курсора на экране, управление клавиатурой, определения цветов фонов и символов, управления звуком и окнами экрана.

Процедуры и функции модуля Graph предоставляют пользователю графические возможности языка. Процедуры и функции модуля Overlay позволяют организацию работы с программами оверлейной структуры.

Процедуры и функции DOS предназначены для обслуживания прерываний, проверки состояния диска, обработки файлов, управления процессами и операционной средой.

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

Рис. 2.2 Структура программы на языке Паскаль

Программа на языке Паскаль состоит из заголовка программы и блока (тела программы). Заголовок программы или подпрограммы - это один из операторов:

PROGRAM - для программы;

PROCEDURE - для процедуры;

FUNKTION - для функции.

Процедуры и функции могут иметь ряд уровней вложенности, т.е. могут быть вложены в другие процедуры или функции.

Блок программы и подпрограммы на языке Паскаль состоит из двух частей:

1. декларативной - описание (объявления) данных программы и текстов подпрограмм (разделы описаний);

2. выполнимой - описания действий, которые надо выполнить над данными (раздел операторов).

Блок включает все, кроме заголовка программы или подпрограммы. В общем случае блок может состоять из шести разделов различных типов. Все они, кроме раздела операторов, необязательны. Каждый раздел описаний начинается ключевым словам:

LABEL - для определения меток;

CONST - для определения констант;

TYPE - для определения типов данных;

VAR - для определения переменных;

PROCEDURE и FUNKTION - для определения процедур и функций;

BEGIN - определяет начало раздела операторов программы.

Оператор PROGRAM должен быть первым в программе, раздел операторов программы - вторым. А между ними может быть сколько угодно разделов описаний в любом порядке. Типы и константы могут использоваться в последующих описаниях типов и переменных и программ.

Последовательность разделов описания объектов (LABEL, CONST, TYPE, VAR и др.) программы может быть произвольной. В случае необходимости типы разделов могут повторяться. Умолчаний в Паскале нет. Все, что используется в программе: константы, переменные, метки, - должно быть объявлено явно. Каждый объект программы должен быть описан и только один раз для данной области действия, объекты программы имеют областью их действия блок, в котором они объявлены, и все вложенные в него блоки, процедуры и функции, в которых они не переобъявлены. Поэтому одни и те же идентификаторы можно использовать в различных подпрограммах (процедурах и функциях) программы в разных смыслах.

паскаль алгоритм уравнение итерация

3. Математическая модель

Метод Гаусса

Этот метод представляет собой конечный алгоритм для вычисления корней системы.

За основу метода принята идея последовательного исключения неизвестных и приведение СЛАУ к "треугольному" виду.

Алгоритм решения СЛАУ:

А11Х1+А12Х2+А13Х3=В1; (1)

А21Х1+А22Х2+А23Х3=В2 (2)

А31Х1+А32Х2+А33Х3=В3 (3)

1. если А11?0 (т.е. система не является вырожденной) делим первое уравнение на А11

2. исключим из уравнения (2) Х1, для этого умножим уравнение (1) на коэффициент А21 и вычтем из уравнения 2 А21Х1

3. исключим из уравнения (3) Х1, для этого умножим уравнение (1) на коэффициент А31 и вычтем из уравнения (1) уравнение (3), т.е. исключаем из уравнения (3) А31Х1, исходное СЛАУ примет вид

А11Х1+А12*Х2+А13*Х3=В1* (1)

А22*Х2+А23*Х3=В2* (2)

А32*Х2+А33*Х3=В3* (3)

4. разделим уравнение (2) на коэффициент А22*

5. исключим из уравнения (3) Х2, для этого умножим уравнение (2) на коэффициент А32* и вычтем из уравнения (2) уравнение (3), т.е. исключаем из уравнения (3) А32*Х2 , исходное СЛАУ примет вид

А11Х1+А12**Х2+А13**Х3=В1** (1)

А22**Х2+А23**Х3=В2** (2)

А33**Х3=В3** (3)

т.о. исходное СЛАУ приводится к эквивалентной системе с треугольной матрицей. Процедура нахождения неизвестной из полученной треугольной СЛАУ осуществляется обратным ходом.

Метод итерации

Метод итерации - итерационный метод, позволяющий получать корни системы с заданной точностью, путем сходящихся бесконечных процессов.

Алгоритм решения СЛАУ

А11Х1+А12Х2+А13Х3=В1 (1)

А21Х1+А22Х2+А23Х3=В2 (2)

А31Х1+А32Х2+А33Х3=В3 (3)

Пусть

¦ А11 А12 А13 ¦ ¦В1¦ ¦Х1¦

А=¦ А21 А22 А23 ¦ В=¦В2¦ Х=¦Х2¦

¦ А31 А32 А33 ¦ ¦В3¦ ¦Х3¦

тогда АХ=В

Предполагая, что Аii?0 i€[1,3], разрешим уравнение (1) относительно Х1, уравнение (2) относительно Х2, уравнение (3) относительно Х3.

Х1=в1+Ь12Х2+ Ь13Х3 (1)

Х2=в2+Ь21Х2+ Ь23Х3 (1)

Х3=в3+Ь31Х2+ Ь32Х3 (1)

где вi=вi/Ьii; Ьij=-Ьij/Ьii

¦ Ь11 Ь12 Ь13 ¦ ¦в1¦ ¦Х1¦

Ь=¦ Ь21 Ь22 Ь23 ¦ в=¦в2¦ Х=¦Х2¦

¦Ь31 Ь32 Ь33¦ ¦в3¦ ¦Х3¦

исходная СЛАУ примет вид

Х=в+ўХ.

Далее решаем методом последовательных приближений. За начальное приближение принимаем столбец свободных членов:

Х1°=в1; Х2°=в2; Х3°=в3

Алгоритм нахождения корней системы следующий:

Х1№=в1+ЬХ1°;

Х2№=в2+ЬХ2°;

Х3№=в3+ЬХ3°.

Вычисления заканчиваются тогда, когда разность между двумя ближайшими итерациями значения корня будет меньше о т.е.

¦Х1?-Х1?О№¦<=о;

¦Х2?-Х2?О№¦<=о;

¦Х3?-Х3?О№¦<=о.

Метод Зейделя

Этот метод представляет собой некоторую модификацию метода итерации. Основная идея заключается в том, что при вычислении n-ого приближения неизвестной Хi учитываются уже вычисленные (n-1)-ые значения переменных Х1, Х2, Х3.

Пусть дана СЛАУ

А11Х1+А12Х2+А13Х3=В1 (1)

А21Х1+А22Х2+А23Х3=В2 (2)

А31Х1+А32Х2+А33Х3=В3 (3)

Разрешим каждое из уравнений относительно Х1, Х2, Х3.

Приведенная система имеет вид: Хi = вi +? Ьij Хi;

Выберем произвольное начальное приближение Х1°, Х2°, Х3°.

Далее предполагая, что (n-1)-ое приближение корней Хi?О№ корней известно, будем строить n-ое приближение корней по методу Зейделя по следующим формулам:

Х1?=в1+?Ь1jХj?О№;

Х2?=в2+?Ь2jХj?О№+Ь2jX1?;

Х3?=в3+?Ь3jХj?О№+Ь3jX1?.

Обычно метод Зейделя дает лучшую сходимость, чем метод итерации, но приводит к более громоздким вычислениям. Процесс вычисления заканчивается тогда, когда выполняется условие ¦Хi?-Хi?О№¦<=о, т.е. разность приближений корня в соседних итерациях меньше или равна заданной точности

4. Блок-схемы

Основная программа

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

Метод Гауса

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

Метод итераций

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

Метод Зейделя

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

6. Текст программы

PROGRAM kyrsach;

Uses crt;

Var

s, fi, x: array [1..3] of real;

a: array [1..3,1..4] of real;

i, j: integer;

K1, K2, K3, A1, A2, A3: real;

regime: byte;

ch: char;

Type dlina = string [22];

********формирование рамки********

Procedure frame (x1, y1, x2, y2: byte);

Const

a = #186; b = #187; c = #188;

d = #200; e = #201; f = #205;

Begin

gotoxy (x1, y1);

write (e);

for i:= (x1+1) to (x2-1) do write (f);

write (b);

for i:= (y1+1) to (y2-1) do begin

gotoxy (x1, i);

write (a);

gotoxy (x2, i);

write (a);

end;

gotoxy (x1, y2);

write (d);

for i:= (x1+1) to (x2-1) do write (f);

write (c);

End;

********выбор цвета********

Procedure cf (c, f: byte);

Begin

textcolor (c);

textbackground (f);

End;

********процедура задержки********

Procedure payza (n: byte);

Begin

for i:= 1 to n do

delay (10000);

end;

********формирование титульного листа********

Procedure zastavka;

Var ch: char;

Begin

clrscr;

window (1, 1, 80, 25);

cf (14, 0);

clrscr;

frame (3, 3, 78, 24);

payza (5);

gotoxy (36, 4); write ('БНТУ');

payza (5);

gotoxy (35, 6); write ('МНО РБ');

payza (5);

gotoxy (25, 9); write (`Курсовой проект по информатике');

payza (5);

gotoxy (45, 14); write ('Исполнила: Стражникова Е. В.');

gotoxy (45, 15); write ('Проверил: Тарасевич Л. А.');

payza (5);

gotoxy (35, 22); write ('Минск 2003');

readkey;

clrscr;

End;

********звуковай сигнал********

Procedure beep;

Begin

sound (800);

payza (1);

nosound;

End;

********формирование меню********

Procedure menu(q1, q2, q3: byte;

ss1, ss2, ss3, ss4, ss5, ss6, ss7, ss8: dlina;

var result: byte);

Label met, men;

Const kr = 8;

Var m: array [1..kr] of string [48];

i, t: byte;

pp: array [1..kr] of byte;

f1: boolean;

Begin

f1:= true;

m[1]:= ss1; m[2]:= ss2; m[3]:= ss3; m[4]:= ss4;

m[5]:= ss5; m[6]:= ss6; m[7]:= ss7; m[8]:= ss8;

t:= length (m[1]);

for i:= 2 to q3 do

if length (m[i])>t then t:= length (m[i]);

frame (q1-1, q2, q1+t+5, q2+q3+1);

for i:= 1 to q3 do begin

if i = 1 then cf (0,10)

else cf (10,0);

gotoxy (q1, q2+1);

write (m[i]);

end;

gotoxy (14, 3);

cf (15+128, 1);

write ('С помощью ',chr(25), ' или ',chr(24),

укажите режим и нажмите', "Enter"');

cf (7, 0);

men: i:= 1;

while f1 = true do begin

ch:= readkey;

if ch = #13 then f1:= false;

if (ch = #0) and keypressed then begin

ch:= readkey;

case ch of

#80: begin

beep;

gotoxy (q1, q2+i);

cf (10, 0);

write (m[i]);

i:= i+1;

if I = (q3+1) then begin

i:= 1;

cf(10, 0);

gotoxy (q1, q2+1);

cf (0, 10);

write (m[i]);

cf (10, 0);

goto met;

end;

gotoxy (q1, q2+i);

cf (0, 10);

write (m[i]);

cf (10, 0);

end;

#72: begin

if i = 1 then goto met;

gotoxy (q1, q2+i);

beep;

cf (10, 0);

write (m[i]);

i:= i-1;

gotoxy (q1, q2+i);

cf (0, 10);

write (m[i]);

end;

end;

met:

end;

end;

result:= i;

cf(10, 0);

End;

********формирование надписей********

Procedure menu1;

Begin

ch:= readkey;

if ch = #13 then begin

clrscr;

menu (27, 9, 8, ' М е н ю . ',

' ',

' Метод Гаусса. ',

' Метод итераций. ',

' Метод Зейделя. ',

' ',

' Выход ',

' ', regime);

end;

End;

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

Procedure text;

Begin

clrscr;

writeln ('Введите исходные данные');

for i:= 1 to 3 do begin

write ('S',i,'='); readln (S[i]);

write ('FI',i,'='); readln (FI[i]); end;

clrscr;

cf (9, 0);

writeln (' И С Х О Д Н Ы Е Д А Н Н Ы Е `);

cf (10, 0);

writeln;

writeln ('------------------');

writeln (' i | Si | FIi ');

writeln ('------------------');

for i:= 1 to 3 do

writeln ('| ',i,' | ',s[i]:0:1,' | ',fi[i]:0:1,' |');

writeln ('------------------');

writeln;

payza (10);

writeln ('K1*Si*cos(FIi)+K2*sin(FIi)-K3=Si^2');

writeln;

cf (9, 0);

writeln ('Система уравнений');

writeln;

cf (10, 0);

for i:= 1 to 3 do

writeln ('K1*',S[i]:0:1,'*cos(',FI[i]:0:1,')*K2*sin(',FI[i]:0:1,')-K3=',S[i]:0:1,'^2');

writeln;

payza (10);

for i:= 1 to 3 do

FI[i]:= pi/180*FI[i];

for i:= 1 to 3 do begin

a[i,1]:= S[i]*cos(FI[i]);

a[i,2]:= sin(FI[i]);

a[i,3]:= -1; a[i,4]:= sqr(S[i]);

end;

end;

********метод Гауса********

Procedure gays;

Var n, k, m: real;

Begin

n:= a[1, 1]; k:= a[2, 1]; m:= a[3, 1];

if a[1, 1] = 0 then writeln ('Система является вырожденной');

for j:= 1 to 4 do begin

a[1, j]:= a[1, j]/n;

a[2, j]:= a[1, j]*k - a[2, j];

a[3, j]:= a[1, j]*m - a[3, j]; end;

n:= a[2, 2]; k:= a[3, 2];

for j:= 1 to 4 do begin

a[2, j]:= a[2, j]/n;

a[3, j]:= a[2, j]*k - a[3, j];

end;

K3:= a[3, 4]/a[3, 3];

K2:= a[2, 4]-a[2, 3]*K3;

K1:= a[1, 4]-a[1, 3]*K3 - a[1, 2]*K2;

writeln;

cf (9, 0);

writeln (`Решение системы');

writeln;

cf (13, 0);

writeln ('K1=',K1:0:5);

writeln ('K2=',K2:0:5);

writeln ('K3=',K3:0:5);

payza (10);

writeln;

End;

********метод Зейделя********

Procedure zeydel;

Label z;

Var e, k11, k22, k33: real;

Begin

writeln ('Введите требуемую точность вычислений');

write ('e=');

readln (e);

K11:= a[1, 4]/a[1, 1]; K22:= 0; K33:= 0;

K1:= 0; K2:= 0; K3:= 0;

z: K1:= (a[1, 4]-a[1, 2]*K22 - a[1, 3]*K33)/a[1, 1];

K2:= (a[2, 4]-a[2, 1]*K1 - a[2, 3]*K33)/a[2, 2];

K3:= (a[3, 4]-a[3, 1]*K1 - a[3, 2]*K2)/a[3, 3];

if (abs(K1 - K11) >= e) and (abs(K2 - K22) >= e) and (abs(K3 - K33) >= e)

then begin

K11:= K1; K22:= K2; K33:= K3;

goto z;

end

else begin

cf (9, 0);

writeln ('Решение системы.');

writeln;

cf (13, 0);

writeln ('K1=',k1:0:5);

writeln ('K2=',k2:0:5);

writeln ('K3=',k3:0:5);

end;

End;

********метод итераций********

Procedure iter;

Label z;

Var e, k11, k22, k33: real;

Begin

writeln ('Введите требуемую точность вычислений');

write ('e=');

readln (e);

K11:= a[1, 4]/a[1, 1]; K22:= a[2,4]/a[2, 2]; K33:= a[3,4]/a[3, 3];

K1:= 0; K2:= 0; K3:= 0;

z: K1:= (a[1, 4]-a[1, 2]*K22 - a[1, 3]*K33)/a[1, 1];

K2:= (a[2, 4] - a[2, 1]*K11 - a[2, 3]*K33)/a[2 ,2];

K3:= (a[3, 4] - a[3, 1]*K11 - a[3, 2]*K22)/a[3, 3];

if (abs(K1 - K11) >= e) and (abs(K2 - K22) >= e) and (abs(K3 - K33) >= e)

then begin

K11:= K1; K22:= K2; K33:= K3;

goto z;

end

else begin

cf (9, 0);

writeln (`Решение системы');

writeln;

cf (13, 0);

writeln ('K1=',k1:0:5);

writeln ('K2=',k2:0:5);

writeln ('K3=',k3:0:5);

end;

End;

********проверка решения системы********

Procedure prov;

Begin

cf (9, 0);

writeln ('Проверка. ');

writeln;

cf (10, 0);

for i:= 1 to 3 do begin

a[i, 1]:= S[i]*cos(FI[i]);

a[i, 2]:= sin(FI[i]);

a[i, 3]:= -1; a[i, 4]:= sqr(S[i]);

end;

writeln ('K1*Si*cos(FIi)+K2*sin(FIi)-K3=Si^2');

writeln;

for i:= 1 to 3 do begin

write (K1:0:1,'*',S[i]:0:1,'*cos(',FI[i]:0:1,')+',K2:0:1,'*sin(',FI[i]:0:1,')',-K3:0:1,'=');

x[i]:= a[i,1]*K1+a[i,2]*K2-K3;

writeln (x[i]:0:2,'=(S',i,')^2');end;

if (x[1] = 1.00) and (x[2] = 1.44) and (x[3] = 4.00)

then writeln ('Система решена верно.');

writeln;

End;

********нахождение значений********

Procedure yrav;

Begin

A1:= K1/2; A3:= K2/(2*A1);

A2:= sqrt(sqr(A1) + sqr(A3)-K3);

payza (10);

cf (9, 0);

writeln ('Коффициенты');

cf (13, 0);

writeln;

writeln ('A1=',A1:0:5);

writeln ('A2=',A2:0:5);

writeln ('A3=',A3:0:5);

cf (10, 0);

menu1;

readkey;

End;

********формирование пустого окна********

Procedure pusto;

Begin

gotoxy (10, 14);

write ('О Ш И Б К А П Р И В Ы Б О Р Е О П Е Р А Т О Р А');

sound (330); delay (32000); nosound;

sound (330); delay (32000); nosound;

sound (330); delay (32000); nosound;

sound (262); delay (55000);

sound (294); delay (32000); nosound;

sound (294); delay (32000); nosound;

sound (294); delay (32000); nosound;

sound (247); delay (55000); nosound;

menu1;

End;

********тело основной программы********

BEGIN

clrscr;

zastavka;

clrscr;

menu1;

clrscr;

case regime of

1, 2, 6, 8: pusto;

3: begin

text;

gays;

prov;

yrav;

end;

4: begin

text;

iter;

prov;

yrav;

end;

5: begin

text;

zeydel;

prov;

yrav;

end;

7: begin clrscr; halt; end;

end;

readkey;

END.

7. Результаты счета

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

Где

i

Si

цi

1

1.0

20°

2

1.2

45°

3

2.0

60°

8. Список используемой литературы.

Ю.С. Бородич, А.Н. Васильев

А.И. Кузьмич “Паскаль для персональных компьютеров”. Минск - 1991 вышэйшая школа

С.В. Мизрохи “TURBO PASKAL и объектно-ориентировочное программирование” Москва - 1992 “финансы и статистика”.

Я. Янсон (перевод с немецкого Н.С.Сойфер) “Турбо-Паскаль в сжатом изложении”. Москва - 1991 “мир”.

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


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

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

    курсовая работа [1,0 M], добавлен 03.07.2011

  • Использование метода Зейделя для нахождения корней системы линейных алгебраических уравнений. Суть метода простых итераций. Оценка погрешности нормальной системы. Составление алгоритма, блок-схемы и кода программы. Тестовый пример и проверка в MathCad.

    лабораторная работа [174,8 K], добавлен 02.10.2013

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

    курсовая работа [823,9 K], добавлен 19.06.2023

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

    курсовая работа [305,9 K], добавлен 03.07.2011

  • Особенности программирования на языке Паскаль в среде Турбо Паскаль. Линейные алгоритмы, процедуры и функции. Структура данных: массивы, строки, записи. Модульное программирование, прямая и косвенная рекурсия. Бинарный поиск, организация списков.

    отчет по практике [913,8 K], добавлен 21.07.2012

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

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

  • Математическое обоснование метода решения задачи: определенный интеграл, квадратурная формула Симпсона (формула парабол). Словесное описание алгоритма и составление его блок-схемы. Выбор языка программирования. Текст программы решения задачи, ее листинг.

    курсовая работа [593,6 K], добавлен 09.07.2012

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

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

  • Анализ заданной сложной функции и разработка структурной схемы алгоритма по её вычислению. Программирование отдельных блоков и структур алгоритма решаемой задачи на языке Паскаль. Полная программа в соответствии с алгоритмом. Результаты расчётов на ПК.

    курсовая работа [59,2 K], добавлен 09.04.2012

  • Участники и инструментальные средства создания экспертной системы. Классификация, преимущества, сферы применения экспертных систем. Разработка блок-схемы алгоритма и программы на языке Турбо Паскаль для решения задачи по теме "Двумерные массивы".

    курсовая работа [1,0 M], добавлен 18.01.2014

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