Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Ekzamen_KhIO_I_semestr_-_shpori.doc
Скачиваний:
1
Добавлен:
01.07.2025
Размер:
2.07 Mб
Скачать

4.Знаходження визначеного інтеграла методом Сімпсона

//---------------------------------------------------------------------------

#include <vcl.h>

#include<math.h>

#include <iostream.h>

#pragma hdrstop

#include "unit1.h"

//---------------------------------------------------------------------------

#pragma package(smart_init)

#pragma resource "*.dfm"

TForm1 *Form1;

double f(double x)

{

return (1/x*x)*(sin(x)/x);

}

double sum (int m, double x, double w)

{

double s=0;int i;

for (i=1;i<=m;i++)

{s=s+f(x);

x=x+w;}

return s;}

double F(double x)

{return -(cos(x)/x-cos(1));}

//---------------------------------------------------------------------------

__fastcall TForm1::TForm1(TComponent* Owner)

: TForm(Owner)

{

}

//---------------------------------------------------------------------------

void __fastcall TForm1::Button1Click(TObject *Sender)

{

float q,a,b,n,h;int k;

a=1;

b=2.5;

n=StrToFloat(Edit1->Text); // Кількість поділів

h=(b-a)/n;

q=(h/6)*(f(a)+f(b)+4*sum(n,a+h/2,h)+2*sum(n,a,h));

Edit2->Text=FloatToStr(q);

//перевірка

Edit3->Text=FloatToStr((F(b)-F(a)));

}

Білет 4

1.Логічні змінні. Логічні операції та вирази.

Логічний типи – булівські типи даних визначають такі дані, що можуть набувати логічних значень True i False: Boolean, ByteBool, WordBool, LongBool.

До булівських операндів застосовані такі логічні операції:

Not – операція побітового інвертування. Застосування її до цілого числа змінює кожен двійковий “0” цього числа на двійкову “1”, і навпаки.

and - логічна операція I. Виконується згідно з такими правилами :

Or – логічна операція Або. Виконуєтся згідно такими правилами:

Xor – логічна операція заперечення Або. Виконуєтся згідно такими правилами:

2.Умовні оператори мови С++ та їх відмінності від подібних операторів Delphi

Умовні оператори С++.

Умовний оператор

if (умова)

{блок з одного чи більше операторів}

Якщо умова вірна, то виконується блок з одного чи більше операторів

Другий, розширений варіант:

if (умова)

{ блок 1 з одного чи більше операторів }

else

{ блок 2 з одного чи більше операторів }

Якщо умова вірна, то виконується блок з одного чи більше операторів, а якщо не вірна, то блок 2.

Приклад 1.

if (a>b)

ans=10;

else

ans=25;

Якщо а>b, то змінна ans отримує значення 10, інакше - значення 25.

Приклад 2.

if ( age <18)

{

cout <<"Ви неповнолітній. \n";

cout <<"Введіть ваш вік";

cin>> grade;

}

Якщо змінна age<18 , то запитується вік і заноситься в змінну grade. ( Примітка: «\n» - керівний символ який здійснює перехід курсору на новий рядок)

Оператор switch

Оператор switch - оператор вибору.

Формат:

switch (вираз)

case (вираз 1):

блок з одного чи декількох операторів 1;

break;

case (вираз 2):

блок з одного чи декількох операторів 2;

break;

case (вираз З):

блок з одного чи декількох операторів 3;

break;

default:

блок з одного чи декількох операторів n;

break;

}

Оператор switch використовується замість деяких операторів if else.

Якщо вираз приймає значення виразу 1, то виконується блок з одного чи декількох операторів 1, Якщо вираз приймає значення виразу 2 , то виконується блок з одного чи декількох операторів 2, і т.д. Якщо вираз не співпадає ні з оди дим з виразів під номером, то виконується блок з одного чи декількох операторів n.

Строка default – є неообов’язковою! І може бути відсутньою.

Приклад 1.

// нарахування відсотків,

// kat – категорія рахунку, якщо категорія рахунку =1, то нараховується 20 %,

//якщо категорія рахунку =2, то - 17.5 %,

//в інших випадках нараховується 10 %

#include < iostream.h >

main()

{

int kat;

float s, proz;

cout <<"\nВведіть категорію рахунку ";

cin>> kat;

coot <<"\n Введіть суму "

cin>> s;

switch (kat)

{

case 1:

s*=1.2;

proz = s*.2;

break;

case 2:

s*=1.175;

proz =s*. 175;

break;

default:

s*=l.l;

proz= s*.l;

break;

}

cout <<"\n Нараховано " << proz ;

cout <<"\n В сумі " << s;

return 0;}

Відмінності опису умовних операторів у С++ і в Delphi.

Синтаксис Delphi:

if (умова) then begin

{блок з одного чи більше операторів}

end

else begin

{блок з одного чи більше операторів}

end;

Відмінності: 1. В С++ умову обов’язково потрібно брати в душки.

2. В Delphi рівність двох елементів позначається «=», а в С++ «==». Або – в Delphi «or» в С++ « || », і в Delphi «and» в С++ «&&» . Не – «not» , «!» .

3. В С++ немає операторів Then, Begin, End. Замість цього там виступають фігурні душки { } Оператор вибору в Delphi виглядає так:

case <змінна> of

<значення змінної 1>: {блок з одного чи більше операторів};

<значення змінної 2>:{блок з одного чи більше операторів};

<значення змінної n>:{блок з одного чи більше операторів};

else {блок з одного чи більше операторів};

end;

В Delphi після обрання варіанту виконається тільки набір операторів, який цьому варіанту відповідає. У С++ обравши і-тий варіант будуть виконуватися всі наступні варіанти, якщо це не зупинить brake.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]