Java: практические задания второй недели начальных курсов

4.8 (96.67%) 6 vote[s]

В этом начальном цикле задач программирования на 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);
    }
}

Читайте больше по теме:

Подписаться
Уведомление о
guest
0 комментариев
Inline Feedbacks
View all comments
Просмотры: 1630

Популярные записи