java примеры

Примеры на Java (часть 3)

Здравствуйте, продолжаем решать задачи на Java языке, ниже преставлены 30 задач.

Скачать исходники для статьи можно ниже

Примеры на Java (часть 1) можете прочитать здесь.

Примеры на Java (часть 2) можете прочитать здесь.

Задача 40: Программа выводит цифры от 1 до 10, а потом, начиная с другой строчки, от 10 до 1.

public class Task {

   public static void main(String[] args) {

      int i = 0;
      do {
         i = i + 1;
         System.out.print(" " + i + " ");
      } while (i < 10);
      System.out.println("");
      do {
         System.out.print(" " + i + " ");
         i = i - 1;
      } while (i > 0);
   }
}

Программа выводит:

1 2 3 4 5 6 7 8 9 10
10 9 8 7 6 5 4 3 2 1

Задача 41: Программа суммирует числа от 1 до 10.

public class Task {

   public static void main(String[] args) {

      int sum = 0;
      for (int i = 0; i < 11; i++) {
         sum = sum + i;
      }
      System.out.println(sum);
   }
}

Программа выводит:

55

Задача 42: Машина загадывает число от 1 до 10. Пользователь пытается угадать число до трех попыток. Машина подсказывает пользователю загаданное число больше или меньше числа, введенного пользователем.

import java.util.Scanner;

public class Game {

   public static void main(String[] args) {

      Scanner sc = new Scanner(System.in);
      int a;
      int result = (int) (Math.random() * 10 + 1);

      for (int i = 0; i < 3; i++) {
         System.out.println("Угадайте число:");
         a = sc.nextInt();
         if (a == result) {
            System.out.println("Правильно");
            break;
         } else{
            if(result < a){
               System.out.println("Неправильно, число < " + a);
            } else {
               System.out.println("Неправильно, число > " + a);
            }
         }
      }
      System.out.println("Ответ:" + result);
      sc.close();
   }
}

Возможный ответ:

Пользователь вводит число 5.
Программа выводит: Неправильно, число > 5

Пользователь вводит число 7.
Программа выводит: Неправильно, число < 7


Пользователь вводит число 6.
Программа выводит: Правильно
Ответ:6



Задача 43: Пользователь вводит число от 1 до 999. Программа выводит все числа между 0 и введенным числом или выдает сообщение об ошибке.

import java.util.Scanner;

public class Test {

   public static void main(String[] args) {

      Scanner sc = new Scanner(System.in);
      System.out.println("Введите число:");
      int a = sc.nextInt();
      sc.close();
      if (a > 999 || a < 1) {
         System.out.print("Неправильное число");
      } else {
         for (int i = 1; i < a; i++) {
            System.out.print(i + " ");
         }
      }
   }
}

Возможный ответ:

Пользователь вводит число 8.
Программа выводит:
1 2 3 4 5 6 7

Задача 44: Программа выводит цифры от 1 до 10, потом с другой строчки от 10 до 1.

public class Task {

   public static void main(String[] args) {
      int i;
      for (i = 1; i <= 10; i++) {
         System.out.print(i + " ");
      }
      System.out.println("");
      for (i = 10; i > 0; i = i - 1) {
         System.out.print(i + " ");
      }
   }
} 

Ответ:

1 2 3 4 5 6 7 8 9 10
10 9 8 7 6 5 4 3 2 1

Задача 45: Программа выводит квадраты чисел от 1 до 10, потом, с другой строчки, квадраты чисел от 10 до 1.

public class Test {

   public static void main(String[] args) {
      int i;
      for (i = 1; i <= 10; i++) {
         System.out.print((i * i) + " ");
      }
      System.out.println("");
      for (i = 10; i > 0; i = i - 1) {
         System.out.print((i * i) + " ");
      }
   }
}

Ответ:

1 4 9 16 25 36 49 64 81 100
100 81 64 49 36 25 16 9 4 1

Задача 46: Программа выводит массивы j и g попарно.

public class Test {

   public static void main(String[] args) {
      // инициализация массивов при объявлении

      int[] j = { 1, 2, 3, 4, 5, 6, 7, 8 };
      int[] g = { 8, 7, 6, 5, 4, 3, 2, 1 };

      int l = j.length;

      for (int i = 0; i < l; i++) {
         System.out.print(j[i] + " " + g[i]);
         System.out.println("");
      }
   }
}

Ответ:

1 8
2 7
3 6
4 5
5 4
6 3
7 2
8 1

Задача 47: Программа создает массив и наполняет его случайными числами от 1 до 100. После этого программа выводит этот массив.

public class Test {

   public static void main(String[] args) {

      int j[] = new int[10];

      for (int i = 0; i < 10; i++) {
         j[i] = (int) (Math.random() * 100 + 1);
         System.out.print(j[i]);
         if (i == 9) {
            System.out.print(".");
         } else {
            System.out.print(", ");
         }
      }
   }
}

Возможный ответ:

69, 36, 1, 42, 18, 88, 75, 32, 49, 80.

Задача 48: Пользователь вносит число от 1 до 10. Программа создает массив размером с число, введенным пользователем, заполняет его случайным образом и выводит массив.

import java.util.Scanner;

public class Main {

   public static void main(String[] args) {
      Scanner sc = new Scanner(System.in);
      System.out.println("Введите число:");
      int a = sc.nextInt();
      sc.close();
      if (a < 1 || a > 10) {
         System.out.println("Неверное число");
      } else {
         int j[] = new int[a];

         for (int i = 0; i < a; i++) {
            j[i] = (int) (Math.random() * 10 + 1);
            System.out.print(j[i]);
            if (i == (a - 1)) {
               System.out.print(".");
            } else {
               System.out.print(", ");
            }
         }
      }
   }
}

Возможный ответ:

Пользователь вводит число 4.
Программа выводит:
4, 7, 10, 7.

Задача 49: Программа создает массив из 10 элементов, заполняет его случайным образом, а потом меняет у первых пяти символов массива знак на противоположный и выдаёт новый массив с новой строки.

public class Main {

   public static void main(String[] args) {

      int j[] = new int[10];

      for (int i = 0; i < 10; i++) {
         j[i] = (int) (Math.random() * 100 + 1);
         System.out.print(j[i] + " ");
      }
      System.out.println(" ");
      for (int i = 0; i < 10; i++) {
         if (i < 5) {
            j[i] = -j[i];
         }
         System.out.print(j[i] + " ");
      }
   }
}

Возможный ответ:

43 23 89 99 14 2 20 1 69 23
-43 -23 -89 -99 -14 2 20 1 69 23

Задача 50: Программа создает два массива j и g по 10 элементов в каждом. Заполняет массив j случайным образом и выводит его. Потом копирует данные из массива j в массив g и выводит массив g.

public class Main {

   public static void main(String[] args) {

      int j[] = new int[10];
      int g[] = new int[10];

      for (int i = 0; i < 10; i++) {
         j[i] = (int) (Math.random() * 100 + 1);
         System.out.print(j[i] + " ");
      }
      System.out.println(" ");
      for (int i = 0; i < 10; i++) {
         g[i] = j[i];
         System.out.print(g[i] + " ");
      }
   }
}

Возможный ответ:

49 35 33 26 86 11 14 28 33 73
49 35 33 26 86 11 14 28 33 73

Задача 51: Программа выводит оценки учеников.

public class Test {

   public static void main(String[] args) {
      // инициализация массивов при объявлении

      String[] j = { "Вася", "Петя", "Маша", "Оля", "Коля" };
      int[] g = { 8, 7, 6, 5, 4 };

      int l = j.length;
      System.out.println("Оценки учеников:");
      for (int i = 0; i < l; i++) {
         System.out.println(j[i] + " " + g[i]);
      }
   }
}

Ответ:

Оценки учеников:
Вася 8
Петя 7
Маша 6
Оля 5
Коля 4

Задача 52: Программа формирует строку из массива.

public class Task {

   public static void main(String[] args) {

      String[] j = { "Вася", "дома", "Маша", "в школе", "Коля", "дома", "Ваня", "в школе" };
      int l = j.length;
      String stroka = "";

      for (int i = 0; i < l; i = i + 2) {
         stroka = stroka + j[i] + " " + j[i + 1] + ". ";

      }
      System.out.print(stroka);
   }
}

Ответ:

Вася дома.Маша в школе.Коля дома.Ваня в школе.

Задача 53: Программа генерирует случайные фразы из массивов строк.

public class Game {

   public static void main(String[] args) {

      String[] j1 = { "Мир", "Наука", "Торговля", "Мысль", "Коля" };
      String[] j2 = { " бежит", " движет", " обгоняет", " несет", " ведет" };
      String[] j3 = { " быстро.", " умно.", " рьяно.", " мудро.", " круто." };

      int i1 = (int) (Math.random() * 5);
      int i2 = (int) (Math.random() * 5);
      int i3 = (int) (Math.random() * 5);

      String stroka = j1[i1] + j2[i2] + j3[i3];
      System.out.println(stroka);
   }
}

Возможный ответ:

Мир движет мудро.

Задача 54: Программа генерирует случайные фразы из массивов строк.

public class Game {

   public static void main(String[] args) {

      String[] j1 = { "Маша", "Даша", "Паша", "Оля", "Коля" };
      String[] j2 = { " смотрит", " учит", " читает", " мучит", " пишет" };
      String[] j3 = { " урок.", " тест.", " текст.", " задание.", " д/з." };

      int i1 = (int) (Math.random() * 5);
      int i2 = (int) (Math.random() * 5);
      int i3 = (int) (Math.random() * 5);

      String stroka = j1[i1] + j2[i2] + j3[i3];
      System.out.println(stroka);

   }
}

Возможный ответ:

Маша учит тест.

Задача 55: Пользователь вводит три слова. Программа записывает их в массив и выводит в одну строчку.

import java.util.Scanner;

public class Task {

   public static void main(String[] args) {
      Scanner sc = new Scanner(System.in);
      String stroka;
      String mas[] = new String[3];
      for (int i = 0; i < 3; i++) {
         System.out.println("Введите слово:");
         stroka = sc.nextLine();
         mas[i] = stroka;
      }
      sc.close();
      for (int i = 0; i < 3; i++) {
         System.out.print(mas[i] + " ");
      }
   }
}

Возможный ответ:

Пользователь вводит:
Иду
домой
быстро.

Программа выводит:
Иду домой быстро.

Задача 56: Программа выводит два массива.

public class Task {

   public static void main(String[] args) {
      String[] j = { "Вася", "Петя", "Маша", "Оля", "Коля" };
      int[] g = { 8, 7, 10, 5, 4 };

      for (String x : j) {
         System.out.print(x + " ");
      }
      System.out.println("");
      for (int y : g) {
         System.out.print(y + " ");
      }
   }
}

Ответ:

Вася Петя Маша Оля Коля
8 7 10 5 4

Задача 57: Программа выводит количество 5-рок в массиве.

public class Task {

   public static void main(String[] args) {
      int[] g = { 8, 7, 10, 5, 4, 9, 2 };

      int num = 0;

      for (int y : g) {
         if (y == 5) {
            num = num + 1;
         }
      }
      System.out.println(num);
   }
}

Ответ:
1

Задача 58: Программа формирует массив, состоящий из чисел от 1 до 10. Пользователь вводит число. Программа сообщает сколько раз встречается введенное число в массиве.

import java.util.Scanner;

public class Test {

   public static void main(String[] args) {
      int[] g = new int[10];
      for (int i = 0; i < 10; i++) {
         g[i] = (int) (Math.random() * 10 + 1);
      }
      System.out.println("Введите число:");
      Scanner sc = new Scanner(System.in);
      int a = sc.nextInt();
      sc.close();
      int num = 0;

      for (int y : g) {
         if (y == a) {
            num = num + 1;
         }
      }
      System.out.println(a + " повторяется " + num + " раз");
   }
} 

Возможный ответ:

Пользователь вводит число 5.

Программа выводит:

5 повторяется 1 раз

Задача 59: Программа здоровается с каждым членом семьи по отдельности и со всеми вместе.

public class Home {

   public static void main(String[] args) {
      String[] j = { "папа", "мама", "сын", "дочь" };

      for (String x : j) {
         System.out.println("Здравствуй, " + x);
      }
      System.out.println("Всем привет");
   }
}

Ответ:

Здравствуй, папа
Здравствуй, мама
Здравствуй, сын
Здравствуй, дочь
Всем привет

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

public class Home {

   public static void main(String[] args) {
      String[] j = { "папа", "мама", "сын", "дочь" };

      for (String x : j) {
         System.out.println("Здравствуй, " + x);
      }
      for (String s : j) {
         System.out.println("Пока, " + s);
      }
   }
}

Ответ:

Здравствуй, папа
Здравствуй, мама
Здравствуй, сын
Здравствуй, дочь
Пока, папа
Пока, мама
Пока, сын
Пока, дочь

Задача 61: Программа заполняет двухмерный массив таблицей умножения и выводит таблицу умножения.

public class Test {

   public static void main(String[] args) {

      int multiplication[][] = new int[10][10];
      for (int i = 1; i < 10; i++) {
         for (int j = 1; j < 10; j++) {
            multiplication[i][j] = i * j;
            System.out.print(multiplication[i][j] + " ");
         }
         System.out.println("");
      }
   }
}

Ответ:

1 2 3 4 5 6 7 8 9 10
2 4 6 8 10 12 14 16 18 20
3 6 9 12 15 18 21 24 27 30
4 8 12 16 20 24 28 32 36 40
5 10 15 20 25 30 35 40 45 50
6 12 18 24 30 36 42 48 54 60
7 14 21 28 35 42 49 56 63 70
8 16 24 32 40 48 56 64 72 80
9 18 27 36 45 54 63 72 81 90
10 20 30 40 50 60 70 80 90 100

Задача 62: Программа заполняет массив, как показано ниже:

1 0 0 0 0 0 0 0 0 0
1 1 0 0 0 0 0 0 0 0
1 1 1 0 0 0 0 0 0 0
1 1 1 1 0 0 0 0 0 0
1 1 1 1 1 0 0 0 0 0
1 1 1 1 1 1 0 0 0 0
1 1 1 1 1 1 1 0 0 0
1 1 1 1 1 1 1 1 0 0
1 1 1 1 1 1 1 1 1 0
1 1 1 1 1 1 1 1 1 1

public class Test {

   public static void main(String[] args) {

      int multiplication[][] = new int[10][10];
      for (int i = 0; i < 10; i++) {
         for (int j = 0; j < 10; j++) {
            if (i < j) {
               multiplication[i][j] = 0;
            } else {
               multiplication[i][j] = 1;
            }
         }
      }
      for (int i = 0; i < 10; i++) {
         for (int j = 0; j < 10; j++) {
            System.out.print(multiplication[i][j] + " ");
         }
         System.out.println("");
      }
   }
}

Ответ:

1 0 0 0 0 0 0 0 0 0
1 1 0 0 0 0 0 0 0 0
1 1 1 0 0 0 0 0 0 0
1 1 1 1 0 0 0 0 0 0
1 1 1 1 1 0 0 0 0 0
1 1 1 1 1 1 0 0 0 0
1 1 1 1 1 1 1 0 0 0
1 1 1 1 1 1 1 1 0 0
1 1 1 1 1 1 1 1 1 0
1 1 1 1 1 1 1 1 1 1

Задача 63: Программа заполняет массив, как показано ниже:
0 1 1 1 1 1 1 1 1 1
0 0 1 1 1 1 1 1 1 1
0 0 0 1 1 1 1 1 1 1
0 0 0 0 1 1 1 1 1 1
0 0 0 0 0 1 1 1 1 1
0 0 0 0 0 0 1 1 1 1
0 0 0 0 0 0 0 1 1 1
0 0 0 0 0 0 0 0 1 1
0 0 0 0 0 0 0 0 0 1
0 0 0 0 0 0 0 0 0 0

public class Test {

   public static void main(String[] args) {

      int multiplication[][] = new int[10][10];
      for (int i = 0; i < 10; i++) {
         for (int j = 0; j < 10; j++) {
            if (i >= j) {
               multiplication[i][j] = 0;
            } else {
               multiplication[i][j] = 1;
            }
         }
      }
      for (int i = 0; i < 10; i++) {
         for (int j = 0; j < 10; j++) {
            System.out.print(multiplication[i][j] + " ");
         }
         System.out.println("");
      }
   }
}

Ответ:

0 1 1 1 1 1 1 1 1 1
0 0 1 1 1 1 1 1 1 1
0 0 0 1 1 1 1 1 1 1
0 0 0 0 1 1 1 1 1 1
0 0 0 0 0 1 1 1 1 1
0 0 0 0 0 0 1 1 1 1
0 0 0 0 0 0 0 1 1 1
0 0 0 0 0 0 0 0 1 1
0 0 0 0 0 0 0 0 0 1
0 0 0 0 0 0 0 0 0 0

Задача 64: Программа заполняет массив числами по порядку и выводит его.

public class Game {
   public static void main(String[] args) {
      String[][] field = new String[5][5];
      int num = 1;
      for (int i = 0; i < 5; i++) {
         for (int j = 0; j < 5; j++) {
            field[i][j] = " " + num;
            System.out.print(field[i][j]);
            num++;
         }
         System.out.println("");
      }
   }
}

Ответ:

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

Задача 65: Программа выводит двухмерный массив. Массив инициализируется при объявлении.

public class Test {

   public static void main(String[] args) {
      // инициализация двухмерного массива

      String mas[][] = { { "Зима", "Весна", "Лето", "Осень" },
            { "Папа", "Мама", "Сын", "Дочь" },
            { "Холодно", "Тепло", "Жарко", "Комфортно" } };
      for (int i = 0; i < 3; i++) {
         for (int j = 0; j < 4; j++) {
            System.out.print(mas[i][j] + " ");
         }
         System.out.println("");
      }
   }
}

Ответ:

Зима Весна Лето Осень
Папа Мама Сын Дочь
Холодно Тепло Жарко Комфортно

Задача 66: Программа переводит строковый тип данных в целочисленный и снова переводит в строковый тип данных.

public class Task {

   public static void main(String[] args) {
      // приведение String к int и обратно
      String stroki[] = { "Суббота", "5", "Воскресенье", "2" };
      System.out.println(stroki[0] + " - " + stroki[1] + ", " + stroki[2]
            + " - " + stroki[3]);
      int j = Integer.parseInt(stroki[1]);
      j++;
      stroki[1] = j + "";
      int g = Integer.parseInt(stroki[3]);
      g = g + 5;
      stroki[3] = g + "";
      System.out.println(stroki[0] + " - " + stroki[1] + ", " + stroki[2]
            + " - " + stroki[3]);
   }
}

Ответ:

Суббота — 5, Воскресенье — 2
Суббота — 6, Воскресенье — 7

Задача 67: Программа переводит строковый тип данных в целочисленный и снова переводит в строковый тип данных.

public class Task {

   public static void main(String[] args) {
      // приведение String к int и обратно
      String stroki[] = { "Суббота", "5", "Воскресенье", "2" };
      System.out.println(stroki[0] + " - " + stroki[1] + ", "
            + stroki[2] + " - " + stroki[3]);
      int j = Integer.valueOf(stroki[1]);
      j++;
      stroki[1] = Integer.toString(j);
      int g = Integer.valueOf(stroki[3]);
      g = g + 5;
      stroki[3] = Integer.toString(g);
      System.out.println(stroki[0] + " - " + stroki[1] + ", " + stroki[2]
            + " - " + stroki[3]);
   }
}

Ответ:

Суббота — 5, Воскресенье — 2
Суббота — 6, Воскресенье — 7

Задача 68: Программа приводит дробный тип данных в строковый тип данных, целочисленный тип и укороченный дробный тип, а потом обратно приводит в дробный тип данных.

public class Task {

   public static void main(String[] args) {
      // приведение double к int, double к String, double к float
      // приведение int к double, String к double, float к double

      double a = 1.55;
      double b = 1.77;
      double c = 1.88;
      double d = 1.12345678901;

      System.out.println(a + " " + b + " " + c + " " + d);

      int ai = (int) a;
      String bs = b + "";
      String cs = Double.toString( c);
      float df = (float) d;

      System.out.println(ai + " " + bs + " " + cs + " " + df);

      a = (double) ai;
      b = Double.valueOf(bs);
      c = Double.valueOf(cs);
      d = (double) df;

      System.out.println(a + " " + b + " " + c + " " + d);
   }
}

Ответ:

1.55 1.77 1.88 1.12345678901
1 1.77 1.88 1.1234568
1.0 1.77 1.88 1.1234568357467651

Задача 69: Программа приводит boolean данные к строковым данным и снова переводит в boolean данные.

public class Task {

   public static void main(String[] args) {
      // приведение boolean к String и обратно

      boolean a = true;
      boolean b = false;

      System.out.println(a + " " + b);

      String as = a + "";
      String bs = Boolean.toString(b);

      System.out.println(as + " " + bs);

      a = Boolean.parseBoolean(as);
      b = Boolean.valueOf(bs);

      System.out.println(a + " " + b);
   }
}

Ответ:

true false
true false
true false

Введите свой email адрес для того, чтобы подписаться на мой блог:


knopkisoc

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *