У меня такая задача:
Используя принципы ООП написать на языке Java программу, которая обеспечивает точное выполнение таких операций над рациональными функциями, представленными выражениями вида (a0 + a1*x + a2*x^2 + ... + an*x^n) / (b0 + b1*x + b2*x^2 + ... + bm*x^m) где n, m - целые неотрицательные числа, a0 ... an, b0 ... bm - рациональные числа: умножение, деление двух рациональных функций. Входные данные программы подают выражения такого вида, что n, m - целые числа в пределах от 0 до 10 и a0 ... an, b0 ... bm - рациональные числа, которые подаются дробями вида u / v, где u, v - натуральные числа в пределах от 1 до 2 ^ 32. Есть стартовый код метода, но это не то, что, как мне кажется, нужно:
Как правильно составить методы, которые бы корректно выводили выражение вычисления этих дробей?
import java.util.*;
public class main {
static int u; //переменные, использующиеся для переопределения рациональных чисел
static int v;
int n, m; //степени
int a[];//коэфициенты
int b[];
public static void main(String[] args) {
System.out.println(u + "/" + v);
}
public void main(int nn) {
int n = nn;
a = new int[n+1];
}
static void random1(int a[]) {//заполнение рандомом значений a первой скобки
for (int i=0;i<a.length;i++){
a[i]=(int)(Math.random() * 100 + 1);
}
}
static void random2(int b[]) {//заполнение рандомом значений b второй скобки
for (int i=0;i<b.length;i++){
b[i]=(int)(Math.random() * 100 + 1);
}
}
static void random3(int u) {//значение v в пределах от 1 до 2^32
for (int i=0;i<u;i++){
u = (int)(Math.random() * (Math.pow(2,32)) + 1);
}
}
static void random4(int v) {//значение u в пределах от 1 до 2^32
for (int i=0;i<v;i++){
v = (int)(Math.random() * (Math.pow(2,32)) + 1);
}
}
private void firstbracket(int a[]){ //первая скобка
for(int i = 0; i < 10; i++){
a[i] = u/v;
}
System.out.println(u + "/" + v);
//return u/v;
}
private void secondbracket(int b[]){ //вторая скобка
for(int i = 0; i < 10; i++){
b[i] = u/v;
}
//return u/v;
}
public void result() { //нахождения результата от деления двух скобок
System.out.println(firstbracket(a)"/"secondbracket(b));
}
}
public class Test {
public static void main(String[] args) {
int x = 3;
int [] aArray = {2,5,7,10, 12};
int [] bArray = {1,3,2,3};
System.out.println(calculate(aArray, bArray, x));
}
private static double calculate(int [] aArray, int [] bArray, int x) {
return calculate(aArray, x) / calculate(bArray, x);
}
private static double calculate(int [] aArray, int x) {
double result=0;
for (int n = 0; n < aArray.length; n++) {
result+=calculate (aArray[n], x, n);
}
return result;
}
private static double calculate(int a, int x, int n) {
return a * Math.pow(x, n);
}
}
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
К примеру есть дата, которая была сделана с помощью CURRENT_TIMESTAMP в mysql -> String date = "2017-12-20 16:49:31"; Мне нужно её преобразовать в то, из чего можно вытащить...
У меня есть NestedScrollView, в котором есть TextView с большим объемом текста, мне нужно событие прокрутки при остановки сохранять в Preferences, возможно...
Хотел реализовать кнопки старта/паузы в notification'e, но метод getCurrentPosition никак не выдает реальное число, только 0