一段小代码的思考

一个题目是女孩找对象,如果男方身高180cm,资产超过千万,长得帅,那女孩就会一定嫁,如果满足了其中一个条件女孩就决定还是嫁吧,有胜过无

如果男生条件都不满足,那女孩坚决不嫁

本来是个很简单的条件判断,却在运行中出现了问题


import java.util.*;

 public class    Java {

public static void main(String [] agrs){

             Sanner in = new Scanner (System.in);

               System.out.println ("请输入身高");

                int   h   =in.nextInt();                                        //输入语句

                 System.out.println ("请输入资产(千万)");

 int m  =in.nextInt();

                  System.out.println ("请输入是否颜值高");

                   String b =in.next();           // 此处调函数包 出来        

                   if (h>=180  &&  m>=1000  &&    b.equals("yes")) {                 //判断姑娘一定嫁的条件是否成立

                       System.out.println ("一定嫁")      ;

                    }else if (h>=180  ||  m >=1000 ||  b.equals("yes")){               //判断姑娘是否会嫁

                          System.out.println ("还是嫁了吧,比上不足,比下有余") ;

                      }else{  //否则就不嫁

                             System.out.println ("坚决不嫁");

                       }

这段代码最初设定的条件语句是这样的(h >=180&&  m>=1000&&b == "yes")

在运行时发现输入   175   ,600 和yes三个数据时运行结果为坚决不嫁,这就跟

设想 的不一样,目前只能想到用 equals,来解决这个问题,原因大概是,yes是b 

所指向内存的值,并不是完全等于b的值

          

### 回答1: 我可以给你示例一段使用Go语言编写的有趣代码:package main import "fmt" func main() { fmt.Println("Hello, 世界!") } ### 回答2: 下面是一个用Go语言写的有趣代码片段,它能生成一个随机密码,并检查口令的强度。 ```go package main import ( "fmt" "math/rand" "time" ) const ( uppercaseLetters = "ABCDEFGHIJKLMNOPQRSTUVWXYZ" lowercaseLetters = "abcdefghijklmnopqrstuvwxyz" numbers = "0123456789" specialChars = "!@#$%^&*()_+{}[]|:;<>,.?~" ) func main() { rand.Seed(time.Now().UnixNano()) password := generatePassword(10) strength := checkPasswordStrength(password) fmt.Println("随机生成的密码:", password) fmt.Println("密码强度:", strength) } func generatePassword(length int) string { characters := uppercaseLetters + lowercaseLetters + numbers + specialChars password := make([]byte, length) for i := range password { password[i] = characters[rand.Intn(len(characters))] } return string(password) } func checkPasswordStrength(password string) string { strength := 0 if len(password) >= 8 { strength++ } if containsUpperCase(password) { strength++ } if containsLowerCase(password) { strength++ } if containsNumber(password) { strength++ } if containsSpecialChar(password) { strength++ } switch strength { case 0: return "非常弱" case 1: return "弱" case 2: return "一般" case 3: return "强" case 4: return "非常强" default: return "未知" } } func containsUpperCase(password string) bool { for _, char := range password { if char >= 'A' && char <= 'Z' { return true } } return false } func containsLowerCase(password string) bool { for _, char := range password { if char >= 'a' && char <= 'z' { return true } } return false } func containsNumber(password string) bool { for _, char := range password { if char >= '0' && char <= '9' { return true } } return false } func containsSpecialChar(password string) bool { for _, char := range password { if char >= 33 && char <= 47 { return true } } return false } ``` 以上代码会生成一个度为10的随机密码,并根据密码中包含的字符类型(大写字母、小写字母、数字和特殊字符)判断密码的强度。输出将显示所生成的随机密码和其强度等级(非常弱,弱,一般,强或非常强)。 ### 回答3: 以下是用Go语言写的一段有趣的代码: ```go package main import ( "fmt" "math/rand" "time" ) func main() { rand.Seed(time.Now().UnixNano()) answers := []string{ "一定是的", "不可能", "看情况吧", "前途光明", "还需努力", } question := "你今天能够成功吗?" fmt.Println("问题:", question) time.Sleep(1 * time.Second) fmt.Print("思考中") for i := 0; i < 5; i++ { fmt.Print(".") time.Sleep(500 * time.Millisecond) } fmt.Println() answerIndex := rand.Intn(len(answers)) answer := answers[answerIndex] fmt.Println("答案:", answer) } ``` 这段代码实现了一个简单的“答题游戏”。程序会随机选择一个答案,每次运行的结果可能会不同。首先,程序会展示一个问题,然后通过一段时间的演示思考过程,最后给出答案。代码中的`answers`是一组可能的答案,`question`是问题,通过使用随机数生成器得到一个随机的答案。这段代码引入了Go语言的时间、随机数和字符串处理等知识点,同时也能够带给用户一些乐趣。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值