我有一个任务,要编写一个程序,该程序使用triangleType方法,我必须编写该方法,从用户那里获取三个int输入并输出三角形类型。在该方法中,我首先需要按升序对整数排序,以便我需要使用的比较能够正常工作。我知道我正确地完成了代码中的排序部分,因为我甚至在开始尝试确定三角形类型之前就对其进行了测试。我需要使用这些比较来找到三角形类型:“如果A B
package trianglemethod;
import javax.swing.JOptionPane;
public class TriangleMethod
{
public static void main(String[] args)
{
String wordaA, wordbB, wordcC, answer;
do
{
System.out.println("Please enter all 3 side lengths of the triangle in any order.");
wordaA = JOptionPane.showInputDialog("Enter side 1:");
wordbB = JOptionPane.showInputDialog("Enter side 2:");
wordcC = JOptionPane.showInputDialog("Enter side 3:");
int aA = Integer.parseInt(wordaA);
int bB = Integer.parseInt(wordbB);
int cC = Integer.parseInt(wordcC);
triangleType(aA,bB,cC);
System.out.println("Would you like to enter another triangle?");
answer = JOptionPane.showInputDialog("Would you like to enter another triangle?");
} while (answer.equalsIgnoreCase("yes"));
}
static void triangleType(int aA, int bB, int cC) {
int a=0, b=0, c=0;
if (aA > bB && aA > cC)
{
if (bB > cC)
{
a = cC;
b = bB;
c = aA;
}
else if (cC > bB)
{
a = bB;
b = cC;
c = aA;
}
}
if (bB > aA && bB > cC)
{
if (aA > cC)
{
a = cC;
b = aA;
c = bB;
}
else if (cC > aA)
{
a = aA;
b = cC;
c = bB;
}
}
if (cC > aA && cC > bB)
{
if (aA > bB)
{
a = bB;
b = aA;
c = cC;
}
else if (bB > aA)
{
a = aA;
b = bB;
c = cC;
}
}
if (a+b<=c)
{
JOptionPane.showMessageDialog(null,"Invalid Triangle");
} if (a==c) {
JOptionPane.showMessageDialog(null,"Triangle is Equilateral");
} if (a==b || b==c){
JOptionPane.showMessageDialog(null, "Triangle is Isosceles");
}
else {
JOptionPane.showMessageDialog(null,"Triangle is Scalene");
}
}
}
实际上有两个问题。
if (a==c)
if (a==b || b==c)
if(aA>=bB && aA>=cC){
a = aA;
if(bB >= cC){
b = bB;
c = cC;
} else {
b = cC;
c = bB;
}
} else if (bB >= aA && bB >= cC){
a = bB;
if(aA >= cC){
b = aA;
c = cC;
} else {
b = cC;
a = aA;
}
} else {
a = cC;
if(cC >= aA){
b = cC;
c = aA;
} else {
b = aA;
c = cC;
}
}
我很困惑,你为什么不能
if (a == b && b == c) {
JOptionPane.showMessageDialog(null,"Triangle is Equilateral");
} else if ((a == b && a != c) || (a == c && a != b) || (b == c && b != a)) {
JOptionPane.showMessageDialog(null, "Triangle is Isosceles");
} else if (a != b && a != c && b != c){
JOptionPane.showMessageDialog(null,"Triangle is Scalene");
} else {
JOptionPane.showMessageDialog(null,"Invalid Triangle");
}
这里有三个不同的if语句,分别进行计算。相反,从问题的描述来看,听起来您需要一个带有多个条件分支的if语句(即,else if子句):
if (a+b<=c)
{
JOptionPane.showMessageDialog(null,"Invalid Triangle");
} else if (a==c) {
JOptionPane.showMessageDialog(null,"Triangle is Equilateral");
} else if (a==b || b==c){
JOptionPane.showMessageDialog(null, "Triangle is Isosceles");
} else {
JOptionPane.showMessageDialog(null,"Triangle is Scalene");
}
我正试图通过api创建一个新任务。 电话是: Curl-umy_token:https://app.asana.com/api/1.0/tasks-d"name=demo_task"-d"workspace=875236917006" 以下是回应: {“错误”:[{“消息”:“工作区:类型不正确”}]} 我哪里错了?
我有一个问题。我写了代码,需要指出数组的元素比数组的下一个元素大。您可以在输出图片上看到数组$arr应该只包含元素70,因为
打开和关闭连接: 注册用户 错误消息 '/'应用程序中的服务器错误。 INSERT INTO语句中存在语法错误。 描述:在执行当前Web请求期间发生未处理的异常。请查看堆栈跟踪以获取有关错误及其在代码中的起源的更多信息。 异常详细信息:系统。数据。OleDb。OleDbException:INSERT INTO语句中的语法错误。 源错误: 第100行:命令。ExecuteNonQuery();第1
假设您有一个二进制文件,其中包含类型为int或double的数字。您不知道文件中数字的顺序,但它们的顺序记录在文件开头的字符串中。字符串由表示int的字母i和表示double的字母d组成,按后续数字类型的顺序排列。字符串是使用writeUTF方法写入的。 例如,字符串“iddiiddd”表示该文件包含八个值,如下所示:一个整数,后跟两个双精度,后跟两个整数,后跟三个双精度。 我的问题是,如果字符串
我们的OOP老师给我布置了一个作业。虽然我的代码看起来很好,但我仍然面临这个问题。 我必须从用户那里获取三角形顶点的坐标,并且必须判断它是否是一个r直角三角形。所以我简单地用毕达哥拉斯定理来求它,我们都知道用条件:h*h=b*b+p*p 但令人惊讶的是,这对某些特定的直角三角形不起作用。这里有一个这样的三角形: 顶点A:(x,y)=(1,3) 顶点B:(x,y)=(1,1) 顶点C:(x,y)=(
我有一个问题,比较布尔值的if语句不起作用。最后一个if语句,其中notifFlag==true,如果我将它放在那里,它就不起作用了。日志显示notifFlag设置为true,但if语句未运行。但是,如果删除notifFlag==true,则if语句将运行。 带有标志得日志: 没有标志得日志: