§ 2. Арганізацыя вылічэнняў

2.2. Рашэнне задач

Прыклад 2.2. Напішыце праграму для рашэння геаметрычнай задачы. Зададзены квадрат з даўжынёй стараны a. Знайсці яго плошчу і даўжыню дыяганалі.

Этапы выканання задання

I. Зыходныя даныя: пераменная  (даўжыня стараны).

II. Вынік: пераменныя (плошча) і  (даўжыня дыяганалі).

III. Алгарытм рашэння задачы.

1. Увод зыходных даных.
2. Вылічэнне значэнняў плошчы выконваецца па формуле S = a2 даўжыні дыяганалі — па формуле d = begin mathsize 18px style space straight a square root of 2 end style.
3. Вывад выніку.

IV. Апісанне пераменных: a, s, d — double.

Прыклад 2.3. Напішыце праграму для рашэння фізічнай задачы.

Хлопчык, які стаіць на беразе, кідае ў возера каменьчык. Пункт кідання знаходзіцца на вышыні h над паверхняй вады. Пачатковая скорасць каменьчыка v0 накіравана гарызантальна. Каменьчык падае ў ваду на адлегласці l ад берага. Вызначыце модуль пачатковай скорасці каменьчыка і модуль скорасці, з якой ён увайшоў у ваду.

Этапы выканання задання

I. Зыходныя даныя: пераменныя h і l (вышыня над паверхняй вады і адлегласць ад берага).

II. Вынік: пераменныя v0 і v (пачатковая скорасць і скорасць, з якой каменьчык увайшоў у ваду).

III. Алгарытм рашэння задачы.

1. Увод зыходных даных.

2. Каменьчык удзельнічае адначасова ў двух рухах: раўнамерным са скорасцю v0 па гарызанталі і роўнапаскораным без пачатковай скорасці па вертыкалі. У канцы палёту праекцыі хуткасці і каардынаты каменьчыка будуць: vx = v0; t; vy = gt; begin mathsize 16px style y space equals space h space equals space fraction numerator g t squared over denominator 2 end fraction end style. Тадыbegin mathsize 16px style t space equals space square root of fraction numerator 2 h over denominator g end fraction end root end style.

3. Пачатковая скорасць вылічваецца па формуле v subscript 0 equals l over t. Значэнне скорасці, з якой каменьчык увайшоў у ваду, можна вылічыць па формуле  v space equals space square root of v subscript x superscript 2 space plus space v subscript y superscript 2 end root.

4. Вывад выніку.

IV. Апісанне пераменных: h, l, g, t, vy, v0, v — double.

Пры напісанні праграм зввяртайце ўвагу на фармаціраванне тэксту праграмы (прыклад 2.4).

1. У першай пазіцыі на экране пішуць толькі каманды  #include <iostream>, #include <cmath>, using namespace std;, int main() ставяць фігурныя дужкі, а астатнія каманды пішуць са зрухам на 2—4 пазіцыі ўправа.

2. Калі ў праграме некалькі частак, то іх можна аддзяліць адна ад адной пустым радком.

Для аўтаматычнага фармаціравання кода можна выкарыстаць каманду Format use AStyle з кантэкставага меню рабочай вобласці  (пыклад 2.5).

Прыклад 2.2.

V. Праграма:

#include <iostream>

#include <cmath>

using namespace std;

int main()

{

  double a;

  cout << "vvedi a"<<endl;

  cin >> a;

  double s = a * a;

  double d = a * sqrt(2);

  cout << "s=" << s;

  cout << "  d=" << d << endl;

  return 0;

}

VI. Тэсціраванне праграмы. Увядзіце значэнне  = 2. Вынік:

Праверыць правільнасць вылічэнняў можна на калькулятары.

Прыклад 2.3.  

V. Праграма:

#include <iostream>

#include <cmath>

 

using namespace std;

 

int main()

{

  double h, l;

  cout << "vvedi h, l"<< endl;

  cin >> h >> l;

  double g = 10;

  double t = sqrt(2 * h / g);

  double vy = g * t;

  double v0 = l / t;

  double v = sqrt(v0*v0 + vy*vy);

  cout << "v0=" << v0;

  cout << "  v=" << v << endl;

  return 0;

}

 

VI. Тэсціраванне праграмы:

Запусціце праграму і ўвядзіце значэнні h = 1.8 і l = 4.8.

Результат должен быть следующим:

Праверыць правільнасць вылічэнняў можна на калькулятары.

У праграме можна выкарыстоўваць каментарыі — тэкст, які не аналізуецца пры запуску праграмы на выкананне. Тэкст пасля сімвалаў // лічыцца каментарыем і вылучаецца шэрым колерам. У каментарыях зручна запісваць умову задачы і тлумачэнні да каманд.

Прыклад 2.4. Праграма з каментарыямі і адфармаціраваным кодам:

Калі для каментарыяў выкарыстоўваць сімвалы ///, то яны вылучаюцца больш ярка. Зрабіць вылучаны блок каментарыем можна з дапамогай Crtl+Shift+C, зняць каментарый — Crtl+Shift+X,

Прыклад 2.5. Кантэкставае меню рабочай вобласці: