Добавил:
ПОИТ 2016-2020 Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
58
Добавлен:
29.04.2018
Размер:
558.11 Кб
Скачать

Лабораторная работа № 7

1

#include <iostream>

void main()

{

using namespace std;

int i=0;

double y[6] = { 4,-6,3,-3,9,5 }, c=10.1, x=0, z;

while (i < 6)

{

x = x + y[i];

i++;

if (x > c)

z = (sin(c))*exp(2);

else

z = (cos(c))*exp(2);

}

cout << "z = " << z << endl;

}

2

#include <iostream>

void main()

{

using namespace std;

int i = 0;

double x[6] = { 2.7, -5, 4, 3, 5, -7 }, n = 5, y = 0, a = 0, b = 1;

while (i <= n)

{

y = y + x[i];

if (x[i] > 0)

{

a = a + x[i];

}

else

{

b = b*x[i];

}

i++;

}

cout << "a = " << a << endl;

cout << "b = " << b << endl;

}

№3

#include <iostream>

void main()

{

using namespace std;

int i;

double y[5] = { 3, -2, 0.9, 0.5, 1 }, p=10, q, x=1;

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

{

if (y[i] < p)

p = y[i];

x *= (y[i] - 5);

}

q = x + p;

cout << q << endl;

}

Доп. Задания

1. В последовательности из n целых чисел найти и вывести значение суммы четных элементов.

#include <iostream>

void main()

{

using namespace std;

int n;

double x=0;

for (n = 1; n < 1000; n++)

{

if (n % 2 == 0)

{

x += n;

}

}

cout << x << endl;

}

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

#include <iostream>

using namespace std;

void main()

{

setlocale(LC_CTYPE, "Russian");

double a[11] = { 0, -2, 0, -10, 2, -1, 0, 0, 3, 2, -3 };

int b;

for (b = 0; b < 11; b++)

{

if (a[b] < 0) break;

}

cout << "Номер первого отрицательного элемента - " << b + 1 << endl;

}

3. В последовательности из n чисел с плавающей точкой найти количество элементов, стоящих между минимальным и максимальным значениями.

#include <iostream>

using namespace std;

Void main()

{

setlocale(LC_CTYPE, "Russian");

double a[11] = { 14.3466, -28.1613, 31.6546, 54.6133, -67.34864, 18.1562, 21.1654, 154.3165, 72.3265, 46.6546, -51.5161 }, x = 0, y = 0;

int b, x1, y1;

for (b = 0; b < 11; b++)

{

if (a[b] < x)

{

x = a[b];

x1 = b;

}

if (a[b] > y)

{

y = a[b];

y1 = b;

}

}

cout << "Количество элементов, стоящих между минимальным и максимальным значениями: " << abs(x1 - y1) - 1 << endl;

}

4. В последовательности найти число чередований знака, т. е. число переходов с минуса на плюс или с плюса на минус. Пример: в последовательности целых чисел 0, 2, 0, 10, 2, 1, 0, 0, 3, 2, 3 четыре чередования (как известно, нуль не имеет знака).

#include <iostream>

using namespace std;

Void main()

{

setlocale(LC_CTYPE, "Russian");

double a[11] = { 0, -2, 0, -10, 2, -1, 0, 0, 3, 2, -3 }, y = 10;

int b, x = 1, n = 0;

for (b = 0; b < 11; b++)

{

if (a[b] == 0) b++;

if (a[x] == 0) x++;

if (a[b] < 0 && a[x] < 0 || a[b] > 0 && a[x] > 0) n++;

}

cout << "Количество чередовай знаков - " << n << endl;

}

  1. В последовательности из n целых чисел найти сумму положительных и произведение отрицательных.

#include <iostream>

using namespace std;

Void main()

{

setlocale(LC_CTYPE, "Russian");

int n;

double x[10] = { 1, 50, -15, 68, 17, -31, 34, 62, 23, -46 }, s = 0, p = 1;

for (n = 0; n < 10; n++)

{

if (x[n] > 0)

{

s += x[n];

}

if (x[n] < 0)

{

p *= x[n];

}

}

cout << "Сумма: " << s << "\nПроизведение: " << p << endl;

}

6. В последовательности из n целых чисел найти максимальный положительный и максимальный отрицательный элементы.

#include <iostream>

using namespace std;

Соседние файлы в папке Пустовалова 1 сем