Заказать курсовые, контрольные, рефераты...
Образовательные работы на заказ. Недорого!

Разработка программного обеспечения

РефератПомощь в написанииУзнать стоимостьмоей работы

If (sumsum%2≠0). For (int i = 0; i. For (int i = 0; i. Case 1: result (); System («cls»); Case 2: exit (0); Buff= rand ()%20; Switch (choice). Std: cout<<" «<. Roz=rand ()%101; Int l=rand ()%n; For (int j=0; j. Double ul={0,0}; Double sumcellf; Double elit=0.0; Buff = individ]; If (cf>=delta). For (int j=0;j. For (int j=0;j. If (sumsum>0). For (i = 0; i. For (i = 0; i. For (i = 0; i. For (i = 0; i. Читать ещё >

Разработка программного обеспечения (реферат, курсовая, диплом, контрольная)

#include.

#include.

#include.

#include.

#include.

int i, j;

int n, m;

int menu_select (void);

void result (void);

double Sfera (double x);

double SUMSfera (double *a);

int main ().

{.

char choice;

for (;;).

{.

choice = menu_select ();

switch (choice).

{.

case 1: result ();

break;

case 2: exit (0);

}.

}.

return 0;

}.

int menu_select (void).

{.

setlocale (LC_ALL," Russian");

int c;

std:cout<<" 1. Вычислить функцию" <

std:cout<<" 2. Выход «<

do.

{.

std:cout<<" Введите номер нужного пункта: «<

std:cin>> c;

}.

while (c2);

return c;

}.

void result (void).

{.

setlocale (LC_ALL," Russian");

std:cout<<" Введите число переменных n" <

std:cin>>n;

m=2*n;

std:cout<<" «<

int individ[m][n];

int buff[m][n];

int roz[m];

double cf[m];

double sect[m];

int nom[m];

int ver[m];

double delta=n*0.9 999 999;

double sumcellf;

int sumsum=0;

int rez=0;

int w=0;

double ul[2]={0,0};

unsigned int start = clock ();

for (i = 0; i.

{.

for (j=0; j.

{.

individ[i][j] = 0 + rand ()%20;

}.

}.

do.

{.

if (ul[1]>5).

{.

ul[1]=0;

for (i = 0; i.

{.

individ[i][rand ()%n]= rand ()%20;

}.

}.

for (i = 0; i.

{.

cf[i]=0.0;

for (j=0;j.

{.

cf[i]+=Sfera (individ[i][j]);

}.

}.

sumcellf=SUMSfera (cf);

double temp=0;

for (i=0; i.

{.

temp+=(cf[i]/sumcellf)*100;

sect[i]=temp;

}.

for (i=0; i.

{.

roz[i]=rand ()%101;

}.

for (i=0; i.

{.

for (j=0;j.

{.

if (roz[i].

{.

nom[i]=j;

break;

}.

}.

}.

for (i=0; i.

{.

if (rand ()%101<=10).

{.

ver[i]=0;

sumsum++;

}.

else.

{.

ver[i]=1;

}.

}.

for (i=1;i.

{.

for (j=i;j>0 && ver[j-1]>ver[j]; j—).

{.

std:swap (ver[j-1], ver[j]);

std:swap (nom[j-1], nom[j]);

}.

}.

if (sumsum%2≠0).

{.

ver[sumsum+1]=0;

sumsum++;

}.

for (i = 0; i.

{.

for (j=0; j.

{.

buff[i][j] = individ[nom[i]][j];

}.

}.

if (sumsum>0).

{.

for (i = 0; i.

{.

buff[i][rand ()%n]= rand ()%20;

}.

}.

for (i = sumsum; i.

{.

int l=rand ()%n;

for (int j=0; j.

{.

if (j.

{.

std:swap (buff[i][j], buff[i+1][j]);

}.

}.

}.

for (i = 0; i.

{.

for (j=0; j.

{.

individ[i][j]=buff[i][j];

}.

}.

for (i = 0; i.

{.

cf[i]=0.0;

for (int j=0;j.

{.

cf[i]+=Sfera (individ[i][j]);

}.

}.

sumcellf=0;

sumcellf=SUMSfera (cf);

double elit=0.0;

int fiks=0;

for (i = 0; i.

{.

if (cf[i]>elit).

{.

elit=cf[i];

fiks=i;

}.

}.

for (i=0; i.

{.

if (cf[i]<(sumcellf/m)).

{.

for (j=0; j.

{.

individ[i][j] = individ[fiks][j];

}.

}.

}.

for (int i = 0; i.

{.

cf[i]=0.0;

for (int j=0;j.

{.

cf[i]+=Sfera (individ[i][j]);

}.

}.

for (int i = 0; i.

{.

if (cf[i]>=delta).

{.

rez++;

}.

}.

if (ul[0]<=sumcellf).

{.

ul[0]=sumcellf;

ul[1]=0;

}.

else.

{.

ul[1]+=1;

}.

w++;

sumcellf=0;

sumsum=0;

if (rez<(int)(m*0.9)).

{.

rez=0;

}.

}.

while (rez<(int)(m*0.9));

std:cout<<" Результат найден!" <<" Количество итераций «<<»; Количество оптимальных особей «<

unsigned int end= clock (); // конечное время.

unsigned int search = end — start; // искомое время.

std:cout<<" Время выполнения расчетов: «<<<» сек" <

std:cout<<" Для продолжения нажмите Enter" <

getch ();

system («cls»);

return;

}.

double Sfera (double x).

{.

return 1/(1+(pow (x, 2)));

}.

double SUMSfera (double *a).

{.

double c=0.0;

for (i=0; i.

{.

c+=a[i];

}.

return c;

}.

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