А700а

Задача: Дана квадратная матрица [latex]A[/latex] порядка [latex]n[/latex].  Получить матрицу [latex]AB[/latex];  элементы матрицы [latex]B[/latex] вычисляются по формуле :

[latex]b_{ij} = \frac{1}{i+j-1}[/latex], при [latex]i,j=1,2,\dotsb n[/latex].

Тесты:

[latex]n[/latex] [latex]A[/latex] [latex]AB[/latex] Комментарий
2 [latex] \begin{pmatrix} 1 & 0 \\ 0 & 1 \end{pmatrix} [/latex] [latex] \begin{pmatrix} 1 & 0.5 \\ 0.5 & 0.33 \end{pmatrix} [/latex] Пройден
3 [latex]\begin{pmatrix}2 & 16 & -3 \\ 4 & 0 & 1 \\ -7 & 10 & 9\end{pmatrix}[/latex] [latex]\begin{pmatrix}9 & 5.58 & 4.067\\ 4.33 & 2.25 & 1.53\\ 1 & 2.08 &1.96\end{pmatrix}[/latex] Пройден

Код

Для начала создаем и вводим размерность [latex]n[/latex] матрицы [latex]A[/latex]. Создаем три двумерных массива [latex]a[/latex], [latex]b[/latex] и [latex]ab[/latex]. Вводим значения матрицы [latex]A[/latex] и заполняем ими массив [latex]a[/latex].  Определяем значения матрицы [latex]B[/latex] и помещаем их в массив [latex]yb[/latex]. С помощью трёх циклов  [latex]for[/latex] перемножаем матрицы [latex]A[/latex]  и [latex]B[/latex] и помещаем результат в массив [latex]ab[/latex]. Выводим полученную матрицу.

Ссылка на Ideone

 

Ю12.36

Задача: Разнобуквица. Из имеющегося словаря выбрать наиболее длинное слово, в котором  все буквы разные, например:  ЛЕЙКОПЛАСТЫРЬ, НЕРЯШЛИВОСТЬ, ЧЕТЫРЁХДЮЙМОВКА.

Тесты:

Словарь Результат Комментарий
There, here, the, then then Пройден
Список 2500 наиболее употребительных английских слов background Пройден

Код:

Для того что бы найти искомое слово создаем две строки, одна для ввода словаря, другая для результата. Создаем цикл [latex]while[/latex] . С помощью функции [latex]isalpha()[/latex] отсеиваем знаки препинания в словаре. Далее создаем булеву переменную [latex]x[/latex]  и два цикла [latex]for[/latex]  что бы проверить  встречается ли буква в слове больше одного раза, если хоть одна буква повторяется, то   присваиваем [latex]x[/latex] значение «false» и прерываем цикл [latex]for[/latex]. Если значение булевой переменной «true», значит в слове нет повторяющихся букв, из таких слов теперь можно искать самое длинное, для этого счетчику [latex]n[/latex] присваиваем размерность самого длинного слово, и присваиваем его значение  в строку [latex]max[/latex]. Выводим результат.

Ссылка Ideone.

 

А410д

Задача:

Дана целочисленная матрица [latex][a_{ij}, i, j =1, … n][/latex]. Получить [latex]b_1, …, b_n[/latex], где [latex]b_i=\prod_ja_{ji}[/latex] для все таких [latex]j[/latex], что  [latex]1 < a_{ji} <= n[/latex];

Тесты:

[latex]ixj[/latex] a_{ij} [latex]b_1, …, b_n[/latex] Комментарий
3×3 [latex]\begin{pmatrix}1 & 2 & 1 \\ 2 & 1 & 2 \\ 2 & 2 & 1\end{pmatrix}[/latex]  4, 4, 2 Пройден
4×3 [latex]\begin{pmatrix}2 & 4 & 8 \\3 & 1 & 5 \\6 & 7 & 8\\1 & 4 & 1\end{pmatrix}[/latex]  6, 4, * Пройден
2×3 [latex]\begin{pmatrix}2 & 4 & 3\\ 4 & 2 & 3\end{pmatrix}[/latex]  2, 2, * Пройден

Код:

Для начала  вводим размерность массива [latex]a[/latex]. Затем с помощью цикла [latex]for[/latex] заполняем этот массив.

Теперь каждому элементу массива [latex]b[/latex] задаем значение [latex]1[/latex]. Находим произведение таких элементов матрицы [latex]a_{ji}[/latex], которе бы удовлетворяли условию задачи, а именно для все таких [latex]j[/latex], что  [latex]1 < a_{ji} <= n[/latex]. В итоге если в массиве  [latex]b[/latex] остается элемент с значением  [latex]1[/latex], выводим символ  [latex]*[/latex], так как нельзя найти произведение. Выводим значения массива  [latex]b[/latex].

Код Java

Ссылка на Ideone

Ю4.14

Задача:

Элементы заданного массива [latex]T(k)[/latex] расположить в обратном порядке : [latex] t_k, t_{k-1}, … , t_2, t_1.[/latex]

Тесты:

 

[latex]k[/latex] Вводимые значения Результат Комментарий
6 1 2 3 4 5 6 6 5 4 3 2 1 Пройдено
1 3 3 Пройдено
3 22 501 -1254 -1254 501 22 Пройдено

Код:

В начале  задаем количество  элементов в массиве. Заполняем массив значениями с помощью цикла [latex]for[/latex].  С помощью цикла [latex]for[/latex] выводим элементы массива  в обратном порядке.

Ссылка Ideone.

Код Java

Ссылка на Ideone

А137д

Задача:

Даны натуральное число [latex]n[/latex], действительные числа [latex]a_1, … , a_n[/latex] . Вычислить:

[latex]-a_1, a_2, -a_3, … , (-1)^na_n[/latex]

Тесты:

[latex]n[/latex] [latex]a_1, … , a_n[/latex] [latex]-a_1, a_2, -a_3, … , (-1)^na_n[/latex] Комментарий
4 3 -2 -3 6 -3 -2 3 6 Пройден
5 40 -30 0 34.5  0.2 -40 -30 0 -34.5 0.2 Пройден
3 126 -486.95 -20.0985 -126 -486.95 20.0985 Пройден

Код:

Для начала вводим число  [latex]n[/latex]. Задаем цикл для ввода ряда чисел [latex]a_1, … , a_n[/latex]. Если [latex]n[/latex] — парное число, умножаем введенное [latex]a[/latex] на [latex]-1[/latex]. Выводим результат.

Ссылка Ideone

Код Java

Ссылка на Ideone

А116д

Задача:

Даны натуральное число [latex]n[/latex], действительное число [latex]x[/latex]. Найти:

[latex]\prod_{k=1}^{n}(\frac{k}{k+1}-cos^k|x|)[/latex]

Тесты:

[latex]x[/latex] [latex]n[/latex] [latex]p[/latex] Комментарий
1 4 0.0212016 Пройден
-4 3 -0.0779913 Пройден
50 16 0.0782772 Пройден

Код:

Для решения данной задачи создаем цикл, счетчик [latex]k[/latex] которого не превышает заданного [latex]n[/latex].  В самом цикле вычисляем произведение [latex]p[/latex] путем домножения новых  множителей заданных формулой  [latex]\frac{k}{k+1}-cos^k|x|[/latex]  пока [latex]k[/latex] не превысит [latex]n[/latex]. Выводим произведение [latex]p [/latex].

Ссылка Ideone

Код Java

Ссылка на Ideone

Ю3.36

Задача:

Задана функция и ее разложение в ряд. Численно убедиться в справедливости равенства, для чего для заданного значения аргумента [latex]x[/latex] вычислить левую его часть и разложение, стоящее в правой части, с заданной погрешностью [latex]\varepsilon[/latex]. Испытать разложение на сходимость при разных значениях аргумента, оценить скорость сходимости, для чего вывести число итераций [latex]n[/latex].

[latex]\frac{e^x+e^{-x}}{2}=1+\frac{x^2}{2!}+\frac{x^4}{4!}+ … +\frac{x^{2n}}{2n!}+…[/latex]

Тесты:

[latex]x[/latex] [latex]\varepsilon[/latex] [latex]a[/latex] [latex]b[/latex] [latex]n[/latex] Комментарий
1 0.0001 1.54308 1.54306 3 Пройден
1.5 0.001 2.35241 2.35176 3 Пройден
3 0.02 10.0677 10.0502 0 a=b,Пройден
10 0.3  11013.2  11012.9  12  Пройден

 

Код:

В задаче дана функция и ее разложение.   В главной функции задаем аргумент и погрешность. Находим значение функции(левая часть). Дальше нам нужно найти  значение разложения(правая часть). Для этого создаем цикл который будет работать пока, разница левой и правой части не станет меньше погрешности. Для этого к правой части прибавляем [latex]\frac{x^{2n}}{2n!}[/latex] до тех пор, пока разница между функцией и разложением не будет меньше погрешности.

Ссылка Ideone

Код Java

Ссылка на Ideone

А69

Задача:   Часовая стрелка образует угол [latex]\varphi[/latex] с лучом, проходящим через центр  и через точку, соответствующую  [latex]12[/latex]  часам на циферблате, [latex] 0 < \varphi \leq 2\pi[/latex]. Определить значение угла для минутной стрелки, а также количество часов и полных минут.

Тесты

[latex]\varphi[/latex] Часы Минуты [latex]\alpha[/latex] Комментарий
30 1 0.00 0.00 Пройден
360 12 0.00 0.00 Пройден
1 0 2.00 12.00 Пройден
149.9 4 59.8 358.80 Пройден

Код

 

В условии задачи сказано, что [latex] 0 < \varphi \leq 2\pi[/latex], значит вводимое значение угла [latex]\varphi[/latex] — не может быть отрицательным  и  быть больше 360 градусов. Угол [latex]\alpha[/latex] — угол между минутной стрелкой и лучом. Один час — 30 градусов, что бы узнать количество часов нам следует  поделить введенный угол [latex]\varphi[/latex] на 30 градусов. Но перед этим   важно узнать остаток от этого деления, если такой имеется.  Если остаток равен 0, значит минутная стрелка показывает 0 минут и можно смело вывести значения  часов ( поделив [latex]\varphi[/latex] на 30),  минут и угла [latex]\alpha[/latex]( 0 ). Если  остаток все же не равен 0, нужно отнять его от [latex]\varphi[/latex]   и разделить на 30 градусов.  Так-как в одном часе 60 минут, а остаток не может быть больше 30 градусов, умножаем его на 2 и получаем количество минут. Подобную операцию проводим над углом [latex]\alpha[/latex], но в этот раз умножаем на 12. Выводим значения часов, минут и угла [latex]\alpha[/latex].

Ссылка на Ideone

Код для Java

Ссылка на Ideone

А37

Задача: Даны  действительные числа [latex]a, b, c[/latex]. Удвоить эти числа, если  [latex] a \geq b \geq c[/latex], и заменить их абсолютными значениями, если  это не так.

[latex]a[/latex] [latex]b[/latex] [latex]c[/latex] [latex]a_1[/latex] [latex]b_1[/latex] [latex]c_1[/latex] Комментарий
 26  16        -2          52.00        32.00         -4.00 Пройден
 20  30         0          20.00        30.00           0 Пройден
 -4  -16        -20         -8.00       -32.00         -40.00 Пройден
 2.75  3.56        -1          2.75        3.56           1 Пройден
 2   2         2           4.00        4.00          4.00 Пройден

В задача нужно проделать на введенными числами операции в зависимости от соблюдения неравенств. Если [latex] a \geq b \geq c[/latex], то мы удваиваем все введенные числа. Если же, неравенство [latex] a \geq b \geq c[/latex] не соблюдается, то находим модули каждого из чисел([latex]|a|, |b|, |c| [/latex] ) и выводим полученное как результат.

Ссылка на Ideone.

Код Java

Ссылка на Ideone

А19

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

[latex]a_1[/latex] [latex]a_2[/latex] [latex]V_{01}[/latex] [latex]V_{02}[/latex] [latex]S[/latex] [latex] t[/latex] Комментарий
1 1 1 1 1 0.41 Пройден
3.2 2.1 3 7.5 20.8 1.45 Пройден
0 0 4 1 8 1.6 Пройден

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

Для решения этой задачи  использовались формулы:

[latex]S=V_0t+\frac{at^2}{2}[/latex]

Так как расстояние делится на две части, то получаем:

[latex]S=V_{01}t+\frac{a_1t^2}{2}[/latex],

[latex]S=S_0 — V_{02}t+\frac{a_2t^2}{2}[/latex]

Значит  [latex]S_0=V_{01}t+\frac{a_1t^2}{2}+V_{02}t+\frac{a_2t^2}{2}[/latex]. Получаем уравнение времени:

[latex]t^2(\frac{a_1+a_2}{2})+t(V_{01}+V_{02})-S_0=0[/latex]

Упрощаем коэффициенты  уравнения :

[latex]a=\frac{a_1+a_2}{2}[/latex],    [latex]b=V_{01}+V_{02}[/latex],    [latex]at^2+bt-S_0=0[/latex]

Если [latex]a=0[/latex],  находим корень уравнения  по формуле [latex]t=\frac{S_0}{b}[/latex]. Если же [latex]a[/latex] не равняется нулю, находим дискриминант по формуле [latex]D=b^2+4aS[/latex], дискриминант в данной задаче всегда положителен. Нет смысла находить время по формуле [latex]t=\frac{b^2-\sqrt{D}}{2a}[/latex], так как время не может быть отрицательным, остается использовать [latex]t=\frac{b^2+\sqrt{D}}{2a}[/latex] — это и будет искомое время.

Ссылка на Ideone

Код для Java

Ссылка на Ideone