我如何使用bitwise
运算符而不是if statements
来编写程序,它将解释为两个间隔的端点的数字轴上的坐标:A = [a1, a2] 和 B = [b1, b2]。程序从用户那里读取一个 int 类型的数字(例如 x),并打印是否为
• x ∈ A
• x ∈ B
• x ∈ A B
• x ∈ B A
• x ∈ A ∩ B
• x ∈ A ∪ B
例如,如果定义的间隔为 A = [2, 4] 和 B = [1, 6],并且读取的数字为 x = 5,则程序应打印如下内容:
Interval A = [2, 4]
Interval B = [1, 6]
Enter x 5
x in A: false
x in B: true
x in AB: false
x in BA: true
x in intersection of A and B: false
x in union of A and B: true
所以现在这就是我所拥有的
import org.w3c.dom.ranges.Range;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("input a1");
int a1 = sc.nextInt();
System.out.println("input a2");
int a2 = sc.nextInt();
System.out.println("input b1");
int b1 = sc.nextInt();
System.out.println("input b2");
int b2 = sc.nextInt();
int a =a1&a2;
System.out.println("Interval A = " +a);
int b = b1 & b2;
System.out.println("Interval B = " + b);
System.out.println("input x");
int x = sc.nextInt();
System.out.println("Interval A = [" + a1 + "," + a2 + "]");
System.out.println("Interval B = [" + b1 + "," + b2 + "]");
System.out.println("Enter x " + x);
System.out.println("x in A: ");
System.out.println("x in B: ");
System.out.println("x in A/B: ");
System.out.println("x in B/A: ");
System.out.println("x in intersection of A and B: ");
System.out.println("x is union of A and B: ");
System.out.println("x in symm. diff. of A and B: ");
}
}
你可以写这个(只需在Java中使用Array):
import java.util.*;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.print("input a1: ");
int a1 = sc.nextInt();
System.out.print("input a2: ");
int a2 = sc.nextInt();
System.out.print("input b1: ");
int b1 = sc.nextInt();
System.out.print("input b2: ");
int b2 = sc.nextInt();
System.out.print("input x: ");
int x = sc.nextInt();
int arr1[] = new int [a2-a1+1];
int arr2[] = new int [b2-b1+1];
for (int i = 0, j = a1; j <= a2; i++, j++) {
arr1[i] = j;
}
for (int i = 0, j = b1; j <= b2; i++, j++) {
arr2[i] = j;
}
System.out.println("Interval A: [" + a1 + ", " + a2 + "]");
System.out.println("Interval B: [" + b1 + ", " + b2 + "]");
System.out.println("Enter x: " + x);
System.out.println("x in A: " + Exist(arr1, x));
System.out.println("x in B: " + Exist(arr2, x));
System.out.println("x in A/B: " + Relative_Complement(arr1, arr2, x));
System.out.println("x in B/A: " + Relative_Complement(arr2, arr1, x));
System.out.println("x in intersection of A and B: " + Intersection(arr1,arr2, x));
System.out.println("x is union of A and B: " + Union(arr1, arr2, x));
}
static boolean Exist(int arr[], int x){
for (int i = 0; i < arr.length; i++) {
if(x == arr[i])
return true;
}
return false;
}
static boolean Relative_Complement(int arr1[], int arr2[], int x){
int arr3[] = new int [arr1.length + arr2.length + 1];
int arr4[] = new int [arr1.length + arr2.length + 1];
for (int k = 0, i = 0; i < arr2.length; i++){
for (int j = 0; j < arr1.length; j++) {
if(arr2[i] == arr1[j]){
arr3[k++] = arr2[i];
}
}
}
for (int p = 0, j = 0; j < arr1.length; j++) {
if(!Exist(arr3, arr1[j])){
arr4[p++] = arr1[j];
}
}
return Exist(arr4, x);
}
static boolean Union(int arr1[], int arr2[], int x){
int arr3[] = new int [arr1.length + arr2.length];
int k = 0;
for (int i = 0; i < arr1.length; i++, k++)
arr3[k] = arr1[i];
for (int i = 0; i < arr2.length; i++, k++)
arr3[k] = arr2[i];
return Exist(arr3, x);
}
static boolean Intersection(int arr1[], int arr2[], int x){
int arr3[] = new int [arr1.length + arr2.length];
for (int i = 0; i < arr2.length; i++){
for (int j = 0; j < arr1.length; j++) {
if(arr2[i] == arr1[j]){
arr3[i] = arr2[i];
}
}
}
return Exist(arr3, x);
}
}
注意:根据您的问题,a1相关内容
最新更新
- 无法使用 conda env 导入 OCI 笔记本会话中的模型配置详细信息
- c - while循环中VSC的分段错误
- 无法将url数据获取到模型类中
- 如何将DataGridTextColumn绑定到WinUI3中绑定的对象中的方法?
- 错误在cobol程序上打开VB文件来处理XML文件
- while循环在python中没有爆发
- yii2查询具有多个非和或的数据提供程序
- Libgdx:渲染方法
- Pycharm 错误:预期类型 [类名] 改为"str"
- 运行我的代码时出现错误:未知的自定义元素
- 在Selenium 4中使用Behat和Mink Selenium2驱动程序为Microsoft Edge浏览器运行测试
- 宽度未知的可变列数
- 我必须在.env文件中存储哨兵公钥吗?
- Mongodb子文档没有自动生成对象id Typegoose/ mongoose
- 类型中构造函数的参数 0 需要找不到类型为"org.hibernate.SessionFactory"的 Bean
- 根据r中的日期和小时每隔15分钟聚合数据
- 如何解决关于Optuna存储的错误?
- c语言中OO继承的混叠问题
- launchWebAuthFlow窗口在chrome扩展关闭后保持打开
- 使用非初始结构变量作为参数调用函数不会产生警告
- Pytorch - mat1和mat2形状不能相乘(3328x13和9216x4096)
- 我如何得到一个节点超时的内部id使用符号没有硬编码查找索引?
- spring引导应用程序读取另一个jar的应用程序配置值吗?
- 如何在main.js中导入javascript库以在整个vue应用程序中获得全局可用性?
- 使段落出现,并使其在点击显示下一个段落时消失
- GROUP_CONCAT(DISTINCT xxx)将连接值的顺序颠倒
- r语言 - 循环遍历列表的列表
- 如何使用Pandas数据框架将R代码语法转换为Python语法?
- 当我运行服务器我得到这个错误:Django 405错误
- 如何将列表中的每个数字与另一个列表中的每个数字相乘
热门标签:
javascript python java c# php android html jquery c++ css ios sql mysql arrays asp.net json python-3.x ruby-on-rails .net sql-server django objective-c excel regex ruby linux ajax iphone xml vba spring asp.net-mvc database wordpress string postgresql wpf windows xcode bash git oracle list vb.net multithreading eclipse algorithm macos powershell visual-studio image forms numpy scala function api selenium