Ю4.3

Задача:

Центрирование массива. От каждого из заданных чисел x1, x2,…, xn отнять их среднее арифметическое.

xср= 1/m

E от m при i=1 (x1); xi= xi-xср; i=1,2,…, m

Результаты разместить на месте исходных данных.

Тесты:

Введите M (количество элементов в массиве) Введите первое число Введите следующее число Результат Вывод
2 2 5 -1

2

Тест пройден
2 1 2 0

1

Тест пройден
2 0 2 -1

1

Тест пройден
2 0 3 -1

2

Тест пройден
2 0 1 0

1

Тест пройден

Код:

 

Решение:

объявляем массив m;

int i; // счетчик цикла

int arr[100]; //массив не более 100 элементов

int sum = 0; // сумма чисел массива

cout << «Введите первое число: »

Циклы и условия:

for (i = 2; i <= m; i++) // цикл

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

cout << arr[i] — (sum / m) << » «;

Код в ideone: http://ideone.com/vB6l0Y

А99

Задача: Пусть [latex]a_{1}=4[/latex], b1=v, an=2bk-1+ak-1. bk=2a^2k-1+bk-1, k=2,3…

Даны действительные u, v, натуральное n.

Найти Е от n при k=1 (ak*bk)/(k+1)!

Тесты:

N U V Результат Вывод
2 4 3 64 тест пройден
1 4 2 4 тест пройден
2 1 2 4 тест пройден
0 3 1 1 тест пройден
1 2 3 3 тест пройден

Код:

Решение:
if (M == 0) // массив
return 1; // возвращаем факториал от нуля, это 1
else // Во всех остальных случаях
return M * fact(M — 1); // делаем рекурсию.

Пишем условия и формулы:

sum = a * b / fact(k + 1);
for (k = 2; k <= n; k++) // цикл

Цикл:
t = a;
a = 2*b + a;
b = 2 * t * t + b;
sum = sum + (a * b / fact(k + 1));

код задачи в ideone: http://ideone.com/1fNmWc

Ю2.2

Задача: Треугольник задан длинами своих сторон: a, b, c. Определить, является ли он тупоугольным, прямоугольным или остроугольным.

Тесты:

угол №1 угол №2 угол №3 Результат Комментарий
30 60 90 треугольник прямоугольный тест пройден
60 60 60 треугольникостроугольный равностороннийравнобедренный тест пройден
70 70 40 треугольникостроугольный равнобедренный тест пройден
45 90 45 треугольник прямоугольный равнобедренный тест пройден
80 20 80 треугольникостроугольный равнобедренный тест пройден
30 120 30 треугольник тупоугольный равнобедренный тест пройден
50 90 150 треугольник не существует тест пройден
120 150 160 треугольник не существует тест пройден

Код программы:

 

Решение задачи:

1) Вводим данные стороны a,b,c;

2) Вводим условия для выполнимости определения треугольников (ограничения для углов):

а) для остроугольных

б) для равносторонних

в) для прямоугольных

г) пишем условие, при котором выполняется для тупоугольных треугольников

д) для равнобедренных

е) если ни одно из условий не выполняется, значит треугольника не существует

Посмотреть и протестировать программу можно на этом сайте: http://ideone.com/uAyr4x

 

Ю1.25

Задача Ю 1.25

Задача: Найти внутренние углы треугольника abc по точкам, заданным на координатной плоскости и полученные значения углов перевести из радиан в градусы.

тесты:

x1 y1 x2 y2 x3 y3 результат №1 результат №2 результат №3 комментарий
0 0 1 0 0 1 45 90 45 тест пройден
1 3 1 1 2 1 63,4 26,5 90 тест пройден
1 4 2 3 1 1 26,5 45 108,4 тест пройден
1 2 1 1 2 1 45 45 90 тест пройден

 

 Идея решения задачи: В начале программы мы объявляем нужные библиотеки, затем после оператора double перечисляем все используемые переменные, после этого, с помощью оператора  scanf  объявляем те переменные, которые нужно будет вводить для выполнения программы, далее пишем формулы:

1) Для вычисления длин сторон по координатам точек

 

 

 

2) Для вычисления углов в радианах

3) Для перевода значений углов из радиан в градусы.

После этого, с помощью оператора printf   перечисляем переменные, которые программа будет вычислять и показывать нам. После компиляции вводим в строчку stdin значения координат точек, и в поле stdout программа выдает нам значения углов.

Чтоб посмотреть и протестировать программу, пройдите по этой ссылке: http://ideone.com/7YLyBt