Rumah > Java > javaTutorial > teks badan

Program Java untuk mencetak simbol swastika (swastika) dengan mengambil input daripada pengguna

WBOY
Lepaskan: 2023-08-30 10:01:03
ke hadapan
1426 orang telah melayarinya

Di sini, dua kaedah berbeza digunakan untuk membuat reka bentuk ini menggunakan Java. Dalam kedua-dua kaedah, saiz swastika ditentukan oleh pengguna. Pengguna menyediakan input untuk dimensi jadual atau bingkai. Swastika sering digunakan sebagai contoh untuk mempelajari konsep susun atur baris, lajur dan jadual menggunakan bahasa yang berbeza, termasuk java.

Swastika ialah simbol agama Hindu, Buddha dan Jainisme.

Program Java untuk mencetak simbol swastika (swastika) dengan mengambil input daripada pengguna

Buat swastika menggunakan Java.

Di sini, tiga kaedah berbeza digunakan untuk mencipta reka bentuk ini menggunakan Java.

Pelbagai kaedah

Masalah yang diberikan akan diselesaikan melalui tiga kaedah berbeza.

  • Dengan menggunakan dua "untuk gelung".

  • Dengan menggunakan kaedah drawLine().

  • Dengan menggunakan perpustakaan JavaFX.

Kaedah 1: Gunakan dua "untuk gelung"

Nombor lajur dan nombor baris akan dimasukkan oleh pengguna. Corak swastika akan diletakkan di kawasan persegi. Aksara "." pada papan kekunci digunakan untuk membuat corak. Kira titik tengah lebar dan titik tengah tinggi segi empat sama. Gunakan dua "untuk gelung" untuk mencetak garis putus-putus menegak dan mendatar dengan jurang yang sesuai. Had kaedah ini ialah garisan tidak berterusan.

Algoritma 1

  • Langkah 1 - Import perpustakaan yang diperlukan.

  • Langkah 2 - Tentukan saiz bentuk yang anda ingin lukis.

  • Langkah 3 - Tetapkan baris dan lajur jadual.

  • Langkah 4 - Lukis corak swastika menggunakan "." watak.

  • Langkah 5 - Paparkan hasil.

Contoh (Kaedah 1)

import java.util.Scanner;
public class swastika{
   public static void main (String[] args){
      int n;
      Scanner sc=new Scanner(System.in);
      System.out.print("Enter the row and col value <Select a number between 10 to 50 > :- ");
      n=sc.nextInt();
      sc.close();
      int row = n, col = n;
      for (int i = 0; i < row; i++) {
         for (int j = 0; j < col; j++){
            if (i < row / 2){
               if (j < col / 2){
                  if (j == 0)
                  System.out.print(".");
                  else
                  System.out.print(" "+ " ");
               }
               else if (j == col / 2)
                  System.out.print(" .");
               else{
                  if (i == 0)
                  System.out.print(" .");
               }
            }
            else if (i == row / 2)
               System.out.print(". ");
            else{
               if (j == col / 2 || j == col - 1)
                  System.out.print(". ");
               else if (i == row - 1){
                  if (j <= col / 2 || j == col - 1)
                     System.out.print(". ");
                  else
                  System.out.print(" "+ " ");
               }
               else
               System.out.print(" "+" ");
            }
         }
         System.out.print("\n");
      }
   };
}
Salin selepas log masuk

Arahan

  • import java.util.Scanner - Untuk mendapatkan input pengguna, kelas Pengimbas diimport di sini. Ia adalah sebahagian daripada pakej java.util.

  • Scanner sc=new Scanner(System.in) - sc ialah objek kelas Pengimbas. System.in digunakan untuk mendapatkan input pengguna melalui papan kekunci.

  • sc.close() - Digunakan untuk menutup objek pengimbas selepas menyelesaikan kerja.

  • System.out.print() - untuk mencetak output.

Output (Kaedah 1)

Program Java untuk mencetak simbol swastika (swastika) dengan mengambil input daripada pengguna

Kaedah keluaran 1: swastika

Kaedah 2:- Dengan menggunakan kaedah drawLine()

Gunakan fungsi drawLine untuk menetapkan saiz bingkai dan reka bentuk swastika. Lukis enam garisan untuk membuat corak swastika. java.awt.Graphics dan java.awt.Graphics2D digunakan untuk membuat lukisan. Kelebihan kaedah ini ialah garisan berterusan.

Algoritma

  • Langkah 1 - Import perpustakaan java.awt.Graphics2D yang diperlukan.

  • Langkah 2 - Tentukan saiz grafik. Dimensi grafik juga boleh dimasukkan sebagai input.

  • Langkah 3 - Tetapkan saiz bingkai lukisan simbol.

  • Langkah 4 - Lukiskan swastika. Lukis garis berterusan dari satu titik ke titik yang lain.

  • Langkah 5 - Paparkan hasil.

Arahan

  • import java.util.Scanner - Komponen ialah objek yang boleh dipaparkan pada skrin dan pengguna boleh berinteraksi dengannya. Contohnya, butang.

  • java.awt.Graphics2D - sIni ialah kelas yang diperlukan untuk lukisan 2D di Jawa. Kelas ini memanjangkan kelas Grafik asal dan menyediakan fungsi dan kawalan tambahan.

  • drawLine() - drawLine(int x1, int y1, int x2, int y2) digunakan untuk menentukan dua titik (x1, y1) dan (x2, y2) untuk bergabung membentuk garis.

  • NOTA - Tekan control+C dalam Command Prompt untuk menutup tetingkap Show Frame.

Contoh (Kaedah 2)

import java.awt.Component;
import java.awt.Frame;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.util.Scanner;
public class swastika_draw {
   public static void main(String[] args) {
      int n;
      Scanner sc=new Scanner(System.in);
      System.out.print("Enter the size of frame <Seclect from 300 to 700> :- ");
      n=sc.nextInt();
      sc.close();
      Frame frame = new Frame();
      frame.add(new CustomPaintComponent());
      int frameWidth = n;
      int frameHeight = n;
      frame.setSize(frameWidth, frameHeight);
      frame.setVisible(true);
   }
   static class CustomPaintComponent extends Component {
      public void paint(Graphics g) {
         Graphics2D g2d = (Graphics2D)g;
         int x1 = 10;
         int y1 = 10;
         int x2 = x1;
         int y2 = getSize().height/2;
         int x3 = getSize().width - 10;
         int y3 = y2;
         int x4= x3;
         int y4= getSize().height -10;
         int x5 = x3;
         int x6 = getSize().width/2;
         int y5= y1;
         int y6=y1;
         int x7=x6;
         int y7=y4;
         int x8=x1;
         int y8=y7;
         g2d.drawLine(x1, y1, x2, y2);
         g2d.drawLine(x2, y2, x3, y3);
         g2d.drawLine(x3, y3, x4, y4);
         g2d.drawLine(x5, y5, x6, y6);
         g2d.drawLine(x6, y6, x7, y7);
         g2d.drawLine(x7, y7, x8, y8);
      }
   }
}
Salin selepas log masuk

Output (Kaedah 2)

Program Java untuk mencetak simbol swastika (swastika) dengan mengambil input daripada pengguna

Output: lukisan swastika

Kaedah 3:- Menggunakan perpustakaan JavaFX

Pasang perpustakaan JAVAFX. javafx.scene.shape.Line dan javafx.scene.Group digunakan untuk membuat lukisan. Tetapkan saiz tempat kejadian. Reka bentuk Swastika dilakukan menggunakan fungsi Line. Lukis enam garisan ke dalam adegan untuk membentuk reka bentuk swastika. Kelebihan kaedah ini ialah garisan berterusan.

Algoritma

  • Langkah 1 - Import perpustakaan javafx yang diperlukan.

  • Langkah 2 - Tentukan saiz pemandangan.

  • Langkah 3 - Tetapkan saiz kanvas pemandangan.

  • Langkah 4 - Lukiskan swastika. Lukis garis berterusan dari satu titik ke titik yang lain. Tambahkan semua baris pada kumpulan. Letakkan kumpulan itu ke tempat kejadian.

  • Langkah 5 - Paparkan hasil.

Arahan

  • Baris() - Baris(int x1, int y1, int x2, int y2) digunakan untuk menentukan dua titik (x1, y1) dan (x2, y2) untuk bergabung membentuk garis.

  • NOTA - Untuk menggunakan javafx, pasangkannya dalam direktori yang berasingan dan jana run.bat.

  • Kandungan fail run.bat -

    javac --module-path "C:\Program Files\Java\javafx-sdk-19.0.2.1\lib" --add-modules javafx.controls,javafx.fxml %1.java

    java --module-path "C:\Program Files\Java\javafx-sdk-19.0.2.1\lib" --add-modules javafx.controls,javafx.fxml %1

示例(方法 3)

import javafx.application.Application;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.scene.shape.Line;
import javafx.stage.Stage;
public class swastika_draw1 extends Application{

   //swastika app starts here..
   @Override
   public void start(Stage stg1) {
      int x1 = 10;
      int y1 = 10;
      int x2 = x1;
      int y2 = 500/2;
      int x3 = 500 - 10;
      int y3 = y2;
      int x4= x3;
      int y4= 500 -10;
      int x5 = x3;
      int x6 = 500/2;
      int y5= y1;
      int y6=y1;
      int x7=x6;
      int y7=y4;
      int x8=x1;
      int y8=y7;
      
      //Creating swastika now....
      Line ln1= new Line(x1, y1, x2, y2);
      Line ln2= new Line(x2, y2, x3, y3);
      Line ln3= new Line(x3, y3, x4, y4);
      Line ln4= new Line(x5, y5, x6, y6);
      Line ln5= new Line(x6, y6, x7, y7);
      Line ln6= new Line(x7, y7, x8, y8);
      Group grp1 = new Group();
      adding all lines to grp1
      grp1.getChildren().add(ln1);
      grp1.getChildren().add(ln2);
      grp1.getChildren().add(ln3);
      grp1.getChildren().add(ln4);
      grp1.getChildren().add(ln5);
      grp1.getChildren().add(ln6);
      
      //Creating a Scene canvas
      Scene swastika_canvas = new Scene(grp1, 500, 500);
      
      //Set the title of the scene canvas
      stg1.setTitle("Swastika Example using JavaFx");
      
      //Adding the swastika_canvas to the stg
      stg1.setScene(swastika_canvas);
      
      //Displaying Swastika now...
      stg1.show();
   }
   //main method starts ...
   public static void main(String args[]){
      launch(args);
   }
}
Salin selepas log masuk

如何使用javafx运行程序? (方法解释)

C:\java\javaprgstu>run.bat swastika_draw1
C:\java\javaprgstu>javac --module-path "C:\Program Files\Java\javafx-sdk-19.0.2.1\lib" --add-modules javafx.controls,javafx.fxml swastika_draw1.java
C:\java\javaprgstu>java --module-path "C:\Program Files\Java\javafx-sdk-19.0.2.1\lib" --add-modules javafx.controls,javafx.fxml swastika_draw1
Salin selepas log masuk

输出(方法 3)

Program Java untuk mencetak simbol swastika (swastika) dengan mengambil input daripada pengguna

输出:使用 javafx 绘制纳粹十字记号

结论

本文中,通过Java语言使用这三种方法来制作卍字图案。第一种方法将图形打印为以表格格式展开的点。另一种方法是使用绘图表单,使用 java.awt.Graphics2D 库使用连续线绘制卍字。第三种方法使用 javafx 库将线条绘制到场景中。

Atas ialah kandungan terperinci Program Java untuk mencetak simbol swastika (swastika) dengan mengambil input daripada pengguna. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:tutorialspoint.com
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan