如何在 Java 中使点同质化?
javaobject oriented programmingprogramming
在本文中,我们将了解如何使点同质化。射影平面上的任何点都由三元组(X,Y,Z)表示,称为点的齐次坐标或射影坐标,其中X,Y和Z不全为0。如果坐标乘以一个共同因子,则给定一组齐次坐标所表示的点保持不变。
根据问题陈述,我们必须通过取任何共同因子并将其与给定点相乘来使点同质化。
让我们开始吧!
向您展示一些实例
实例-1
假设点为(10,20,25)
那么这些点的共同因子为5,10。
假设我们取最大共同因子即10来使给定点同质化。
然后对点进行同质化后,结果将是 −
同质点为:(100, 200, 250)
实例-2
假设点为 (8, 16, 12)
那么这些点的共同因子为 2, 4。
假设我们取最大共同因子,即 4,以使给定的点同质化。
那么在对点进行同质化之后,结果将是
同质点为:(32, 64, 48)
实例-3
假设点为 (12, 16, 20)
那么这些点的共同因子为 2, 4。
假设我们取最大共同因子,即4 使给定的点均质化。
然后,在使点均质化之后,结果将是
均质点为:(48、64、80)
算法
步骤 1 - 声明并初始化变量。
步骤 2 - 声明共同因子。
步骤 3 - 声明点。
步骤 4 - 通过乘以共同因子找到均质点。
步骤 5 - 打印结果。
多种方法
我们提供了不同方法的解决方案。
通过使用静态输入
使用用户定义方法
让我们逐一查看程序及其输出。
方法 1:使用静态输入
在此方法中,我们将声明点和公因数,然后通过乘以公因数来找到同质点。
示例
public class Main{ //main 方法 public static void main(String[] args){ //初始化变量 int x, y, z; //declaring the common factor int a = 10; //declaring the points int a1 = 10, a2 = 20, a3 = 25; //finding the homogeneous points x = a * a1; y = a * a2; z = a * a3; //打印结果 System.out.println("Homogeneous points: (" + x + ", " + y + ", " + z + ")"); } }
输出
Homogeneous points: (100, 200, 250)
方法 2:使用用户定义方法
在此方法中,我们将声明点和公因数,然后通过使用用户定义方法乘以公因数来找到同质点。
示例
public class Main{ //main 方法 public static void main(String[] args){ //declaring the points int a1 = 8, a2 = 16, a3 = 12; //调用用户定义的方法 func(a1, a2, a3); } //用户定义的方法 static void func(int a1, int a2, int a3){ //初始化变量 int x, y, z; //declaring the commom factor int a = 4; //finding the homogeneous points x = a * a1; y = a * a2; z = a * a3; //打印结果 System.out.println("Homogeneous points: (" + x + ", " + y + ", " + z + ")"); } }
输出
Homogeneous points: (32, 64, 48)
在本文中,我们探讨了如何使用 Java 编程语言对点进行同质化。