หากคุณยังใหม่กับ Java หรือเพียงแค่เรียนรู้ Java ก็ยังจำเป็นต้องฝึกอัลกอริทึมพื้นฐานบางอย่างซึ่งสามารถปรับปรุงการใช้ความคิดและไวยากรณ์
1. เอาต์พุตค่าสูงสุดของสองหมายเลข int
นำเข้า java.util.scanner; การสาธิตคลาสสาธารณะ {โมฆะคงที่สาธารณะหลัก (สตริง [] args) {เครื่องสแกนเนอร์สแกนเนอร์ = สแกนเนอร์ใหม่ (System.in); System.out.println ("โปรดป้อนสองจำนวนเต็มตามลำดับ: a, b (คั่นด้วยช่องว่าง)"); /*เปรียบเทียบขนาดของสองตัวเลข*/ int a = scanner.nextint (); int b = scanner.nextint (); int max; if (a> = b) {max = a; } else {max = b; } system.out.println ("ค่าสูงสุดคือ"+สูงสุด); -2. เอาต์พุตค่าสูงสุดของตัวเลข int สามตัว
การสาธิตแพ็คเกจ; นำเข้า java.util.scanner; การสาธิตคลาสสาธารณะ {โมฆะคงที่สาธารณะหลัก (สตริง [] args) {เครื่องสแกนเนอร์สแกนเนอร์ = สแกนเนอร์ใหม่ (System.in); System.out.println ("โปรดป้อนสองจำนวนเต็มในทางกลับกัน: a, b (คั่นด้วยช่องว่าง)"); int a = scanner.nextint (); int b = scanner.nextint (); int c = scanner.nextint (); Scanner.close (); /*วิธีการ 1*/ int d = (a> b)? a: b; int e = (d> c)? d: c; System.out.println ("ค่าสูงสุดคือ"+e); /*วิธีการ 2*/ if (a> b && a> c) {system.out.println ("ค่าสูงสุดคือ"+a); } อื่นถ้า (b> c && b> a) {system.out.println ("ค่าสูงสุดคือ"+b); } อื่นถ้า (c> b && c> a) {system.out.println ("ค่าสูงสุดคือ"+c); } else {system.out.println ("ข้อยกเว้นเกิดขึ้น"); -3. เขียนโปรแกรมเพื่อพิจารณาว่าปีนั้นเป็นปีที่ก้าวกระโดด
การสาธิตแพ็คเกจ; นำเข้า java.util.scanner; /*ผู้ตัดสินว่าผู้ใช้ปีก้าวกระโดดและสามารถหารได้ 4 แต่ไม่สามารถหารได้ 100 หรือสามารถหารได้ 400 ซึ่งเป็นปีที่ก้าวกระโดด จำเป็นต้องพิจารณาว่าปีหนึ่งเป็นปีที่ก้าวกระโดดหรือไม่ ผลลัพธ์ที่จำเป็น: ปีนี้เป็นปีที่ก้าวกระโดด*/ การสาธิตคลาสสาธารณะ {โมฆะคงที่สาธารณะหลัก (สตริง [] args) {สแกนเนอร์สแกนเนอร์ = สแกนเนอร์ใหม่ (System.in); System.out.println ("โปรดป้อนปี:"); int year = scanner.nextint (); /*วิธีการ 1*/ ถ้า ((ปี % 4 == 0 && ปี % 100! = 0) || ปี % 400 == 0) {System.out.println ("ปีนี้เป็นปีกระโดด"); } else {system.out.println ("ปีนี้ไม่ใช่ปีกระโดด"); } /*วิธีการ 2* / บูลีน isleapyear = (ปี % 4 == 0 && ปี % 100! = 0) || ปี%400 == 0; String String = Isleapyear? ปี+"LEAP YEAR": ปี+"Not Leap Year"; System.out.println (String); -4. กรอกโปรแกรมเอาท์พุทระดับคะแนน: หากคะแนนที่ป้อนโดยผู้ใช้นั้นถูกต้อง (0-100) คำนวณระดับที่สอดคล้องกันของคะแนนตามกฎในตารางที่ 1 และคำนวณผลลัพธ์
การสาธิตแพ็คเกจ; นำเข้า java.util.scanner; / * * ตารางการจำแนกเกรดคะแนน *> = 90 a *> = 80 b *> = 60 c * <60 d * * ช่วงคะแนน: 0-100 * * 2 การตัดสินจำเป็นต้องใช้ */ การสาธิตคลาสสาธารณะ {โมฆะคงที่สาธารณะหลัก (สตริง [] args) {เครื่องสแกนสแกนเนอร์ System.out.println ("โปรดป้อนคะแนน:"); คะแนนสองเท่า = scanner.nextdouble (); Scanner.close (); if (คะแนน <0 || คะแนน> 100) {system.out.println ("คะแนนอินพุตไม่ได้อยู่ระหว่าง 0-100 ไม่เป็นไปตามข้อกำหนด"); } อื่นถ้า (คะแนน> = 90) {system.out.println ("a"); } อื่นถ้า (คะแนน> = 80) {system.out.println ("b"); } อื่นถ้า (คะแนน> = 60) {system.out.println ("c"); } else {system.out.println ("d"); -5. กรอกโปรแกรมการแก้ปัญหาคำสั่ง: มีโปรแกรมความละเอียดคำสั่งซึ่งมีการเลือกฟังก์ชั่นสามแบบสำหรับผู้ใช้ให้เลือก หลังจากผู้ใช้เลือกฟังก์ชั่นบางอย่างโปรแกรมจะส่งสัญญาณชื่อฟังก์ชั่นที่ผู้ใช้เลือกไว้ในอินเทอร์เฟซ ปฏิสัมพันธ์ของโปรแกรมจะแสดงในรูป:
การสาธิตแพ็คเกจ; นำเข้า java.util.scanner; / * * มีโปรแกรมแยกวิเคราะห์คำสั่งซึ่งมีการเลือกฟังก์ชั่นสามแบบสำหรับผู้ใช้ให้เลือก * หลังจากผู้ใช้เลือกฟังก์ชั่นบางอย่างโปรแกรมจะส่งออกชื่อฟังก์ชั่นที่ผู้ใช้เลือกในอินเทอร์เฟซ * * */ การสาธิตคลาสสาธารณะ {โมฆะคงที่สาธารณะหลัก (สตริง [] args) {สแกนเนอร์สแกนเนอร์ = สแกนเนอร์ใหม่ (System.in); System.out.println ("โปรดเลือกฟังก์ชั่น: 1. แสดงระเบียนทั้งหมด 2. บันทึกการเข้าสู่ระบบแบบสอบถาม 0. ออก"); int command = scanner.nextint (); Scanner.close (); สวิตช์ (คำสั่ง) {กรณี 0: system.out.println ("ยินดีต้อนรับ"); หยุดพัก; กรณีที่ 1: System.out.println ("แสดงระเบียนทั้งหมด ... "); หยุดพัก; กรณีที่ 2: System.out.println ("บันทึกการเข้าสู่ระบบแบบสอบถาม ... "); หยุดพัก; ค่าเริ่มต้น: system.out.println ("ข้อผิดพลาดอินพุต!"); -6. กรอกโปรแกรมชำระเงินลงทะเบียนเงินสด: เขียนโปรแกรมการชำระเงินลงทะเบียนเงินสดคำนวณตามราคาต่อหน่วยปริมาณการซื้อและการรวบรวมการชำระเงินและส่งออกจำนวนเงินลูกหนี้และการเปลี่ยนแปลง เมื่อราคารวมมากกว่าหรือเท่ากับ 500 ให้ได้รับส่วนลด 20% การโต้ตอบของคอนโซลมีดังนี้:
การสาธิตแพ็คเกจ; นำเข้า java.util.scanner; / * * ข้อกำหนด: * เขียนโปรแกรมการชำระเงินเคาน์เตอร์แคชเชียร์ คำนวณและส่งออกจำนวนเงินลูกหนี้และเปลี่ยนสามารถแลกได้ตามราคาต่อหน่วยปริมาณการซื้อและการรวบรวมการชำระเงิน * เมื่อราคารวมมากกว่าหรือเท่ากับ 500 ให้ได้รับส่วนลด 20% * */ การสาธิตคลาสสาธารณะ {โมฆะคงที่สาธารณะหลัก (สตริง [] args) {เครื่องสแกนเนอร์สแกนเนอร์ = สแกนเนอร์ใหม่ (System.in); System.out.println ("โปรดป้อนราคาต่อหน่วย (¥):"); ราคาสองเท่า = scanner.nextdouble (); System.out.println ("โปรดป้อนปริมาณ:"); จำนวนสองเท่า = scanner.nextdouble (); System.out.println ("โปรดป้อนจำนวนการรวบรวม:"); double count = scanner.nextdouble (); รวมสองเท่า = ราคา*จำนวนเงิน; if (TotalMoney> 500) {TotalMoney = TotalMoney*0.8; } double change = count - totalMoney; System.out.println ("จำนวนเงินลูกหนี้คือ:"+TotalMoney+"การเปลี่ยนแปลงคือ:"+การเปลี่ยนแปลง); -7. Java เข้าสู่จำนวนเต็มสามตัวจากคีย์บอร์ดเพื่อรับรู้การเรียงลำดับจากขนาดเล็กไปจนถึงขนาดใหญ่
การสาธิตแพ็คเกจ; นำเข้า java.util.scanner; /** Java เข้าสู่จำนวนเต็มสามตัวจากคีย์บอร์ดเพื่อตระหนักถึงการเรียงลำดับจากขนาดเล็กถึงขนาดใหญ่* **/ การสาธิตคลาสสาธารณะ {โมฆะคงที่สาธารณะหลัก (สตริง [] args) {เครื่องสแกนเนอร์สแกนเนอร์ = เครื่องสแกนใหม่ (System.in); System.out.println ("โปรดป้อนสามจำนวนเต็มคั่นด้วยช่องว่าง:"); int a = scanner.nextint (); int b = scanner.nextint (); int c = scanner.nextint (); Scanner.close (); System.out.println ("ค่าอินพุตคือ: a =" + a + ", b =" + b + ", c =" + c); if (a> b) {ถ้า (b> c) {system.out.println ("ค่าที่เรียงลำดับคือ:" + c + "," + b + "," + a); } อื่นถ้า (c> a) {system.out.println ("ค่าที่เรียงลำดับคือ:" + b + "," + a + "," + c); } else {system.out.println ("ค่าเรียงลำดับคือ:" + b + "," + a + "," + c); }} else {ถ้า (c <a) {system.out.println ("ค่าที่เรียงลำดับคือ:" + c + "," + a + "," + b); } อื่นถ้า (c> b) {system.out.println ("ค่าที่เรียงลำดับคือ:" + a + "," + b + "," + c); } else {system.out.println ("ค่าที่เรียงลำดับคือ:" + a + "," + c + "," + b); -8. คำนวณภาษีเงินได้บุคคลธรรมดา สูตรสำหรับการคำนวณภาษีเงินได้บุคคลธรรมดาในปักกิ่ง: จำนวนเงินที่ต้องเสียภาษี = (รายได้จากค่าจ้างและเงินเดือน - การหักเงิน) *อัตราภาษีที่เกี่ยวข้อง - หมายเลขการหักอย่างรวดเร็วในหมู่พวกเขาหมายเลขการหักคือ 3,500 อัตราภาษีที่เกี่ยวข้องและหมายเลขการหักอย่างรวดเร็วจะแสดงในตารางต่อไปนี้:
การสาธิตแพ็คเกจ; นำเข้า java.util.scanner; / * * สูตรในการคำนวณภาษีเงินได้บุคคลธรรมดาในปักกิ่ง: จำนวนเงินที่ต้องเสียภาษี = (ค่าจ้างและรายได้เงินเดือน - การหักเงิน) * อัตราภาษีที่เกี่ยวข้อง - การคำนวณการหักเงินอย่างรวดเร็วระหว่างพวกเขาการหักคือ 3,500 */ การสาธิตชั้นเรียนสาธารณะ System.out.println ("โปรดป้อนเงินเดือนก่อนหักภาษีของคุณ:"); int salaryBeforetax = scanner.nextint (); Scanner.close (); int taxsalary = salaryBeforetax - 3500; ภาษีสองเท่า; /*วิธีการ 1*/ tax = taxsalary <0? 0.0: taxsalary <= 1500? taxsalary*0.03: taxsalary <= 4500? taxsalary*0.1-105: taxsalary <= 9000? taxsalary*0.2-555: taxsalary <= 35000 TaxSalary <= 55000? taxsalary*0.3-2755: taxsalary <= 80000? taxsalary*0.35-5505: taxsalary*0.45-13505; System.out.println ("ควรชำระภาษีโดยบุคคลคือ:"+ภาษี); /*วิธีการ 2*/ ถ้า (taxsalary <0) {ภาษี = 0; } อื่นถ้า (taxsalary <= 1500) {tax = taxsalary*0.03; } อื่นถ้า (taxsalary <= 4500) {tax = taxsalary*0.1-105; } อื่นถ้า (taxsalary <= 9000) {tax = taxsalary*0.2-555; } อื่นถ้า (taxsalary <= 35000) {tax = taxsalary*0.25-1005; } อื่นถ้า (taxsalary <= 55000) {tax = taxsalary*0.3-2755; } อื่นถ้า (taxsalary <= 80000) {tax = taxsalary*0.35-5505; } else {tax = taxsalary*0.45-13505; } system.out.println ("ควรชำระภาษีโดยบุคคลคือ:"+ภาษี); -9. ป้อนปีและเดือนและวันที่ออก
การสาธิตแพ็คเกจ; นำเข้า java.util.scanner; /* เคล็ดลับ: 1. คุณต้องพิจารณาว่าเป็นปีที่ก้าวกระโดดหรือไม่ จำนวนวันในเดือนกุมภาพันธ์เกี่ยวข้องกับปีการกระโดดหรือไม่ 2. ใช้สวิตช์-เคสเพื่อกำหนดจำนวนวันในแต่ละเดือน*/ การสาธิตคลาสสาธารณะ {โมฆะคงที่สาธารณะหลัก (สตริง [] args) {สแกนเนอร์สแกนเนอร์ = สแกนเนอร์ใหม่ (System.in); System.out.println ("โปรดป้อนปี:"); int year = scanner.nextint (); System.out.println ("โปรดป้อนเดือน:"); int month = scanner.nextint (); int daynum = thedaynum (เดือน); // แรกรับจำนวนวันตามเดือน หากเป็นปีที่ก้าวกระโดดให้รับจำนวนวันในเดือนกุมภาพันธ์อีกครั้งถ้า (isleapyear (ปี)) {ถ้า (เดือน == 2) {daynum ++; // ถ้าเป็นปีกระโดดให้เพิ่มหนึ่งวันในเดือนกุมภาพันธ์} system.out.print (ปี + "เป็นปีกระโดด"); } else {system.out.print (ปี + "ไม่ใช่ปีกระโดด"); } system.out.println (ปี + "ปี" + เดือน + "เดือนทั้งหมด" + daynum + "วัน"); } /*ตัดสินว่าเป็นปีที่ก้าวกระโดด*สามารถแบ่งออกเป็น 4 แต่ไม่สามารถแบ่งได้ด้วย 100 หรือสามารถแบ่งออกเป็น 400 มันเป็นปีกระโดด* / บูลีนสแตติกแบบคงที่ (ปี int) {ถ้า ((ปี % 4 == 0 && ปี 100! = 0) || ปี 400 == 0) } else {return false; }} /*ตัดสินจำนวนวัน* / สาธารณะคงที่ int thedaynum (เดือน int) {switch (เดือน) {กรณีที่ 1: return 31; กรณีที่ 2: กลับ 28; กรณีที่ 3: กลับ 31; กรณีที่ 4: กลับ 30; กรณีที่ 5: กลับ 31; กรณีที่ 6: กลับ 30; กรณีที่ 7: กลับ 31; กรณีที่ 8: กลับ 31; กรณีที่ 9: กลับ 30; กรณีที่ 10: return 31; กรณีที่ 11: return 30; กรณีที่ 12: กลับ 31; ค่าเริ่มต้น: System.out.println ("ขออภัยเดือนที่คุณป้อนไม่ถูกต้อง!"); กลับ 0; -10. เอาต์พุตตารางการคูณเก้าเก้า
การสาธิตแพ็คเกจ; / * ผู้แต่ง: เวนดี้ * ปัญหา: * เอาต์พุตโดยตรงของตารางการคูณเก้าเก้าครั้ง * */การสาธิตคลาสสาธารณะ {โมฆะคงที่สาธารณะหลัก (สตริง [] args) {// ตัวแปรฉันใช้เพื่อควบคุมจำนวนแถวสำหรับ (int i = 0; i <= 9; System.out.print (j + "*" + i + "=" + i*j + "/t"); } // หลังจากเอาต์พุตของแต่ละแถวคุณจะต้องมี line system.out.println (); }}}} <strong> </strong>11. แบบสุ่มสร้างจำนวนเต็มตั้งแต่ 0-100 เพื่อพิจารณาว่าเป็นจำนวนที่สำคัญหรือไม่ หมายเลขสำคัญเรียกอีกอย่างว่าหมายเลขสำคัญ มันหมายถึงตัวเลขที่ไม่สามารถหารด้วยตัวเลขธรรมชาติอื่น ๆ ยกเว้น 1 และจำนวนเต็มเอง
การสาธิตแพ็คเกจ; นำเข้า java.util.random; ระดับสาธารณะ primenum {โมฆะคงที่สาธารณะหลัก (สตริง [] args) {int num; สุ่มสุ่ม = ใหม่สุ่ม (); num = random.nextint (100); System.out.println ("หมายเลขที่สร้างแบบสุ่มคือ:" + num); System.out.println (isprime (num)); } บูลีนคงที่สาธารณะ isprime (int num) {ถ้า (num <2) {return false; } if (num == 2) {return true; } if (num % 2 == 0) {return false; } สำหรับ (int i = 3; i <= math.sqrt (num); i += 2) {ถ้า (num % i == 0) {return false; }} ส่งคืนจริง; -12. ค้นหาค่าต่ำสุดของอาร์เรย์และขยายอาร์เรย์เป็นอาร์เรย์ใหม่
การสาธิตแพ็คเกจ; นำเข้า Java.util.Arrays; นำเข้า java.util.random; / * * ผู้แต่ง: เวนดี้ * ปัญหา: สุ่มสร้างจำนวนเต็ม 10 ครั้งจาก 0-100 และค้นหาค่าต่ำสุด; * ขยายอาร์เรย์เป็นอาร์เรย์ใหม่และค่าต่ำสุดจะถูกเก็บไว้ในตำแหน่งแรกของอาร์เรย์ใหม่ * ขั้นตอน: * 1. สร้างอาร์เรย์ที่มีความยาว 10 และสุ่มสร้าง 10 จำนวนเต็มระหว่าง 0-100 โดยใช้การสุ่ม * 2. ค้นหาค่าต่ำสุดใช้สำหรับลูป * 3 ขยายความสามารถในการสร้างอาร์เรย์ใหม่โดยใช้อาร์เรย์ coprof () และตั้งค่าความยาวเป็น 11 * 4 ซ้ำผ่านอาร์เรย์ใหม่ข้ามจากด้านหลังไปด้านหน้ากำหนดค่าแล้ววางค่าต่ำสุดที่พบใน 2 // สุ่มสร้างจำนวนเต็ม 10 ครั้งระหว่างการสุ่ม 0-100 สุ่ม = ใหม่สุ่ม (); สำหรับ (int i = 0; i <10; i ++) {arr [i] = random.nextint (100); } // พิมพ์เนื้อหาของอาร์เรย์ System.out.println ("อาร์เรย์ที่สร้างขึ้นแบบสุ่มคือ:" + array.toString (arr)); // ค้นหาค่าที่เล็กที่สุด int min = arr [0]; สำหรับ (int j = 1; j <10; j ++) {ถ้า (min> arr [j]) {min = arr [j]; }} system.out.println ("ค่าที่เล็กที่สุดของอาร์เรย์นี้คือ:" + นาที); // ขยายและค่าต่ำสุดมีอยู่ใน int แรกหลังจากการขยายตัว [] newarr = arrays.copyof (arr, 11); // โอนจากด้านหลังไปด้านหน้ากำหนดค่าก่อนหน้าให้กับค่าที่ตามมาจากนั้นกำหนดค่าแรกให้กับค่าต่ำสุดขั้นต่ำสำหรับ (int k = newarr.length-1; k> = 1; k-) {newarr [k] = newarr [k-1]; } // กำหนดค่าแรกให้กับค่าต่ำสุดขั้นต่ำ min newarr [0] = min; // พิมพ์เนื้อหาของอาร์เรย์ System.out.println ("อาร์เรย์หลังจากการขยายคือ:"+ array.toString (Newarr)); -เนื้อหาหลักของบทความนี้เป็นความช่วยเหลือที่ดีสำหรับนักเรียนที่ได้สัมผัสกับอัลกอริทึม Java และการคิดเป็นครั้งแรก บรรณาธิการจะให้ความช่วยเหลือที่เกี่ยวข้องแก่คุณ โปรดให้ความสนใจกับ wulin.com มากขึ้น