Алгоритмы разветвляющей структуры — КиберПедия 

Индивидуальные и групповые автопоилки: для животных. Схемы и конструкции...

Наброски и зарисовки растений, плодов, цветов: Освоить конструктивное построение структуры дерева через зарисовки отдельных деревьев, группы деревьев...

Алгоритмы разветвляющей структуры

2018-01-28 188
Алгоритмы разветвляющей структуры 0.00 из 5.00 0 оценок
Заказать работу

1. Вычислить:

Решение:

#include <iostream>

using namespace std;

int main()

{

double a, x, b;

cout << "X = ";

cin >> x;

cout << "a = ";

cin >> a;

cout << "b = ";

cin >> b;

if ((a > x) || (a == x))

cout << "Z = " << sin(x) << endl;

else if ((a < x) && (x < b))

cout << "Z = " << cos(x) << endl;

else if ((x > b) || (x == b))

cout << "Z = " << tan(x) << endl;

system("pause");

return 0;

}

2. Найти квадрат наибольшего из двух чисел a и b и отпечатать

N = 1, если наибольшим является а, и признак N = 2 ‑ в противном случае.

 

 

Решение:

 

#include <iostream>

using namespace std;

int main()

{

int a, b;

cin >> a >> b;

if (a * a > b * b)

cout << "N = 1" << endl;

else

cout << "N = 2" << endl;

system("pause");

return 0;

}

 

3. Определить, попадает ли точка с координатами х, у в круг радиуса r (уравнение окружности ). Вывести признак N = 1, если точка находится внутри круга, и признак N = 0, если точка находиться вне круга.

 

4. Составить программу, выполняющую упорядочение трех чисел A, B, C, таким образом, чтобы при выполнении ее в ячейке с симво­лическим адресом A находилось наименьшее число, в ячейке B ‑ сред­нее, в ячейке C ‑ наибольшее.

 

Решение:

 

#include <iostream>

using namespace std;

int main()

{

double a, b, c;

cin >> a >> b >> c;

//можно просто рассмотреть все 6 возможных случаев

if ((b >= a) && (b >= c) && (a >= c)) swap(a, b);

else if ((b >= a) && (b >= c) && (c >= a)) { swap(a, b); swap(b, c); }

//cout << b << " " << c << " " << a << endl;

else if ((c >= a) && (c >= b) && (a >= b)) { swap(a, c); swap(b, a); }

//cout << c << " " << a << " " << b << endl;

else if ((c >= a) && (c >= b) && (b >= a)) swap(a, c);

//cout << c << " " << b << " " << a << endl;

else if ((a >= b) && (a >= c) && (c >= b)) swap(b, c);

//cout << a << " " << c << " " << b << endl;

 

system("pause");

return 0;

}

 

 

5. Записать указанное действие в виде одного условного оператора:

а) у =

 

Решение:

 

#include <iostream>

using namespace std;

int main()

{

 

double x;

cin >> x;

cout << "Y = " << ((0 < x) && (x < 2)? cos(x) * cos(x): 1 - sin(x) * sin(x)) << endl;

system(“pause”);

return 0;

}

 

б) переменной х присвоить корень уравнения .

 

Решение:

 

#include <iostream>

using namespace std;

int main()

{

 

double x;

cin >> x;

double y = asin(log(x))

system(“pause”);

return 0;

}

 

в) перераспределить значение переменных х и у так, чтобы в х оказалось большее из этих значений, а в у ‑ меньшее;

Решение:

#include <iostream>

using namespace std;

int main()

{

double x, y;

cin >> x >> y;

if (x < y)

swap(x, y);

cout << "x = " << x << endl

<< "y = " << y << endl;

system(“pause”);

return 0;

}

 

 

г) d = max (a, b, c);

Решение:

 

double max(double first, double second, double third)

{

if ((first > second) && (first > third))

return first;

else if (second > third)

return second;

else

return third;

}

 

double a, b, c;

cin >> a >> b >> c;

cout << "d = " << max(a, b, c) << endl;

 

д) z =

Решение:

 

double x, y;

cin >> x >> y;

if (x < 0)

cout << "Z = " << max(x, y) << endl;

else if (x >= 0)

cout << "Z = " << min(x, y) << endl;

 

е) переменной k присвоить номер четверти плоскости, в которой находится точка с координатами х и у (ху 0);

 

Решение:

 

double x, y;

cin >> x >> y;

if ((x > 0) && (y > 0))

cout << "k = 1" << endl;

else if ((x < 0) && (y > 0))

cout << "k = 2" << endl;

else if ((x < 0) && (y < 0))

cout << "k = 3" << endl;

else if ((y < 0) && (x > 0))

cout << "k = 4" << endl;

 

6. Записать программу для решения задачи:

а) по номеру у (у> 0) некоторого года определить с ‑ номер его столетия (учесть, что, к примеру, началом XX столетия был 1901);

 

Решение:

#include <iostream

using namespace std;

int main()

{

int y;

cin >> y;

int result = 1, year = 100;

while (year < y)

{

result++;

year += 100;

}

cout << result << endl;

system("pause");

return 0;

}

 

б) ;

 

 

Решение:

 

#include <iostream>

using namespace std;

double max(double first, double second, double third)

{

if ((first > second) && (first > third))

return first;

else if (second > third)

return second;

else

return third;

}

double min(double first, double second, double third)

{

if ((first < second) && (first < third))

return first;

else if (second < third)

return second;

else

return third;

}

int main()

{

double mx, mn, x, y, z;

cin >> x >> y >> z;

mx = max(x, y, z);

mn = min(x, y, z);

 

cout << "u = " << (mx * mx - pow(2, x) * mn) / (sin(2) + (mx / mn)) << endl;

system("pause");

return 0;

}

 

в) если уравнение ax2 + bx +c = 0 (a 0) имеет вещественные корни, то логической переменной t присвоить значение True, а переменным xl и х2 ‑ сами корни, иначе переменной t присвоить False, а значение пере­мен­­ных xl и х2 не менять;

 

Решение:

#include <iostream>

using namespace std;

int main()

{

double x1, x2, D, a, b, c;

bool t = true;

cin >> a >> b >> c;

D = b * b - 4 * a * c;

 

if (D < 0)

{

t = false;

cout << boolalpha << "t = " << t << "\nКорней нет.\n";

}

else if (D == 0)

{

x1 = (-b + sqrt(D)) / 2 * a;

cout << boolalpha << "t = " << t << "\nx1 = " << x1 << endl;

}

else

{

x1 = (-b + sqrt(D)) / 2 * a;

x2 = (-b - sqrt(D)) / 2 * a;

cout << boolalpha << "t = " << t

<< "\nx1 = " << x1

<< "\nx2 = " << x2 << endl;

}

 

system("pause");

return 0;

}

 

г) считая, что стандартные функции sin и cos применимы только к аргументам из отрезка [0, ], вычислить у = sin х для произвольного числа х;

Решение:

 

#include <iostream>

using namespace std;

const double pi = 3.14159265358979;

int main()

{

double x = 0;

double res;

cin >> x;

 

while (abs(x) >= 2 * pi)

{

if (x > 0)

x -= 2 * pi;

else

x += 2 * pi;

}

if ((x > 0) && (x <= pi / 2))

res = sin(x);

if ((x > pi / 2) && (x <= pi))

res = sin(x - pi / 2);

if ((x > pi && x) <= (3 * pi / 2))

res = -sin(x - pi);

if ((x > 3 * pi / 2) && (x < 2 * pi))

res = -sin(x - 3 * pi / 2);

cout << "sin(x) = " << res << endl;

system("pause");

return 0;

}

 

д) значения переменных а, b и c поменять местами так, чтобы оказалось а b c.

 

Решение:

 

#include <iostream>

using namespace std;

int main()

{

double a, b, c;

cin >> a >> b >> c;

if ((a >= b) && (a >= c) && (b >= c)) cout << a << " " << b << " " << c << endl;

else if ((b >= a) && (b >= c) && (a >= c)) cout << b << " " << a << " " << c << endl;

else if ((b >= a) && (b >= c) && (c >= a)) cout << b << " " << c << " " << a << endl;

else if ((c >= a) && (c >= b) && (a >= b)) cout << c << " " << a << " " << b << endl;

else if ((c >= a) && (c >= b) && (b >= a)) cout << c << " " << b << " " << a << endl;

else if ((a >= b) && (a >= c) && (c >= b)) cout << a << " " << c << " " << b << endl;

system("pause");

return 0;

}


Поделиться с друзьями:

Опора деревянной одностоечной и способы укрепление угловых опор: Опоры ВЛ - конструкции, предназначен­ные для поддерживания проводов на необходимой высоте над землей, водой...

Наброски и зарисовки растений, плодов, цветов: Освоить конструктивное построение структуры дерева через зарисовки отдельных деревьев, группы деревьев...

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

Эмиссия газов от очистных сооружений канализации: В последние годы внимание мирового сообщества сосредоточено на экологических проблемах...



© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!

0.035 с.