Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Тапсырмасының программасының листингі






unit Critsec;

interface

uses

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

StdCtrls;

type

TForm1 = class(TForm)

Button1: TButton; ListBox1: TListBox; ListBox2: TListBox;

CheckBox1: TCheckBox;

procedure FormCreate(Sender: TObject);

procedure FormDestroy(Sender: TObject);

procedure Button1Click(Sender: TObject);

end;

var

Form1: TForm1;

crits: boolean;

sect1: TRTLCriticalSection;

global: word;

// 2 // hmut: thandle;

implementation

{$R *.DFM}

procedure TForm1.FormCreate(Sender: TObject);

begin

initializeCriticalSection(sect1);

// 2 // hmut: = createmutex(nil, true, nil);

end;

procedure TForm1.FormDestroy(Sender: TObject);

begin

DeleteCriticalSection(sect1);

//2// closehandle(hmut);

end;

function Thr1 (p: pointer): longint; stdcall;

var i, j: integer;

begin

form1.listbox1.items.clear;

for j: =1 to 12 do

begin

if crits then

EnterCriticalSection (sect1);

//2// waitforsingleobject(hmut, infinite);

sleep(10);

i: =global; i: =i+1;

form1.listbox1.items.add(intToStr(i));

global: =i;

if crits then

LeaveCriticalSection(sect1);

//2// releasemutex(hmut);

end;

end;

function Thr2 (p: pointer): longint; stdcall;

var i, j: integer;

begin

form1.listbox2.items.clear;

for j: =1 to 12 do

begin

if crits then

EnterCriticalSection (sect1);

//2// waitforsingleobject(hmut, infinite);

sleep(7);

i: =global; i: =i+1;

form1.listbox2.items.add(intToStr(i));

global: =i;

if crits then

LeaveCriticalSection(sect1);

//2// releasemutex(hmut);

end;

end;

procedure TForm1.Button1Click(Sender: TObject);

var thrid: dword;

thrh1, thrh2: thandle;

begin

global: = 100;

if CheckBox1.Checked then crits: = true

else crits: = false;

thrh1: =CreateThread(nil, 0, @Thr1, nil, 0, thrid);

thrh2: =CreateThread(nil, 0, @Thr2, nil, 0, thrid);

end;

end.

 

В қ осымшасы

Тапсырмағ а арналғ ан программа листингі

#include< process.h>

#include< iostream.h>

#include< errno.h>

#include< string.h>

#include< conio.h>

int main(char*argv[])

{clrscr();

char ch;

cout< < " to zadach1 - 1" < < endl;

cout< < " to zadach2 - 2" < < endl;

cout< < " to zadach3 - 3" < < endl;

cout< < " to quit - q" < < endl;

cin> > ch;

while(ch! ='q')

{switch(ch)

{case '1': execv(" task1.exe", argv);

case '2': execv(" task2.exe", argv);

case '3': execv(" 3.exe", argv);

case 'q': exit(1);

default: cout< < " net" < < endl; break; }}

//execv(@rever/exe@? argv)$

return 0; }

 

#include< iostream.h>

#include< math.h>

void main()

{float x, y; int i;

for(i=0; i< =20; i++)

{x=i*0.157;

y=sin(x);

cout< < x< < " " < < y< < endl; }

cout< < endl;

}

#include< iostream.h>

#include< math.h>

#include< iomanip.h>

void main()

{float x, y; int i;

for(i=0; i< =20; i++)

{x=i*0.157;

y=cos(x);

cout< < setw(5)< < setprecision(3)< < x< < setw(8)< < setprecision(3)< < y< < endl; }

cout< < endl;

}






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.