Содержание
В этом начальном цикле задач программирования на java будет предложено реализовать решение квадратных уравнений типа ax2 + bx + c = 0, вывод на экран матрицы, реализовать пузырьковый метод сортировки, метод сортировки Шелла (ShellSort), бинарный поиск.
Решение квадратных уравнений на java
Создайте на java применение которых находит корни уравнения вида
ax2 + bx + c = 0 . Коэффициенты задаются через переменные:
double a; double b; double c;
Примечание: для расчета квадратного корня используйте
конструкцию Math.sqrt (). Например:
double x = Math.sqrt(4);
после выполнения х будет равным 2.
Результат должен иметь следующий формат (если только корни,
например, 2 и 3):
x1=2 x2=3
Если корень один (например 5):
x1=5 x2=5
Если корни отсутствуют:
x1= x2=
Вот вариант решения:
public class SquareRoot { public static void main(String[] args) { double a = 3; double b = 2.5; double c = -0.5; double d = b * b - 4 * a * c; if (d>0 & (a!=0 & c!=0) ) { System.out.println("x1=" + (-b + Math.sqrt(d)) / (2*a)); System.out.println("x2=" + (-b - Math.sqrt(d)) / (2*a)); } else if (a==0 & b!=0 & c==0 ) { System.out.println("x1="+0.0); System.out.println("x2="+0.0); } else if (d==0 & a!=0) { System.out.println("x1=" + (-b / (2*a))); System.out.println("x2=" + (-b / (2*a))); } else { System.out.println("x1="); System.out.println("x2="); } } }
Вывод на экран матрицы
Используя цикл for выведите на экран матрицу. Обратите
внимание на форматирование (отступы).
Обратите внимание на несколько различную трактовку символа переноса строки в Linux \ Unix и Windows системах. Для прохождения автоматического тестирования вашей программы на всех системах используйте System.out.println () для переноса строки. В противном случае (например System.out.print ( «\ n \ r») или System.out.print ( «\ n»)) прохождения теста не гарантировано.
* 2 3 4 * 6 * 8 * 10 11 12 * 14 15 16 * 18 * 20 * 22 23 24 *
public class MatrixPrint { public static void main(String args[]){ int[][]mas = new int[][]{ {1,2,3,4,5}, {6,7,8,9,10}, {11,12,13,14,15}, {16,17,18,19,20}, {21,22,23,24,25} }; for (int i = 0; i < 5; i++) { for (int j = 0; j <5; j++) {if( i==4-j||i==j) { System.out.print(" * "); } else { System.out.printf("%2d ",mas[i][j]); } } System.out.println(); } } }
Пузырьковая сортировка
Шаблон для выполнения задания:
public class ArraySort { public static void main(String[] args) { int[] array = {30, 2, 10, 4, 6}; int length = array.length; //PUT YOUR CODE HERE //PUT YOUR CODE HERE for (int i = 0; i < length; i++) { System.out.print(array[i] + " "); } } }
Примечание: не используйте переменные с названием temp, count, не называйте их зарезервированными словами.
public class ArraySort { public static void main(String[] args) { int[] array = {30, 2, 10, 4, 6}; int length = array.length; for(int i = 1; i < array.length; i++) { for(int j = i; j >= 1; j--) { int a = array[j]; array[j] = array[j-1]; array[j-1] = a; } } for(int i = 1; i < array.length; i++) { for(int j = i; (j >= 1) && (array[j] < array[j - 1]); j--) { int a = array[j]; array[j] = array[j-1]; array[j-1] = a; } } for (int i = 0; i < length; i++) { System.out.print(array[i] + " "); } } }
Метод сортировки Шелла (ShellSort)
Требуется реализовать на java метод сортировки Шелла.
Шаблон для вставки своего кода:
public class ShellSort { public static void main(String[] args) { int[] array = {30, 2, 10, 4, 6}; int length = array.length; //PUT YOUR CODE HERE //PUT YOUR CODE HERE for (int i = 0; i < length; i++) { System.out.print(array[i] + " "); } } }
Вариант реализации:
public class ShellSort { public static void main(String[] args) { int[] array = {30, 2, 10, 4, 6}; int length = array.length; for (int i = 0; i < array.length; i++) { for (int j = array.length - 1; j > i; j--) { if (array [j] < array [j - 1]) { int tmp = array[j]; array [j] = array [j - 1]; array [j - 1] = tmp; } } } for (int i = 0; i < length; i++) { System.out.print(array[i] + " "); } } }
Бинарный поиск
Напишите приложение, выполняет поиск заданного числа в отсортированном массиве — бинарный поиск.
Шаблон для вставки своего кода:
public class BinarySearch { public static void main(String[] args) { int data[] = { 3, 6, 7, 10, 34, 56, 60 }; int numberToFind = 10; // PUT YOUR CODE HERE // PUT YOUR CODE HERE } }
В случае если число найдено выведите на экран его позицию в массиве (позиции нумеруем с нуля) или -1 в противном случае.
Вариант реализации:
public class BinarySearch { public static void main(String[] args) { int data[] = { 3, 6, 7, 10, 34, 56, 60 }; int numberToFind = 10; int index = -1; for (int i = 0; i < data.length; i++) { if ( data[i] == numberToFind) { index = i; break; } } System.out.println(index); } }
Читайте больше по теме: