Дано действительное число $ a $. Вычислить $ f\left(a\right) $, если
$ f\left(x\right) = \begin{cases} 0, x \leq 0 \newline
x, 0 \ < x \leq 1 \newline x^4, x > 1 \end{cases} $
Входные данные
Действительное число $ a $.
Выходные данные
Значение $ f\left(a\right) $.
График функции:
Тесты
№
Входные данные
Выходные данные
1
-42
0
2
0.5
0.5
3
3
81
Решение
Находим промежуток, которому принадлежит заданное $ a $. Если $ a \in \left(-\infty; 0\right] $, то $ f(a) = 0$. Иначе если $ a \in \left(0; 1\right] $, то $ f(a) = a$. Иначе $ f(a) = a^4$
Пары чисел, одно из которых является кратным другого.
Тесты
Входные данные
Выходные данные
1.
1 2 3
1 2
1 3
2.
0 2 4
2 4
3.
1 2 6
1 2
1 6
2 6
4.
5 5 2
5 5
5.
0 0 3
6.
2 5 3
7.
-10 5 2
Код программы
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
classTest{
classTest{
staticfunctioncheck(a:Int,b:Int){
if((a%b==0)||(b%a==0))returntrace(a+" "+b);
}
staticfunctionmain(){
vark:Int=0;
varl:Int=2;
varm:Int=4;
if((k!=0)&&(l!=0))check(k,l);
if((k!=0)&&(m!=0))check(k,m);
if((l!=0)&&(m!=0))check(l,m);
}
}
Решение
Хотя свойство делимости определено на всём множестве целых чисел, обычно рассматривается лишь делимость натуральных чисел.
Кратное натурального числа [latex]b[/latex] — это натуральное число [latex]a[/latex], которое делится на [latex]b[/latex] нацело. Наименьшим кратным данного числа является само это число.
Ссылка на оригинальную статью Задача. Дано действительное число $a$.Для функций $f(x)$, графики которых представлены на рис.
Вычислить $f(a)$
1
2
3
4
5
6
7
8
classTest{
staticfunctionf(x:Float){
returnif(x<-1)1/(x*x)elseif(x>2)4elsex*x;
}
staticfunctionmain(){
trace(f(1.6));
}
}
Решение.
На графике функции указано, чему равна $f(x)$ на каждом участке. В данной программе мы по очереди проверяем, какому из них принадлежит $f(a)$ и выбираем соответствующую формулу для расчёта $y$. Поскольку участков всего три, достаточно проверить, принадлежит ли точка к двум из них. Ели нет, то она, очевидно, лежит на третьем.
В условии не оговаривается ни принадлежность граничных точек фигуре, ни формат записи координат точки. В своем решении я предполагаю, что граничные точки фигуре принадлежат, а значения координат могут иметь дробную часть.
В основе заданной фигуры лежит круг с радиусом $6$ и центром в начале системы координат $(0,0)$, из которого исключена первая четверть. Таким образом, нам нужно удостовериться, что положение заданной точки одновременно удовлетворяет следующим условиям:
точка расположена в пределах круга, то есть сумма квадратов координат $x^{2}+y^{2}$ меньше или равна квадрату радиуса $6^{2}=36$;
хотя бы одна из координат точки $(x,y)$ не превышает значения $0$ (другими словами, точка не лежит в первой четверти).
Если оба условия соблюдены, точка принадлежит фигуре. В противном же случае — нет. Такую проверку и последующий вывод ответа можно записать с помощью единственной тернарной операции:
Составить программу для решения квадратного уравнения [latex]ax^2 + bx + c = 0[/latex] [latex](a\neq0)[/latex].
Входные данные
В одной строке задано три целых числа — коэффициенты квадратного уравнения соответственно [latex]a[/latex], [latex]b[/latex] и [latex]c[/latex]. Значения коэффициентов не превышают по модулю [latex]100[/latex].
Входные данные
В одной строке вывести в случае отсутствия корней сообщение «No roots» (без кавычек), в случае, если решение содержит один корень вывести сначала сообщение «One root:» (без кавычек), а далее через пробел сам корень, в случае наличия двух корней вывести сначала сообщение «Two roots:» (без кавычек), а далее через пробел сначала меньший, а потом больший корень. Гарантируется, что в случае наличия решений все корни целочисленные.
Каждый в школе в классе 7 узнает как решать квадратное уравнение. Для того чтобы его решить надо сначала найти дискриминант: [latex]d=(b\cdot b)-(4\cdot a\cdot c)[/latex], а потом подставить его в следующие формулы для нахождения корней квадратного уравнения: [latex]x1=(-b+\sqrt d)/(2\cdot a)[/latex] и [latex]x2=(-b-\sqrt d)/(2\cdot a)[/latex]. Однако для квадратного уравнения существует 3 варианта ответов зависящие от дискриминанта. Все 3 варианта расписаны в if-блоках, где сначала проверяется дискриминант и от его значения уже определяется сколько корней у нас будет. После этого выводятся корни, гарантированно целочисленные, или надпись «No roots», если их нет.
Определить количество точек пересечения двух окружностей.
Входные данные:
Шесть чисел: $x_1$, $y_1$, $r_1$, $x_2$, $y_2$, $r_2$, где $x_1$, $y_1$, $x_2$, $y_2$ — координаты центров окружностей, а $r_1$, $r_2$ — их радиусы. Все числа — действительные, не превышают $10^9$, заданы не более чем с тремя знаками после запятой.
Выходные данные:
Количество точек пересечения. Если точек пересечения бесконечно много, то вывести $-1$.
Высчитываем расстояние между центрами окружностей по формуле: $Range = \sqrt{(X_2-X_1)^2+(Y_2-Y_1)^2}$ (храниться и обрабатываться оно будет в квадрате). Вычисление в одну строку:
Далее рассчитываем сумму радиусов окружностей (также в квадрате).
Если центры совпадают ($Range = 0$) и длины радиусов равны, значит, совпадают и окружности:
36
37
38
if(range_sqr==0&&r1==r2){
D=-1;
}
Если расстояние между окружностями равно сумме радиусов, окружности имеют одну общую точку, касаясь друг друга снаружи. Также одна из окружностей может лежать внутри другой и касаться ее изнутри:
Если расстояние между окружностями превышает сумму радиусов, это значит, что они не пересекаются. Также одна окружность может лежать внутри другой, но не касаться ее:
В остальных случаях окружности пересекаются и имеют две общие точки:
45
46
47
else{
D=2;
}
Примечание: Входные данные для тестирования были заданы программно из-за определенных затруднений в использовании стандартного ввода в онлайн-среде try.haxe.org.
Ссылки:
Рабочий код для тестирования на try.haxe.org: Try Haxe !
Условие
Дано действительное число $a$. Вычислить $f(a)$ если $f(x)=\left\{\begin{matrix} 0, x\leq 0 \\ x, 0< x\leq 1\\ x^{4}, x> 1 \end{matrix}\right.$
Входные данные
Действительное число $a$.
Выходные данные
$0$ — если $a\leq 0$
$a$ — если $0 < a \leq 1$
$a^{4}$ — если $a > 1$
Тесты
Входные данные
Выходные данные
-12.07
0
0.75
0.75
2.0
16.0
JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
classMain
{
staticfunctionmain()
{
var a:Float=Std.parseFloat(Sys.stdin().readLine());
Sys.println(getAnswer(a));
Sys.exit(0);
}
staticfunctiongetAnswer(x:Float):Float{
if(x<=0){
return0;
}elseif(0<x&&x<=1){
returnx;
}else{
returnx*x*x*x;
}
}
}
Решение Вводим число $a$. Проверяем условие $a\leq 0$, если выполняется, то выводим $0$, оначе проверяем следующее условие $0 < a \leq 1$, если выполняется, то выводим $a$, иначе выводим $a^{4}$.
Многоквартирный дом имеет $N$ квартир, $P$ подъездов и $Q$ этажей, причем на каждом этаже каждого подъезда имеется одинаковое количество квартир. Определить в каком подъезде и на каком этаже находится квартира с заданным номером.
Входные данные.
Значения $N$, $P$, $Q$, $K$, причем [latex]1 \leq K \leq N \leq 1000[/latex], [latex]P \cdot Q \leq N[/latex].
Выходные данные.
Нужно вывести номер подъезда и этаж, на котором находится квартира с номером $K$.
Тесты
Входные данные
Выходные данные
250 5 5 1
1 1
30 2 5 27
2 4
300 3 10 111
2 2
80 5 4 77
5 4
Код.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
classTest{
staticfunctionmain(){
varoutput=Sys.stdout();
varN:Int=Std.parseFloat(Sys.stdin().readLine());
varP:Int=Std.parseFloat(Sys.stdin().readLine());
varQ:Int=Std.parseFloat(Sys.stdin().readLine());
varK:Int=Std.parseFloat(Sys.stdin().readLine());
varfl=0;
varfle=Math.round(N/P);//находим количество квартир в подъезде
varflf=Math.round(fle/Q);//находим количество квартир на этаже
varent=Math.ceil(K/fle);//узнаем номер подъезда в котором рассположена квартира с заданным номером К
Даны действительные числа [latex]x, y, z[/latex]. Получить [latex]\max\left\{x,y,z \right\}[/latex].
Код:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
classTest{
staticfunctionmax(x:Float,y:Float){
returnif(x>y)xelsey;
}
staticfunctionmain(){
varx:Float=10;
vary:Float=5;
varz:Float=3;
trace(max(x,max(y,z)));
}
}
Решение.
Как известно, для любых чисел [latex] x,y \in \mathbb{R} [/latex] [latex] \max\left\{x,y \right\} = x,[/latex] если [latex] x \geq y[/latex], и [latex] \max\left\{x,y \right\} = y,[/latex] в противном случае.
С учётом замечания 1 проверим неравенство [latex] x > y[/latex] и если оно выполняется, перенаправим поток на вывод [latex] \max\left\{x,z \right\}[/latex]. В противном случае, на вывод [latex] \max\left\{y,z \right\}[/latex]
Для отправки комментария необходимо войти на сайт.