Рекурсивно-логическое программированиие

 

Содержание

ВВЕДЕНИЕ

В ходе исследования дисциплины"Рекурсивно-логическое программировани-ие" студенты обязаны заполучить абстрактные познания и выучиться использовать приобретенные познания в практической работе. Создание и закрепление навы-ков самостоятельной работы является неотъемлемой долею обучения. Формой учебной работы, конкретно связанной с автономным решением по-ставленных инженерных и исследовательских вопросцев, являются курсовые работы.
Сформулировано поручение на исполнение курсовой работы, приведены ва-рианты заданий для выбора.
Вспомоществование специализировано для студентов заочной(дистанционной)формы обучения.




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

1. 1. ТЕМА: разработка метода и програмки системы искусственного разума.
1. 2. СОДЕРЖАНИЕ КУРСОВОЙ РАБОТЫ:
- посадка задачки;
- математическое отображение способа(к примеру, в Latex, WinTex, MS Equa-tion);
- описание метода и схем(к примеру, на языке UML);
- тексты программ на языках логического программирования.
- отображение программ.

2. ВАРИАНТЫ ЗАДАНИЙ КУРСОВОЙ РАБОТЫ:
1. Длинноватая математика


Отображение способа:
Мы используем теме же принципами, что и хоть какой 5-тикласник, способный ложить числа в столбик, а фактически складываем 2 числа и запоминаем ряд в разуме, в предстоящем ис-пользуя этот ряд для получения старшего ряда, теме же принципами мы станем пользо-ваться для получения разности 2-ух чисел и творения.

ПРОЦЕСС


Мы ограничены размером(величиной)чисел, с которыми можем рабо-тать. А ежели нам нужно исполнить арифметические деяния над чрезвычайно крупными числами, к примеру,
30!= 265252859812191058636308480000000 ?
В таковых вариантах мы сами обязаны побеспокоиться о представлении чисел в машине и о четком исполнении арифметических операций над ними.
Числа, для представления которых в обычных компьютерных типах данных не хватает численности двоичных разрядов, именуются"длинны-ми". Осуществление арифметических операций над таковыми"длинными" чис-лами получила заглавие"длинной математики".
Организация работы с"длинными" числами во многом зависит от такого, как мы представим в компе эти числа. "Длинноватое" количество разрешено за-писать, к примеру, с поддержкой массива десятичных цифр, численность эле-ментов в таком массиве одинаково численности означающих цифр в"длинном" числе. Однако ежели мы станем осуществлять арифметические операции над сиим числом, то величина массива обязан существовать достаточным, чтоб размес-тить в нем и итог, к примеру, умножения.
Есть и остальные представления"длинных" чисел. Осмотрим одно из их. Представим наше число
30!= 265252859812191058636308480000000
в облике:
30!= 2 *(104)8 6525 *(104)7 2859 *(104) 8121 *(104)5 9105 *(104)4 8636 *(104)3 3084 *(104)2 8000 *(104)1 0000 *(104)0.
Это понятие наталкивает на мысль о массиве, представленном в табл. 1.
Матрица 1
Номер вещества в массиве А
0 1 2 3 4 5 6 7 8 9
Значение
9 0 8000 3084 8636 9105 8121 2859 6525 2


Мы можем полагать, что наше"длинное" количество представлено в 10000-ой системе счисления(десятитысячно-десятичная система счисления, приве-дите аналогию с восьмерично-десятичной системой счисления), а"цифра-ми" числа являются четырехзначные числа.







Но мы сходим сообразно иному, чуток наиболее легковесному пути, представим количество массивом, любой ряд которого станет представлен составляющей в массиве, тогда получим:
1 2 3 4 5 6 7 8 9 8

Этак мы представили количество 1234567898 с поддержкой массива.

9 9 9 9 9 9 9 9 9 9

Этак мы представили количество 9999999999 с поддержкой массива.



Сейчас определим операцию склады для данных 2-ух массивов:

Для эмуляции искусственного разума мы станем обрисовывать програмку с точки зрения человека. Для этого сделаем новейший массив:

0 0 0 0 0 0 0 0 0 0

Массив мы назовем «УМ», тогда работу програмки разрешено графически доставить этак:

0 0 0 0 0 0 0 0 0 0

1 2 3 4 5 6 7 8 9 8

9 9 9 9 9 9 9 9 9 9
=
Ежели крайний вещество «х» сложим с крайним составляющей «у» и ежели количество станет более 9, тогда мы, как бы это делал человек, запишем в «ум» количество 1 и получим:

Ум
0 0 0 0 0 0 0 0 1 0
Х
1 2 3 4 5 6 7 8 9 8
У
9 9 9 9 9 9 9 9 9 9
= Ответ
0 0 0 0 0 0 0 0 0 7

Ежели вы направили интерес на стрелочку, то обязаны были увидеть, что вещество массива поменялся, тоесть, иными словами, мы «запомнили» единичку.
При предстоящем подсчете мы станем уже учесть эту единичку.

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


Скриншоты:

Наружный разряд програмки:



Меню:

Контент програмки:
unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Menus;

type
TForm1 = class( TForm)
MainMenu1: TMainMenu;
N1: TMenuItem;
N2: TMenuItem;
N3: TMenuItem;
N4: TMenuItem;
N5: TMenuItem;
Label1: TLabel;
Label2: TLabel;
Edit1: TEdit;
Edit2: TEdit;
Label3: TLabel;
Label4: TLabel;
Edit3: TEdit;
N6: TMenuItem;
procedure N6Click( Sender: TObject);
procedure N3Click( Sender: TObject);
procedure N4Click( Sender: TObject);
procedure N5Click( Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *. dfm}

function WIB( s1,s2: string): boolean;
var ls1,ls2,i: integer;
ls3: string;
flag: boolean;
begin
ls1:=length( s1); ls2:=length( s2); flag:=false;
if ls1strtoint( s2[i])then begin break; end;
if strtoint( s1[i])

Выдержка

Литература

Купить работу за 1490 руб.

Nothing:=''; //------- запишем массивы ------------- for i:=1 to ls1 do begin if s1[i] in ['0'..'9'] then begin Nothing:='';

Больше работ по теме:

КОНТАКТНЫЙ EMAIL: [email protected]

Скачать реферат © 2017 | Пользовательское соглашение

Скачать      Реферат

ПРОФЕССИОНАЛЬНАЯ ПОМОЩЬ СТУДЕНТАМ