Реферат: Получение случайных чисел - текст реферата. Скачать бесплатно.
Банк рефератов, курсовых и дипломных работ. Много и бесплатно. # | Правила оформления работ | Добавить в избранное
 
 
   
Меню Меню Меню Меню Меню
   
Napishem.com Napishem.com Napishem.com

Реферат

Получение случайных чисел

Банк рефератов / Математика

Рубрики  Рубрики реферат банка

закрыть
Категория: Реферат
Язык реферата: Русский
Дата добавления:   
 
Скачать
Архив Zip, 28 kb, скачать бесплатно
Обойти Антиплагиат
Повысьте уникальность файла до 80-100% здесь.
Промокод referatbank - cкидка 20%!

Узнайте стоимость написания уникальной работы




Получение случайных чисел


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


1.2. Задания для самостоятельной подготовки

Изучить:

  • способы получения случайных чисел с различными законами распределения;

  • -способы использования в программах обращений к функциям или подпрограммам для получения псевдослучайных чисел с различными законами распределения;

  • способами использования случайных чисел для моделирования.

Разработать алгоритм решения в соответствии с заданием.

Составить программу решения задачи.

Подготовить тестовый вариант программы и исходных данных.


1.3. Задание к работе

1. Выполнить на ЭВМ программу в соответствии со следующим заданием:

Сгенерировать последовательность из 50 случайных чисел с нормальным законом распределения а=5,=4) и последовательность из 50 случайных чисел с экспоненциальным законом распределения с параметром =5. Все числа свести в массив, расположив их по возрастанию. Вычислить среднее значение, дисперсию и вывести результаты на печать в виде гистограммы, разбив последовательность чисел на десять интервалов

2. Проверить правильность выполнения программы с помощью тестового варианта.


2. Руководство программиста.

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

2.1. Теоретическая база.

2.1.1. Нормальное распределение.

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

Мы видим, что нормальное распределение определяется двумя параметрами: а и . Достаточно знать эти параметры, чтобы задать нормальное распределение. Покажем, вероятностный смысл этих параметров таков: а есть математическое ожидание, —среднее квадратическое отклонение нормального распределения.


2.1.2 Показательное (экспоненциальное) распределение.

Показательным (экспоненциальным) называют распределение вероятностей непрерывной случайной величины X, которое описывается плотностью

где  - постоянная положительная величина.

Мы видим, что показательное распределение определяется одним параметром . Эта особенность показательного распределения указывает на его преимущество по сравнению с распределениями, зависящими от большего числа параметров. Обычно параметры неизвестны и приходится находить их оценки (приближенные значения); разумеется, проще оценить один параметр, чем два или три и т. д. Примером непрерывной случайной величины, распределенной по показательному закону, может служить время между появлениями двух последовательных событий простейшего потока.


2.2. Начало алгоритмизации.

Для получения двух последовательностей из 50 случайных чисел с показательным и нормальным законами распределения необходимо организовать цикл, который будет выполнятся 50 раз. Внутри цикла будем пользоваться функцией из Турбо Паскаля random(a) - эта функция выдает произвольное число из интервала от 1 до a, a65535. Каждое полученное число будет вносится в массив, причем первые 50 элементов этого массива получены по нормальному закону, а другие 50 - по показательному.

Для упорядочивания массива случайных величин создадим двойной цикл. Для расчета мат. ожидания и дисперсии упорядоченного массива также создадим двойной цикл, с учетом того, что массив уже надо разбить на 10 частей и расчет проводить по каждому из промежутков. Для построения гистограммы воспользуемся средствами модуля Graph.tpu.

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

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

Таблица 1. Описание переменных и констант.

Имя переменной

Назначение

Тип в Turbo Pascal

i.j

Переменные циклов.

Byte

help,work,button

Переменный для хранения параметров вызова процедур.

Byte

actionprog,action

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

Char

exitpar,exitmenu,exitprog

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

Boolean

grmode,grdriver

Переменные, содержащие данные о типе графического драйвера и его режиме работы. Установлены в программе на автоматическое определение.

Integer

Dat(3)

Массив для хранения входных данных в программе. Начальное значение [5,4,5].

array[1..3]of real

Posle(100)

Массив для хранения элементов генерируемой последовательности.

array[1..100] of real

Xcor(3),Ycor(3)

Массивы, используемые для более компактности ввода параметров генерации последовательности в процедуре DoWorkс параметром work=1.

array[1..3]of byte

Mat(10),Disp(10)

Массивы с данными о дисперсии и мат.ожидании по промежуткам последовательности.

array[1..10]of real

mat0,disp0

Мат.ожидание и дисперсия по всей последовательности.

Real

X

Временная переменная (буфер).

Real

Col(4)

Массив для управления выбора пункта меню.

array[1..4]of byte

Light.Dark

Константы для задания цветов меню.

[1..16]


2.3. Пояснения к программе.

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

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

После определения происходит первоначальная (чернвая) прорисовка интерфейсной части программы. Для этого используется три блока, прорисовывающие строку помощи (drawhelp(0)), диалогового окна (drawwin) и строки меню (drawmenu(5)).

Перехватчик сообщений с клавиатуры (ReadKey) позволяет выбрать тот или иной пункт меню - о возможном выборе можно узнать в строке подсказки в низу экрана. В зависимости от выбора оператором пункта меню происходит запуск “основной работающей программы” - процедуры dowork. Для вызова этой процедуры используется один параметр – work. Его возможные значения:

Таблица 2.

Значение параметра work

Действие

1

Задание параметров для построения последовательностей.

2

Просмотр последовательностей.

3

Просмотр гистограммы.

Работы основной программы завершается при истинном значении переменной exitprog, чего можно достичь комбинацией Alt-x (об этом тоже информирует строка помощи).


2.3.2. Процедура drawhelp.

Эта процедура полностью предназначена для навигации оператора с работой в программе.

Для вызова используется один параметр (help), чего достаточно для вывода полной подсказки дальнейших действий. Ниже приводится таблица со значением параметра и строки, которая высвечивается внизу экрана.

Таблица 2.

Значение параметра help

Вид строки помощи

0

F1-Парам. F2-Посл-ти F3-Гистогр. F10-Меню (Alt-x)-Выход

1

Задать/изменить параметры

2

Просмотреть последовательности

3

Просмотреть гистограмму

4

Выход

5

Esc-Закончить изменение параметров. BckSp-Изменить параметр. F4-Постр. посл-ть'

6

Нажмите Up или Down для просмотра или Esc для выхода


В блок-схеме к этой процедуре использованы сокращения. Так s1 означает, что help=1; s2 – help=2 и так далее.


2.3.3 Процедура drawwin.

Все, что делает эта процедура – составление диалогового окна. Прорисовка окна идет посредством обычной псевдографики (ASCII-кодировка). При это экран делится на три части. В верхней происходит уведомление пользователя о выборе пункта меню, а в двух нижних происходит задание параметров построения последовательностей (в случае вызова dowork(1)) или же просмотр последовательностей (в случае вызова dowork(2)). Если не происходит вызова dowork, то окно остается пустым, за исключением верхнего фрейма, где написано “Последовательности”.

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


2.3.4. Процедура dowork - “основная работающая программа”.

Основная программа нужна для организации диалога с пользователем. Но, собственно, сам диалог и все действия производятся именно в этой процедуре. Именно этой части программы стоит уделить наибольшее внимание.

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

Первая часть – задание/просмотр параметров генерации последовательностей.

Быстрый вызов – F1.

Здесь происходит, как ясно из заголовка пункта, задание новых или просмотр текущих параметров для генерации последовательностей. На блок-схеме этой подпрограммы это блоки 1-30.

Первым делом происходит разделение верхнего фрейма на два, в них прорисовывается пояснение – в какой из частей нижнего фрейма для какого закона распределения задаются параметры.

Для удобного задания параметров используется символьная переменная action. Именно через нее происходит перехват событий, от чего и зависит изменить параметры, оставить их неизменными, задать последовательности или же выйти из подпрограммы.

Со всеми возможными действиями данной и последующих частей можно познакомится в пункте “Руководства пользователя”.

Стоит обратить внимание на то, как происходит ввод новых параметров. Положение курсора для ввода задается двумя массивами (они, как впрочем и остальные переменные, описаны в таблице 1): Xcor(3), Ycor(3). Измененные параметры записываются в массив Dat(3). Подобная схема очень удобна для использования и для изменения как конфигурации.

Переход между состоянием просмотр/изменение происходит путем использования кодов ASCII для клавиш Esc, Tab, Enter и F4 – генерация последовательности.

Параметр справки – 5.

Вторая часть – просмотр сгенерированной последовательности.

Быстрый вызов – F2.

На блок-схеме представлена блоками 31-47.

Просмотр последовательности происходит через обычный цикл по одному параметру. Вся последовательность выводится по двум столбам, в каждом из которых по 50 элементов. Управление просмотром организовано через коды клавиш скроллинга (прокрутки) по общепринятому стандарту – Up/Down. Элементы выводятся с приближением до шести символов после запятой, дабы не засорять рабочее пространство.

Параметр справки – 6.

Третья часть – просмотр гистограммы.

Быстрый вызов – F3.

На блок-схеме представлена блоками 48-61.

В блоках 49-58 происходит вычисление математического ожидания и дисперсии как для каждого из промежутков, так и для всей последовательности целиком.

Блок 59 представляет собой (смотри код программы) прорисовку сетки для более удобной визуализации, вывод значений математического ожидания и дисперсии, легенды. Легенда необходима для определения того, какой тип столбцов что демонстрирует.

Вся визуальная часть процедуры dowork с параметром work=3 осуществлена при помощи модуля Graph.tpu. Тип адаптера и его режим определяются в основной программе. Необходимо, чтобы этот модуль находился в одной папке с файлом программы, иначе вывод будет невозможен, что приведет к выходу из программы.

Выходом служит нажатие на любую клавишу.


2.3.5. Процедура drawmenu.

Быстрый вызов – F10.

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

Алгоритм процедуры полностью замешен на символьных данных, используемых в качестве кодов “горячих” клавиш и клавиш скроллинга. Для визуализации выбора пункта меню используется выделение цветом того или иного пункта меню. Все цвета меню можно зажать путем изменения значений констант light и dark – соответственно активного и неактивного пункта меню. Подобный ход можно использовать в подборе цветов, удобных для пользователя.

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

При выборе любого из пунктов меню происходит вызов процедуры drawhelp со значением 1-4 в зависимости от того какой пункт был выбран. Значение 1 предано крайнему левому пункту, 4 – правому. Подробнее о текстах справки можно посмотреть в таблице 3.

Как и во многих программах можно избежать входа в меню – для выбора любого пункта назначена “горячая” клавиша. Информация об этом выдается при запуске программы.


3. Руководство пользователя.

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

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

В программе предусмотрена строка помощи для пользователя, в которой описаны быстрый клавиши вызова того или иного пункта возможных действий. Все возможные подсказки можно просмотреть в таблице 3 в разделе “Руководство программиста”.

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

При выборе пункта “Параметры” пользователю будет предложено окно, в котором можно будет задать параметры для генерации последовательности. В правой колонке для нормального закон, в левой – для экспоненциальной. Чтобы изменить параметр необходимо нажать BckSp (Забой), после чего становится возможным изменение параметра. Переключение между параметрами осуществляется через клавишу Tab или Enter. Также переход происходит автоматически после изменения параметра. В этом же пункте меню происходит генерация последовательности – клавиша F4. Выход из этого режима осуществляется через клавишу Escape.

Пункт “Последовательности” позволяет осуществить просмотр уже существующей последовательности. Чтобы просмотреть всю последовательность целиком воспользуйтесь клавишами скроллинга (прокрутки) Up/Down. Выход из режима – Escape.

Просмотр гистограммы производится при выборе одноименного пункта. Гистограмма имеет легенду. Выходом из просмотра является нажатие на любую клавишу.

Для выхода можно воспользоваться комбинацией клавиш Alt-x или же через меню.


Таблица 4. Комбинации “горячих” клавиш программы.

Комбинация

Действие (вход в режим)

Начальный режим

F1

Параметры

F2

Последовательности

F3

Гистограмма

F10

Вход в меню

Alt-x

Быстрый выход

Параметры

Enter

Закончить изменение параметра

Escape

Выход из режима

Tab

Переключится на следующий параметр

F4

Построить последовательность

Последовательности

Up/Down

Просмотр вверх/вниз последовательности

Escape

Выход из режима

Гистограмма

Любая клавиша

Выход из режима


4. Заключение.

Научились применять математический аппарат при программировании на Turbo Pascal. Написали программу используя все знания полученные по курсу “Информатика”. Вникли в понятие интерфейса и сделали попытку в разработке собственного дизайна программы.


program kursovik;

uses crt,graph;

var j,help,i,work,button:byte;

exitmenu,exitprog:boolean;

actionprog,action:char;

grmode,grdriver:integer;

dat:array[1..3]of real;

posle:array[1..100] of real;

xcor,ycor:array[1..3]of byte;

mat,disp:array[1..10]of real;

mat0,disp0,dispmax,matmax,x:real;

{*****DrawHelp*****}

procedure drawhelp(help:byte);

begin

textcolor(black);

textbackground(white);

gotoxy(1,25);

case help of

0: write(' F1-Парам. F2-Посл-ти F3-Гистогр. F10-Меню (Alt-x)-Выход ');

1: write(' Задать/изменить параметры ');

2: write(' Просмотреть последовательности ');

3: write(' Просмотреть гистограмму ');

4: write(' Выход ');

5: write(' Esc-Закончить изменение параметров. BckSp-Изменить параметр. F4-Постр. посл-ть');

6: write(' Нажмите Up или Down для просмотра или Esc для выхода ');

end;

end;

{*****DrawWin*****}

procedure drawwin;

begin

textcolor(white);textbackground(blue);

GotoXY(1,2);

Write('г');

for i:=2 to 79 do

Write('=');

Write('¬');


for i:=3 to 23 do

begin

GotoXY(1,i1);

Write('¦');

for j:=2 to 79 do

Write(' ');

Write('¦');

end;

GotoXY(1,24);

Write('L');

for i:=2 to 79 do

Write('=');

Write('-');

{ gotoxy(39,2);write('T');}

gotoxy(39,24);write('¦');

for i:=5 to 23 do

begin

gotoxy(39,i);

write('¦')

end;

gotoxy(31,3);

writeln('Последовательности');

gotoxy(1,4);

write('¦=====================================T========================================¦');

end;

{*****DoWork*****}

procedure dowork(work:byte);

begin

case work of

1: begin

textcolor(white);

textbackground(blue);

gotoxy(39,2);write('T');

gotoxy(2,3);

writeln(' Нормальный закон: ¦ Экспоненциальный закон:');

gotoxy(1,4);

write('¦=====================================+========================================¦');

drawhelp(5);

textcolor(white);

textbackground(blue);

gotoxy(2,6);write(' Мат. ожидание:');

gotoxy(2,8);write(' Дисперсия:');gotoxy(xcor[2],ycor[2]);write(dat[2]:2:1);

gotoxy(41,6);write('Коэффициент:');gotoxy(xcor[3],ycor[3]);write(dat[3]:2:1);

gotoxy(xcor[1],ycor[1]);write(dat[1]:2:1);i:=1;

repeat

action:=readkey;

case action of

#27: exitpar:=true;

#9: begin

i:=i+1;

if i<4>

begin

gotoxy(xcor[i],ycor[i]);write(dat[i]:2:1);

end

else

begin

i:=1;

gotoxy(xcor[1],ycor[1]);write(dat[1]:2:1);

end;

end;

#8: begin

gotoxy(xcor[i],ycor[i]);write(' ');

gotoxy(xcor[i],ycor[i]);read(dat[i]);

gotoxy(xcor[i],ycor[i]);write(dat[i]:2:1);

if i<3>

gotoxy(xcor[i],ycor[i]);write(dat[i]:2:1);

end;

#13: begin

if i<3>

gotoxy(xcor[i],ycor[i]);write(dat[i]:2:1);

end;

#62: begin

for i:=1 to 50 do

begin

x:=ln(random(65525)+1);

posle[i]:=exp(-sqr(x-dat[1])/(2*sqrt(dat[2])))/sqrt(2*pi*dat[2]);

x:=exp(1/(random(825)));

if x<0>

end;

end;

end;

until exitpar=true;

drawwin;

end;

2: begin

action:=#1;

drawhelp(6);

textcolor(white);

textbackground(blue);

exitpar:=false;

j:=1;

for i:=1 to 19 do

begin

gotoxy(2,i+4);

if i+j-1<10 then write(' ',i+j-1,': ',posle[i+j]:2:6,' ¦ ',i+j+49,': ',posle[i+50+j]:2:6)

else write(' ',i+j-1,': ',posle[i+j]:2:6,' ¦ ',i+j+49,': ',posle[i+50+j]:2:6)

end;

repeat

action:=readkey;

case action of

#72: if j>1 then j:=j-1;

#80: if j<32>

#27: exitpar:=true;

end;

for i:=1 to 19 do

begin

gotoxy(2,i+4);

if i+j-1<10 then write(' ',i+j-1,': ',posle[i+j]:2:6,' ¦ ',i+j+49,': ',posle[i+50+j]:2:6)

else write(' ',i+j-1,': ',posle[i+j]:2:6,' ¦ ',i+j+49,': ',posle[i+50+j]:2:6)

end;

until exitpar=true;

drawwin;

end;

3: begin

for i:=1 to 10 do

begin

x:=0;

for j:=1 to 10 do

x:=x+posle[(i-1)*10+j];

mat[i]:=x/10;

mat0:=mat0+x;

end;

mat0:=mat0/100;

for i:=1 to 10 do

for j:=1 to 10 do

begin

disp[i]:=sqr(posle[(i-1)*10+j]-mat[i]);

disp0:=sqr(posle[(i-1)*10+j]-mat0);

end;

matmax:=mat[1];

dispmax:=disp[1];

for i:=1 to 10 do

begin

if disp[i]>dispmax then dispmax:=disp[i];

if mat[i]>matmax then matmax:=mat[i];

end;

initgraph(grdriver,grmode,'');

setBKcolor(black);setcolor(8);

for i:=1 to 11 do

line(5,i*30,15,i*30-10);

for i:=1 to 20 do

line(i*25+5,330,i*25+15,320);

line(5,330,505,330);

line(5,330,5,30);

for i:=0 to 20 do line(i*25+15,320,i*25+15,20);

for i:=1 to 11 do line(15,i*30-10,515,i*30-10);

setbkcolor(black);

for i:=1 to 10 do

begin

setcolor(cyan);

SetFillStyle(6, 7);

Bar3D(13,27+30*(i-1),13+round(mat[i]*10000),35+30*(i-1), 2, TopOn);

setcolor(green);

SetFillStyle(8, 8);

Bar3D(13,35+30*(i-1),13+round(disp[i]*1000000),43+30*(i-1), 2, TopOn);

end;

SetFillStyle(6, 7);

setcolor(8);

bar(10, 430, 20, 440);

outtextxy(23,432,'- Mat. ozhidanie');

SetFillStyle(8, 8);

bar(10, 450, 20, 460);

outtextxy(23,452,'- Dispersiya');

readkey;

closegraph;

drawwin

end;

end;

end;

{*****DrawMenu*****}

procedure drawmenu(button:byte);

const light=green;{15,14,13,12,11,10,9}

dark=white;{7,6,5,4,3,2,1}

var col:array[1..4]of byte;

exitmenu:boolean;

begin

exitmenu:=false;

textcolor(black);

drawhelp(1);

repeat

for i:=1 to 5 do col[i]:=dark;

col[button]:=light;

gotoxy(1,1);

textbackground(col[1]);write(' Параметры ');

textbackground(col[2]);write(' Последовательности ');

textbackground(col[3]);write(' Гистограмма ');

textbackground(col[4]);write(' Выход ');textbackground(dark);write(' ');

if button<>5 then action:=readkey else exitmenu:=true;

case action of

#77: begin

if button<4>

begin

col[button]:=dark;

button:=button+1;

col[button]:=light

end

else

begin

col[4]:=dark;

col[1]:=light;

button:=1;

end;

end;

#75: begin

if button>1 then

begin

col[button]:=dark;

button:=button-1;

col[button]:=light

end

else

begin

col[1]:=dark;

col[4]:=light;

button:=4;

end

end;

#27: exitmenu:=true;

#13: case button of

1: begin

dowork(1);

button:=5

end;

2: begin

dowork(2);

button:=5

end;

3: begin

dowork(3);

button:=5

end;

4: begin

exitmenu:=true;

exitprog:=true

end;

end;

end;

if button<>5 then drawhelp(button);

until exitmenu=true;

drawhelp(0);textbackground(dark);gotoxy(1,1);

write(' Параметры Последовательности Гистограмма Выход ');

end;

{*****Главная программа*****}

begin

clrscr;

xcor[1]:=18;

xcor[2]:=18;

xcor[3]:=58;

ycor[1]:=6;

ycor[2]:=8;

ycor[3]:=6;

dat[1]:=5;dat[3]:=5;dat[2]:=4;

grmode:=detect;

grdriver:=detect;

drawwin;

repeat

drawmenu(5);

drawhelp(0);

actionprog:=readkey;

case actionprog of

#59: dowork(1);

#60: dowork(2);

#61: dowork(3);

#68: begin

drawmenu(1);

end;

#45: exitprog:=true;

end;

for i:=1 to 10 do begin mat[i]:=0; disp[i]:=0 end;

until exitprog=true;

end.


1Авиация и космонавтика
2Архитектура и строительство
3Астрономия
 
4Безопасность жизнедеятельности
5Биология
 
6Военная кафедра, гражданская оборона
 
7География, экономическая география
8Геология и геодезия
9Государственное регулирование и налоги
 
10Естествознание
 
11Журналистика
 
12Законодательство и право
13Адвокатура
14Административное право
15Арбитражное процессуальное право
16Банковское право
17Государство и право
18Гражданское право и процесс
19Жилищное право
20Законодательство зарубежных стран
21Земельное право
22Конституционное право
23Конституционное право зарубежных стран
24Международное право
25Муниципальное право
26Налоговое право
27Римское право
28Семейное право
29Таможенное право
30Трудовое право
31Уголовное право и процесс
32Финансовое право
33Хозяйственное право
34Экологическое право
35Юриспруденция
36Иностранные языки
37Информатика, информационные технологии
38Базы данных
39Компьютерные сети
40Программирование
41Искусство и культура
42Краеведение
43Культурология
44Музыка
45История
46Биографии
47Историческая личность
 
48Литература
 
49Маркетинг и реклама
50Математика
51Медицина и здоровье
52Менеджмент
53Антикризисное управление
54Делопроизводство и документооборот
55Логистика
 
56Педагогика
57Политология
58Правоохранительные органы
59Криминалистика и криминология
60Прочее
61Психология
62Юридическая психология
 
63Радиоэлектроника
64Религия
 
65Сельское хозяйство и землепользование
66Социология
67Страхование
 
68Технологии
69Материаловедение
70Машиностроение
71Металлургия
72Транспорт
73Туризм
 
74Физика
75Физкультура и спорт
76Философия
 
77Химия
 
78Экология, охрана природы
79Экономика и финансы
80Анализ хозяйственной деятельности
81Банковское дело и кредитование
82Биржевое дело
83Бухгалтерский учет и аудит
84История экономических учений
85Международные отношения
86Предпринимательство, бизнес, микроэкономика
87Финансы
88Ценные бумаги и фондовый рынок
89Экономика предприятия
90Экономико-математическое моделирование
91Экономическая теория

 Анекдоты - это почти как рефераты, только короткие и смешные Следующий
Одесса. Трамвайная остановка.
Дама успела заскочить в трамвай, а её крепко выпивший муж - нет.
Кондуктор кричит вагоновожатому:
- Сёма, шоб ты так жил, останови средство! Дама ручную кладь забыла!
Anekdot.ru

Узнайте стоимость курсовой, диплома, реферата на заказ.

Обратите внимание, реферат по математике "Получение случайных чисел", также как и все другие рефераты, курсовые, дипломные и другие работы вы можете скачать бесплатно.

Смотрите также:


Банк рефератов - РефератБанк.ру
© РефератБанк, 2002 - 2017
Рейтинг@Mail.ru