русский

Мои программы

3112  1 2 3 4 alle
7495 коренной житель06.02.25 07:19
7495
NEW 06.02.25 07:19 
in Antwort AlexNek 05.02.25 19:39
обидно, когда человек не может научится работать с форумом.

Пожалели бы тех, кто в первых раз пришел, столько скроллировать и смотреть неформатированный код. Ну хоть бы так сделали, если нравиться мусор выкладывать


Если 77-летний дедулька начнёт форматировать тегами, тогда не только метрами скроллить придётся,


он тегами ГОРИЗОНТАЛЬНО страницу порвёт, пусть мусорит только в одной теме, всёравно старый.


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


Как можно сделать - распечатать в PDF и прикрепить к сообщению форума. Пример я прилепил внизу,


дальше, копируем из 1.PDF файла, обратно в текстовый файл, переименовываем в 1.HTML, обогащаемся.


Fragen und Antworten - Программируем калькулятор пособий для беженцев вместе.
#21 
7495 коренной житель06.02.25 07:25
7495
NEW 06.02.25 07:25 
in Antwort 7495 06.02.25 07:19

+


переводим .PDF в .txt, потом в .html, потом можно с любого браузера стартовать: https://7495.strana.de/proverka.html


в первом окошке адрес блокчейна, в последующие окошки адреса кошельков, думаю всё и так интуитивно понятно!




Fragen und Antworten - Программируем калькулятор пособий для беженцев вместе.
#22 
gendy Dinosaur06.02.25 07:26
gendy
NEW 06.02.25 07:26 
in Antwort 7495 06.02.25 07:04

откуда внучку знать что такое delphi7 ? Сейчас такое никто не использует.

Фашизм будет разбит


Человека карают только те боги, в которых он верит

#23 
7495 коренной житель06.02.25 07:34
7495
NEW 06.02.25 07:34 
in Antwort gendy 06.02.25 07:26
откуда внучку знать что такое delphi7 ? Сейчас такое никто не использует.


в посте #18, автор темы пишет "...Так для овладения языком Дельфи 7 достаточно месяца три."


а может всё бы иначе, пришел проведать деда, в шкафу пыльные учебники по дельфи и бейсику,


включил компьютер, там на старом пентиуме, тоже такие же листинги программ, копирует и постит.


Хотя всё может быть по другому, я же спросил, кто он по профессии, МАТЕМАТИК? ответа пока нет




Fragen und Antworten - Программируем калькулятор пособий для беженцев вместе.
#24 
AlexNek патриот06.02.25 18:23
AlexNek
NEW 06.02.25 18:23 
in Antwort 7495 06.02.25 07:19
Если 77-летний дедулька

Как ни странно у меня тоже знакомый "оттуда" на дельфи пишет, только ему уже лет 80.

#25 
Murr патриот06.02.25 18:54
Murr
NEW 06.02.25 18:54 
in Antwort gendy 06.02.25 07:26

иногда, однако, появляются вакансии с Дельфи.

Но вот среди рекрутеров точно нет понимающих отличия от СБилдер.

#26 
alex445 патриот06.02.25 20:15
NEW 06.02.25 20:15 
in Antwort 7495 06.02.25 07:04
обидно, когда человек не может научится работать с форумом, если нравиться мусор выкладывать

дедульке 77 лет, врядли он понимает как работает интернеты и форум, это его внучок балуется! зло

Реально похоже, будто старый ноут дедов откопал, а там пароли сохранённые. ))

#27 
alex445 патриот06.02.25 20:16
NEW 06.02.25 20:16 
in Antwort 7495 06.02.25 07:19

Если 77-летний дедулька начнёт форматировать тегами, тогда не только метрами скроллить придётся,

он тегами ГОРИЗОНТАЛЬНО страницу порвёт, пусть мусорит только в одной теме, всёравно старый.

Алекснек вроде не старый, но страницу горизонтально регулярно рвёт. И ничё - ценный специалист. ))

#28 
alex445 патриот06.02.25 20:17
NEW 06.02.25 20:17 
in Antwort 7495 06.02.25 07:25

переводим .PDF в .txt, потом в .html, потом можно с любого браузера стартовать: https://7495.strana.de/proverka.html

в первом окошке адрес блокчейна, в последующие окошки адреса кошельков, думаю всё и так интуитивно понятно!

Нихрена непонятно, как перевести в фургоны, доски и шоколадки.

#29 
AlexNek патриот06.02.25 21:56
AlexNek
NEW 06.02.25 21:56 
in Antwort alex445 06.02.25 20:16
но страницу горизонтально регулярно рвёт

моники у вас малые бебе

А ничего не видно при вводе - скокпастил - нормально спок

#30 
7495 коренной житель07.02.25 07:10
7495
NEW 07.02.25 07:10 
in Antwort alex445 06.02.25 20:17


переводим .PDF в .txt, потом в .html, потом можно с любого браузера стартовать: https://7495.strana.de/proverka.html

в первом окошке адрес блокчейна, в последующие окошки адреса кошельков, думаю всё и так интуитивно понятно!


Нихрена непонятно, как перевести в фургоны, доски и шоколадки.


Я тебе ещё ТРИ ГОДА назад рассказывал, когда ты ещё всё сравнивал с Новосибирском, сырки просроченные из пальмового масла...


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


Итак, копируешь из .pdf код в .txt файл, потом переименовываешь в .html, до этого момента понятно? а потом в любом магазине:


карточку достал - шоколадку оплатил, или в салоне последней модели теслу, зашел, оплатил, уехал, в чём собственно сложности?





Fragen und Antworten - Программируем калькулятор пособий для беженцев вместе.
#31 
7495 коренной житель07.02.25 07:15
7495
NEW 07.02.25 07:15 
in Antwort 7495 07.02.25 07:10

это банковская карточка от бинанцы (криптобиржи), если кто не понял...

Fragen und Antworten - Программируем калькулятор пособий для беженцев вместе.
#32 
alex445 патриот07.02.25 18:58
NEW 07.02.25 18:58 
in Antwort 7495 07.02.25 07:10
карточку достал - шоколадку оплатил, или в салоне последней модели теслу, зашел, оплатил, уехал, в чём собственно сложности?

А у вас какая машина?

#33 
alek4 старожил07.02.25 23:04
NEW 07.02.25 23:04 
in Antwort alek4 31.01.25 14:13, Zuletzt geändert 07.02.25 23:14 (gendy)

ПРОГРАММА «Простые 2»

ОГЛАВЛЕНИЕ

1. Общее

2. Математика

3. Вывод

4.Анализ результатов

5.Скачать программу «Простые 2»

Приложение 1

Распечатка программы «Простые 2»

1. Общее

В программе «Простые 1» исследован многочлен a*x*x +b*x +cв части генерации простых чисел.

Коэффициенты задаются.

В скатерти Улама по диагонали значения этого многочлена при разных последовательностях x.

Для трёх значений предполагаемого многочлена d1, d2, d3 при x1, x2, x3 можно отыскать значениякоэффициентов

a, b, c.

2. Математика

Для

x1 =1

x2 = 2

x3=3

коэффициенты находятся по формулам

d:=((k3-2*k2+k1) Mod 2 ) ;

If (d>0) then

fa:=111else

begin

a:= (k3-2*k2+k1)div 2;

b:= k2-k1-3*a;

c:= k1-a-b;

end;

d:=((k6-2*k5+k4) Mod 2 ) ;

If (d>0) then

fb:=222else

begin

a1:= (k6-2*k5+k4)div 2;

b1:= k5-k4-3*a;

c1:= k4-a-b;

end;

Продолжение расчётов, если коэффициенты целые числа.

Если коэффициенты дробные, выводятся соответственно для многочленов № 1 и № 2:

fa =111 иfb=222.

Дальнейшие вычисления те же, что и в Программе «Простые 1».

3. Вывод

Вывод тот же, что в программе «Простые 1».

Дополнен выводом чисел fa иfb.

4.Анализ результатов

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

5.Скачать программу «Простые 2»

https://disk.yandex.ru/d/M3YYAVqN3TQuQQ

Приложение 1

Распечатка программы «Простые 2»

uses

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

Dialogs, Grids, StdCtrls;

type

TForm1 = class(TForm)

Button1: TButton;

Button5: TButton;

Label1: TLabel;

StringGrid2: TStringGrid;

StringGrid3: TStringGrid;

Edit1: TEdit;

Label2: TLabel;

Label4: TLabel;

Label5: TLabel;

Edit2: TEdit;

Edit3: TEdit;

Edit4: TEdit;

Label3: TLabel;

Label6: TLabel;

Label7: TLabel;

Label8: TLabel;

Label9: TLabel;

Label10: TLabel;

procedure Button1Click(Sender: TObject);

procedure Button5Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form1: TForm1;

implementation

{$R *.dfm}

const

n =20000;// число вычмислений значений многочленов

// k1 =1499;

//k2=1657;

//k3=1823;

k1 =3463;

k2=3701;

k3=3947;

//fb=222

//k4=2;

//k5=3;

//k6=17;

k4=1823;

k5= 1997;

k6= 2179;

var

Tick: Cardinal;

s1:array [1..n] of integer;// значения многочлена № 1

s2:array [1..n] of integer;//1 -простое число, 0 - составное число

//многочлен № 1

s3:array [1..n] of integer;// значения многочлена № 2

s4:array [1..n] of integer;// 1 -простое число, 0 - составное число

//многочлен № 21

s5:array [1..n] of integer;// простые числа натурального ряда

s6:array [1..n] of integer;//составные числа нарурального ряда

s7:array [1..n] of integer;//ряд простых чисел

s8:array [1..50] of integer;// сравнение максимальных

//цепей простых чисел в многочленах№1 и №2

r,w, w1, w2, k,f,g, h, ha,q,i,j : integer; //

j1,j2,j3,j4,j5,j6,j7,j8,i2,i1, i3,i4,i5,i6,i7,i8,i9,i0, l: integer; //

x1, x2, z,z1, z2, z3, z4,z5, z6,z7, v,v1,v2, e: integer;//

m, m1, m2, mm, a2,m3,m4,m5 ,vv: integer;//

y, y1, y2,y3, d, p, s, t, u1,u2 , p1, t1, u3,u4 :integer;//

h1,h2,h3: variant;//

n1, n2, n3,n4: cardinal;//

d1, d2, d3, d4: variant;//

a, b, c, a1, b1, c1, fa, fb:integer;//

// Функция нахождения простых чисел

// По книгеЖуков "Программируем в Delphi"

function good(Numb:integer):boolean;

var

i:integer;

begin

Form1.Caption:=IntToStr(GetTickCount-Tick);

good:= true;

for i:=2 to Trunc(Sqrt(Numb)) do

if (Numb mod i) =0then

begin

good := false;

exit;

end; end;

procedure TForm1.Button1Click(Sender: TObject);

// окантовка

begin

Form1.Caption:=IntToStr(GetTickCount-Tick);

for q:=1 to n //нумерация по горизонтали в табл №1 ,

do StringGrid2.Cells[q,0]:=IntToStr(q);

for q:=1 to n// нумерация по вертикалив табл №1 ,

doStringGrid2.Cells[0,q]:=IntToStr(q);

// Вычисление коэффициентов многочлена

d:=((k3-2*k2+k1) Mod 2 ) ;

If (d>0) then

fa:=111else

begin

a:= (k3-2*k2+k1)div 2;

b:= k2-k1-3*a;

c:= k1-a-b;

end;

d:=((k6-2*k5+k4) Mod 2 ) ;

If (d>0) then

fb:=222else

begin

a1:= (k6-2*k5+k4)div 2;

b1:= k5-k4-3*a;

c1:= k4-a-b;

end;

////////////////// a b c

//////////////////////////////////

if fa=0 then begin

for i:=1 to ndo

begin

Form1.Caption:=IntToStr(GetTickCount-Tick);

s1:=(a*i*i + b*i + c);

if s1<=0 then begin v:=i; break

end; end;

for j:= 1 to N dobegin

IF S1[j]> 0 then

if good (s1[j]) then

begin

Form1.Caption:=IntToStr(GetTickCount-Tick);

s2[j]:=1 ; z1:= z1+1; end

elsebegin s2[j]:=0;z2:= z2+1;

end;end;

// простые - многочлен № 1

for i:=1 to n dobegin

if s2=1 then m:=m+1 ;

if s2 =0 then begin

if m>w then

beginw:=m;j1:= i-1;end;

m:=0

end;

end;

//end;

j2 := j1-w+1;

//составные - многочлен № 1

for i:=1 to n dobegin

if ((s2[i-1] =1) and(s2 =0)) then y1 := i ;

if s2=0 thent:=t+1 ;

if s2 =1 then begin

if t>s then

begins:=t; u1:= i-1;end;

end;

if s2 =1 then t:=0;

end;

u2 := u1-s+1;

end;

///////////a1 b1 c1

if fb =0 then begin

for i:=1 to ndo

begin

Form1.Caption:=IntToStr(GetTickCount-Tick);

s3:=(a1*i*i+ b1*i+ c1);

if s3<=0 then begin v1:=i; break

end; end;

for j:= 1 to N dobegin

Form1.Caption:=IntToStr(GetTickCount-Tick);

IF S3[j]> 0 then

if good (s3[j]) then

begin

s4[j]:=1 ; z3:= z3+1; end

elsebegin s4[j]:=0;z4:= z4+1;

end;end;

m1:=0;

for i:=1 to n dobegin//простые- многгочлен № 2

if s4=1 then m1:=m1+1 ;

if s4 =0 then begin

if m1>w1 then

begin w1:=m1;j3:= i-1;end;

m1:=0

end;

end;

j4 := j3-w1+1;

//составные- многочлен № 2

for i:=1 to n dobegin

if ((s4[i-1] =1) and(s4 =0)) then y2 := i ;

if s4=0 then t1:=t1+1 ;

if s4 =1 then begin

if t1>d then

begind:=t1;u3:= i-1;t1:=0; end;

if s2 =0 then t1 :=0;

end;

end;

u4 := u3-d+1;

end;

/////////////////////////////натуральный ряд чисел

for j:= 1 to N dobegin

if good (j) then

begin

s5[j]:=j ; z5:= z5+1; end

elsebegin s6[j]:=j;z6:= z6+1;

end;end;

m2:=0;

// натуральный ряд составные числа

for i:=1 to n dobegin

if ((s5[i-1] >0) and(s6 >0)) then y3 := i ;

if s5=0 then m2:=m2+1 ;

if s5 >0 then begin

Form1.Caption:=IntToStr(GetTickCount-Tick);

if m2>w2 then

beginw2:=m2;j5:= i-1;end;

m2:=0

end;

end;

j6 := j5-w2+1;

// ряд простых числел

for j:= 1 to N do

if good (j) then

begin

z7:= z7+1; s7[z7]:=j end;

// частное простых и всех чисел

h1 := z1/n;//многочлен № 1

h2 := z3/n;//многочлен № 2

h3:= z5/n; // ряд натуральных чисел

for i:= 1 to n do

n1 := n1 + s1;

for i:= 1 to n do

n2 := n2 + s3;

for i:= 1 to n do

begin

if s5>0 then n3 := n3+s5;

if s6>0 then n3 := n3+s6;

end;

for i:= 1 to n do

n4 := n4 + s7;

d1 :=n1/n;

d2 :=n2/n;

d3 :=n3/n;

d4 := n4/z7;

for i:= j2 to j1 do

for j:= j4to j3 do

ifs1 = s3[j] then s8 :=s1 ;

//////////////////////////

for i:=1 to ndobegin

StringGrid2.Cells[i,1]:=

IntToStr( s1);

StringGrid2.Cells[i,2]:=

IntToStr( s2);

StringGrid2.Cells[i,4]:=

IntToStr( s3);

StringGrid2.Cells[i,5]:=

IntToStr( s4);

ifs5=0 then

StringGrid2.Cells[i,7]:= '-';

ifs5>0 then

StringGrid2.Cells[i,7]:=IntToStr(i);

ifs5>0 then

StringGrid2.Cells[i,8]:= '-';

ifs5=0 then

StringGrid2.Cells[i,8]:=IntToStr( i);

IntToStr( s6);

StringGrid2.Cells[i,10]:=

IntToStr( s7);

// выоод простых чисел с 41

// if s7>=41 then

// StringGrid2.Cells[i-13,10]:=

// IntToStr( s7);

StringGrid2.Cells[i,10]:=

IntToStr( s7);

end;

for i:=1 to 50do

if i<=w then

StringGrid2.Cells[i,12]:=

IntToStr( s8)

else StringGrid2.Cells[i,12]:='-';

Edit1.Text :=

'a='+' '+IntToStr(a)+''+

'b='+' '+IntToStr(b)+''+

'c='+''+IntToStr(c)+''+

'v='+''+IntToStr(v)+''+

'z1='+''+IntToStr(z1)+''+

'z2='+''+IntToStr(z2)+''+

'w='+''+IntToStr(w)+''+

'm='+''+IntToStr(m) +''+

'j1='+''+IntToStr(j1) +''+

'j2='+' '+IntToStr(j2) +''+

's='+''+IntToStr(s) +''+

't='+''+IntToStr(t)+''+

'u1='+''+IntToStr(u1) +''+

'u2='+' '+IntToStr(u2) +''+

'y1='+' '+IntToStr(y1) +''+

's2[n]='+' '+IntToStr(s2[n]) +''+

'd1='+' '+FormatFloat('0.00000',d1) +''+

'h1='+' '+FormatFloat('0.00000',h1);

Edit2.Text :=

'a1='+''+IntToStr(a1)+''+

'b1='+' '+IntToStr(b1)+''+

'c1='+''+IntToStr(c1)+''+

'v1='+''+IntToStr(v1)+''+

'z3='+''+IntToStr(z3)+''+

'z4='+''+IntToStr(z4)+''+

'w1='+''+IntToStr(w1)+''+

'm1='+''+IntToStr(m1) +''+

'j3='+''+IntToStr(j3) +''+

'j4='+' '+IntToStr(j4)+''+

'd='+''+IntToStr(d) +''+

't1='+''+IntToStr(t1)+''+

'u3='+''+IntToStr(u3) +''+

'u4='+' '+IntToStr(u4) +''+

'y2='+' '+IntToStr(y2) +''+

's4[n]='+' '+IntToStr(s4[n]) +''+

'd2='+' '+FormatFloat('0.00000',d2)+''+

'h2='+' '+ FormatFloat('0.00000',h2);

Edit3.Text :=

'v2='+''+IntToStr(v2)+''+

'z5='+''+IntToStr(z5)+''+

'z6='+''+IntToStr(z6)+''+

'w2='+''+IntToStr(w2)+''+

'm2='+''+IntToStr(m2) +''+

'j5='+''+IntToStr(j5) +''+

'j6='+''+IntToStr(j6) +''+

'y3='+''+IntToStr(y3) +''+

's5[n]='+' '+IntToStr(s5[n]) +''+

'd3='+' '+FormatFloat('0.00000',d3)+''+

'h3='+''+FormatFloat('0.00000',h3);

Edit4.Text :=

'n4='+''+IntToStr(n4) +''+

'z7='+''+IntToStr(z7) +''+

'd4='+' '+FormatFloat('0.00000',d4)+''+

'fa='+''+IntToStr(fa) +''+

'fb='+''+IntToStr(fb) ;

end;

////////////////////////////////////////////////////////////////

procedure TForm1.Button5Click(Sender: TObject);

begin

close

end;

initialization

randomize;

end.

#34 
gendy Dinosaur07.02.25 23:22
gendy
NEW 07.02.25 23:22 
in Antwort Murr 06.02.25 18:54
иногда, однако, появляются вакансии с Дельфи.Но вот среди рекрутеров точно нет понимающих отличия от СБилдер.

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

Вот так до знакомства с этой программой дело так и не дошло, всё другие проекты были.

Фашизм будет разбит


Человека карают только те боги, в которых он верит

#35 
AlexNek патриот07.02.25 23:30
AlexNek
NEW 07.02.25 23:30 
in Antwort alek4 07.02.25 23:04

ну Вы русский язык то хоть понимаете!!!

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

#36 
Murr патриот08.02.25 00:23
Murr
NEW 08.02.25 00:23 
in Antwort AlexNek 07.02.25 23:30

Да оставь - пусть постит.

Напостися - успокоится.

Вот что было бы полезно - написать Фри чтобы добавили обрезку и опцию "море"...

#37 
Murr патриот08.02.25 00:25
Murr
NEW 08.02.25 00:25 
in Antwort gendy 07.02.25 23:22

У нас не такие продвинутые шефы... и совсем мало тех кто программил на дельфях/сбилдере...

#38 
AlexNek патриот08.02.25 11:32
AlexNek
NEW 08.02.25 11:32 
in Antwort Murr 08.02.25 00:23
Да оставь - пусть постит.

Да, похоже случай клинический, научить делать вложение или форматирование кода не получится хммм

Ну может, хоть код шарить научится

https://www.tutorialspoint.com/compile_pascal_online.php

https://www.jdoodle.com/execute-pascal-online

#39 
alek4 старожил08.02.25 13:18
NEW 08.02.25 13:18 
in Antwort alek4 31.01.25 14:13

«Моделирование отбора длялокусов в разных хромосомах»

||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||

Скачать текст

https://disk.yandex.ru/i/SV4Ke8iYp8NYGg

Программа:

«Моделирование отбора длялокусов в разных хромосомах»

Вступление

Приводится описание программы моделирования одного гипотетического

варианта естественного отбора: Мутации в двух хромосомах.

1. Естественный отбор

По Дарвину особи с полезными признаками, дают больше потомства.

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

По Дарвину это и есть положительный отбор. Имеются в виду признаки, полученные при мутациях и передающиеся по наследству. Понятие альтруизма здесь не рассматривается. Наследование генов альтруизма рассмотрено в ветви: АЛЬТРУИЗМ. Генетика конкретизировала основу понятия «признак» - гены. Основные определения по генетике в приложениях 1 - 6. Каждый признак определяется определенным геном или комбинацией генов. Гены поразличным причинаммутируют. Мутация определенного гена порождает аллели этого гена.

А, следовательно, и новые признаки организма. Естественный отбор может происходить по разным вариантам.

Вариант 1. Гены мутируют. Последствия мутаций в одном гене могут быть: положительные, отрицательные и нейтральные. Положительные мутации в процессе сохраняютсявсё большего числа особей. Отрицательные мутации «вымываются».

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

]2. Цель программы

В программе «Моделирование естественного отбора длялокусов в разных хромосомах» изучается ситуация. Некие существа размножаются половым путем. Для определенности: «мужчины» и «женщины». Название условное. Могут быть и кузнечики. От перемены местами мужчин и женщин задача не меняется. Сделано гипотетическое допущение. Особь, у которой в определенных хромосомах в заданных локусах расположенызаданные гены из списка аллель генов,получает преимущество перед другими особями: меньше вероятность смерти. Такие особи получают условное название: особи с геномом плюс(+). Моделируется половой процесс с обменом хромосом между родителями при зачатии. Выясняется, сколько должно произойти рождений и смертей, для преобладания в сообществе особей с геномом плюс.

Две хромосомы 1 и 2, одинаковы для мужчин и женщин.

Гены в хромосоме 1: x1 и x2.

Гены в хромосоме 2: y1 и y2.

Аллели генов x1 и x2: 1,2…,.c

Аллели генов y1 и y2: 1,2…,.c

Гены в хромосомах 1 и 2 различны.

В конкретной программе особыс аллелеями:

x1 = 1

x2 = 1

y1 = 2

y2 = 2

Названы особями с геномом +.

Они имеют меньшую вероятность смерти.

То есть могут за «жизнь» произвести больше потомства.

В исходном состоянии задается некоторое множество мужчин и женщин.

Мужчин p3, женщинp4.

Для первой позиции (особи) в соответствующем массиве задается геном +.

Для остальных геном случайно.

Далее имитируется процесс размножения.

До достижения количества мужчин и женщин соответственно: p1 и p2.

В примере программы

p1 = p2

p3 = p4

]3. Формат программы.

Программа составлена на DELPHI 7. Ввод исходных данных непосредственно в тексте программы. Для работы с программой необходимо установить DELPHI 7.

Скачать программу A-2chr

https://yadi.sk/d/42DrSMFQfcv8x

]3. Биологическая интерпретация

Программа имеет следующую биологическую интерпретацию.

На необитаемом острове появилась популяция из p3 – «мужчин» и p4 – «женщин».

Один мужчина и одна женщина имеют геном +.

Данный геном уменьшает вероятность смерти.

Популяция может из-за ограниченных ресурсов увеличить численность только до p1 – «мужчин» и p2 – «женщин».

Другой вариант вымереть.

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

Задано ограничение на число лет существования популяции - kk

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

4. Алгоритм

Алгоритм состоит из следующих блоков.

БЛОК ОКАНТОВКИ ТАБЛИЦ

БЛОК СУПЕРЦИКЛА

БЛОК СМЕРТЬ +РОЖДЕНИЕ

БЛОК СМЕРТЬ

БЛОК РОЖДЕНИЕ

БЛОК ВЫВОДА

]4.1. БЛОК ОКАНТОВКИ ТАБЛИЦ

Проставка номеров строк и столбцов

4.2. БЛОК СУПЕРЦИКЛА

В ходе суперцикла повторяется:

БЛОК СМЕРТЬ+РОЖДЕНИЕ

.

Смысл суперцикла.

Данные по выполнению БЛОК СМЕРТЬ+РОЖДЕНИЕ

имеют большой вероятностный разброс.

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

4.3. БЛОК СМЕРТЬ+РОЖДЕНИЕ

Поочередно выполняются:

БЛОК СМЕРТЬ

БЛОК РОЖДЕНИЯ

Ограничениями служат:

Максимальное число мужчин – константа p1;

Максимальное число женщин – константа p2;

Заданное число итераций – константаkk.

Используется цикл while

4.4. БЛОК СМЕРТИВ ходе выполнения этого блока поочередно сканируются массивы мужчин и женщин.

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

Для особей с геномом + устанавливается меньшая вероятность смерти.

Число проведения итераций БЛОК СМЕРТИ задается.

Константа t.

4.4. БЛОК РОЖДЕНИЯВ ходе выполнения БЛОК РОЖДЕНИЯ вначале определяется число рождений.

Если число мужчин превышает число женщин, число рождений задается долей от числа мужчин.

В противном случае число рождений- доля от числа женщин.

Рождение мужчины или женщины случайно.

Далее случайным образом выбирается пара мужчина – женщина.

Далее имитируется рождение новой особи.

Генотип определяется в соответствии с законом Менделя.

4.5. Исходные данные

Исходные данные (const) вводятся непосредственно в тексте программы.

5. Массивы и переменные

Основныемассивы. Массив исходных мужчин u1[1..k,1..p3,1..2], где: k – число пар гомологичных хромосом, комбинации которых исследуются. p3 – число мужчин на старте программы. Позиции 1 и 2 соответствуют аллелям гена в гомологичных хромосомах.

Все аллели гена для заданного локуса пронумерованы

от 1 до с.

Принято: число аллель генов для всех локусов одинаково. Константа c задается в исходных данных.

Задается также массив u2[1..k,1..p4,1..2].

Где p4 число женщин.

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

В тексте программы задаются особи с геномом плюс.

В данном варианте программы по одной особи на позиции № 1.

В ходе выполнения программы преобразуются массивы

ua[1..k,1..p3,1..2] и ub[1..k,1..p3,1..2], соответственно мужчины и женщины.

6. БЛОК ВЫВОДА

6.1 Общее

Выводятся данные следующего вида:

А) Усредненные данные по всем итерациям суперцикла.

Б) Данные по первым 20 итерациям суперцикла

В) Данные по заданной итерации № ss суперцикла.

+.1. Данные по совокупности суперцикла

Дано в разделе 7.

6.2. Данные по 20 итерациям суперцикла:

Вывод массивы v[1..20], m[1..20] и d[1..20] соответственно для каждой итерации итог: число мужчин с геномом плюс, число мужчин и число незаполненных ячеек в массиве ua[1..20], то есть число потенциально возможных мужчин.

6.3. Данные по заданной итерации суперцикла

Смотреть по тексту программы

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

Предусмотрен вывод:

a: integer; // сумма мужчин за суперцикл

l: integer; // сумма отсутствия мужчин за суперцикл

v: integer; // сумма мужчин с геномом плюс за суперцикл

b: currency; // среднее число мужчин за суперцикл

l1: currency; //среднее число отсутствия мужчин за суперцикл

w: currency; среднее число мужчин с геномом плюс за суперцикл

g: currency; //за супер цикл. Отношение числа мужчин с геномом плюс к общему числу мужчин

g1: currency; // за супер цикл. Отношение числа мужчин с геномом плюс к потенциальномучислу мужчин

aa: integer; // сумма женщин за суперцикл

y1: integer; // сумма отсутствия сумма отсутствия женщин за суперциклза суперцикл

vv: integer; // сумма женщин с геномом плюс за суперцикл

1bb: currency; // среднее число женщин за суперцикл

yy: currency; // среднее число отсутствия женщин за суперцикл

ww: currency; // среднее число женщин с геномом плюс за суперцикл

gg: currency; //за супер цикл. Отношение числа женщин с геномом плюс к общему числу женщин

gg1: currency; // за супер цикл. Отношение числа женщин с геномом плюс к потенциальномучислу женщин

gg2: integer; //число циклов суперцикла без вымирания для мужчин

gg3: integer; //число циклов суперцикла без вымирания для мужчин

r1: currency; //за суперцикл. Число циклов без вымирания для мужчин к общему числу циклов

r2: currency; //за суперцикл. Число циклов без вымирания для женщин к общему числу циклов

Имеются три варианта счета:

А) Вымирание: обнуление массивов ua[1..k,1..p1,1..2]и ub[1..k,1..p2,1..2] .

Б) Число элементов массивов ua[1..k,1..p1,1..2]и ub[1..k,1..p2,1..2] с геномом плюс в ходе расчётов существенно не изменились.

В) Число элементов массивов ua[1..k,1..p1,1..2]и ub[1..k,1..p2,1..2] с геномом плюс в ходе расчётов существенно увеличилось.

Интересен вариант В.

Иллюстрация эволюции.

Пример.

Исходные данные:

t = 1;// Число циклов смертей

kk = 1;// допустимое число циклов в основном цикле

p1 =2000;// Число мужчин- конечное(не более)

p2 = 2000; // Число женщин- конечное(не более)

p3 = переменная;//начальное число мужчин

p4 =переменная;//начальное число женщин

принято

p3 =p4

ff=5; // 1критерий для определения вероятностейсмерти

o3 = 2 ;//числодля расчёта рождений за цикл размножения (рождений) // наo3 делится числомужчин (женщин в текущий момент расчета)

fff = 20; // длярасчёта случайной величиныпри определении вероятности// смерти мужчин и женщин вне генома плюс

rr = 40 ; // для расчёта случайной величиныпри определении вероятности// смерти мужчин и женщин c геномом плюс

k = 2; // число независимо наследуемых генов

// размещены в неголомогичных хромосомах

c = 5; //число независимо наследуемых генов в расчете

sss =100; // число суперциклов

Ниже вывод для

p3 =p4: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 15, 20, 25, 30

b: currency; // среднее число мужчин за суперцикл

w: currency; среднее число мужчин с геномом плюс за суперцикл

g: currency; // за супер цикл. Отношение числа мужчин с геномом плюс к общему числу мужчин

g1: currency; // за супер цикл. Отношение числа мужчин с геномом плюс к потенциальномучислу мужчин

r1: currency; //за суперцикл. Число циклов без вымирания для мужчин к общему числу циклов

0

Результаты счёта

p3= p41bwgg1r1

1---891,26---891,26---1---0,4456---0,77

2---752,65---714,11---0,9487---0,3571---0,725

3---537,235---532,585---0,9913---0,2663---0,68

4---372,075---366,135---0,984---0,1831---0,645

5---265,49---261,89---0,9864---0,1309---0,6

6---220,29---219,275---0,9954---0,1096---0,53

7---173,2---172,055---0,9984---0,086---0,5

8---260,415---259,295---0,9957---0,1296---0,525

9---200,31---199,03---0,9936---0,0995---0,55

10---194,4---192,9---0,9923---0,0964---0,585

15---142,38---140,67---0,988---0,0703---0,6

20---99,335---97,59---0,9824---0,0488---0,58

25---111,91---109,55---0,9789---0,0548---0,56

30---142,3---139,8---0,9825---0,0699---0,58

35---88,395---86,355---0,5769---0,0432---0,59

40---93,26---90,495---0,9704---0,0452---0,58

50---95,885---92,33---0,929---0,0462---0,67

60---48,495---44,28---0,9131---0,221---0,695

70---86,67---80,21---0,9255---0,0401---0,759

80---80,27---71,505---0,8908---0,0358---0,79

90---34,945---24,325---0,691---0,0122---0,835

100---51,1---33,48---0,6552---0,0167---0,89

150---47,545---11,28---0,2372---0,0056---0,97

200---72,07---11,405---0,1582---0,0057---1

250---110,35---11,99---0,1087---0,006---1

300---144,59---10,45---0,0723---0,0052---1

|||||||||||||||||||||||||||||||||||||||||||||||||

Приложение 1

Основные принципы

Организм состоит из клеток. В клетках ядра. В ядрах хромосомы. Наборы хромосом почти во всех клетках одинаковы. Исключения половые клеткии красные кровяные тельца. Общее название совокупности хромосом – генотип организма. Каждая хромосома последовательность генов. Каждый ген кодирует определенную функцию организма. Например, синтез белка. Местоположения генов в хромосоме называется локусами. Вариантывариантов генов длякакого-либо локуса хромосомы носит название – аллеля. В диплоидном организме хромосомы образуют гомологичные пары. В хромосомах - гомологах местоположение локусов совпадают.

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

Ниже они не рассматриваются. В одинаковых локусах хромосом - гомологов содержатся гены из списка аллель генов для данного локуса. Набор хромосом определяет построение и функции организма. Используется термин – фенотип. Фенотип определяется всеми хромосомами. В результате сложного процесса размноженияу потомка каждая пара хромосом гомологов состоит из одной хромосомы отца и из одной хромосомы матери. Множество пар хромосом сохраняется. Выбор одной из двух гомологичных хромосом родителей для потомка происходит случайным образом с вероятностью 0,5.

||||||||||||||||||||||||||||||||||||||||||

Приложение 2.

Законы комбинации аллелей при размножении в http://tigrasp.narod.ru/s-g3.html

||||||||||||||||||||||||||||||||||

Приложение 3

http://ru.wikipedia.org/wiki/Локус в биологии означает фиксированное положение (локализацию) на хромосоме, например, положение гена. Вариант последовательности ДНК в данном локусе называется аллелью. Упорядоченный перечень локусов для какого-либо генома называется генетической картой. Генное картирование — это определение локусa для специфического биологического признака.

Диплоидные или полиплоидные клетки, которые несут одинаковые аллели на каком-либо локусе называются гомозиготными по этому локусу, а те, которые несут различные аллели — гетерозиготными.

||||||||||||||||||||||||||||||||||||||||||||||||||Приложение 4

http://ru.wikipedia.org/wiki/

Изучением генов занимается наука генетика, родоначальником которой считается Грегор Мендель, который в 1865 году опубликовал результаты своих исследований о передаче по наследству признаков при скрещивании гороха. Сформулированные им закономерности впоследствии назвали Законами Менделя.….В настоящее время, в молекулярной биологии установлено, что гены — это участки ДНК, несущие какую-либо целостную информацию — о строении одной молекулы белка или одной молекулы РНК. Эти и другие функциональные молекулы определяют развитие, рост и функционирование организма.

||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||

]Приложение 5

http://dic.academic.ru/dic.nsf/enc_medicine/33962/Хромосомы

Хромосомы

(греч. chrōma цвет, окраска + sōma тело) основные структурно-функциональные элементы клеточного ядра, содержащие гены. Название «хромосомы» обусловлено их способностью интенсивно окрашиваться основными красителями во время деления клетки. Каждый биологический вид характеризуется постоянством числа, размеров и других морфологических признаков X. Хромосомный набор половых и соматических клеток различен. В соматических клетках содержится двойной (диплоидный) набор Х. который можно разделить на пары гомологичных (идентичных) хромосом, сходных по величине и морфологии. Один из гомологов всегда отцовского, другой— материнского происхождения. В половых клетках (гаметах) эукариот (многоклеточных организмов, в т.ч. человека) все хромосомы набора представлены в единственном числе (гаплоидный хромосомный набор). В оплодотворенной яйцеклетке (зиготе) гаплоидные наборы мужских и женских гамет объединяются в дном ядре, восстанавливая двойной набор хромосом. У человека диплоидный хромосомный набор (кариотип) представлен 22 парами хромосом (аутосом) и одной парой половых хромосом (гоносом). Половые хромосомы различаются не только по составу содержащихся в них генов, но и по своей морфологии. Развитие из зиготы женской особи определяет пара половых хромосом, состоящая из двух Х-хромосом, то есть ХХ-пара, а мужской — пара, состоящая из X-хромосомы и У-хромосомы, — то есть ХУ-пара.

||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||

Приложение 6

http://dic.academic.ru/dic.nsf/enc_psyc … оминантные

Доминантные и рецессивные гены (genetic dominance and recessiveness)

По иронии судьбы, о наследственности животных нам известно гораздо больше, чем о наследственности чел. Наследственность является результатом комбинаций генов. Гены — это биохимические функциональные элементы хромосом, определяющие потенциальный пол и др. признаки у зародыша. Хромосомы представлены парами в ядре каждого сперматозоида и каждой яйцеклетки. У чел. имеется 23 пары, или 46 хромосом, причем одну пару называют половыми хромосомами, потому что они определяют пол будущего организма. Клетки женского организма несут две Х-хромосомы, тогда как клетки мужского содержат одну Х- и одну Y-хромосому. Y-хромосома мельче по размеру и содержит меньше генов на своей поверхности, чем Х-хромосома.

В результате клеточного деления в яичниках все яйцеклетки содержат одну Х-хромосому, тогда как клеточное деление в яичках приводит к тому, что половина сперматозоидов содержит Х-хромосому, а др. их половина — Y-хромосому. Т. о., в половине случаев челов. яйцеклетка оплодотворяется сперматозоидами, несущими Х-хромосому, и еще в половине — сперматозоидами, несущими Y-хромосому, так что половина рождающихся в популяции детей должна бы иметь мужской пол, а половина — женский. (Мальчиков все же рождается чуть больше, но среди них и смертность выше, а потому соотношение полов быстро уравнивается; по мере того как дети становятся старше, соотношение полов сдвигается в сторону преобладания представительниц женского пола вследствие большей устойчивости женского организма к болезням.) ………………..X. К. Финк

#40 
1 2 3 4 alle