Home / Midterm Takehome Exam

Midterm Takehome Exam


โจทย์

เขียนโปรแกรมรับจำนวนตัวเลขที่ต้องการแล้วแสดงผลดังนี้
1.เรียงจากมากไปน้อย
2.เรียงจากน้อยไปมาก
3.เรียงเลขคี่จากน้อยไปมาก
4.เรียงเลขคู่จากมากไปน้อย

Scource Code

import java.util.*;
public class arr1{
    public static void main(String[]args){
       
        Scanner inp1 = new Scanner(System.in);
       
        int a,b=1,c=0,i=0,h=1;
        // ประกาศตัวแปร Arrays
        int[] x;
        x = new int[100];
       
        //รับตัวเลขกำหนดจำนวนรอบของloop
        System.out.print("Input Number: ");
        a = inp1.nextInt();
       
        while(b<=a){
            //รับค่า int
            System.out.print(b+". Input Int: ");
            x[i] = inp1.nextInt();
           
            //ตรวจสอบและเรียงค่าของArrayใหม่เพื่อง่ายต่อการใช้งาน
            if(i>0){

                h=b-1;
                while(h>0&&x[h-1]>x[h]){
                    c = x[h];
                    x[h] = x[h-1];
                    x[h-1] = c;
                
                    h--;
                }
               
            }
           
            i=i+1;
            b=b+1;
         }
        
        System.out.println();
       
        //แสดงผลเรียงค่าจากมากไปน้อย
        c=a-1;
        System.out.print("Max => Min: ");
         while(c>=0){
             System.out.print(x[c]+" ");
             c=c-1;
         }
         System.out.println();
        
         //แสดงผลเรียงค่าจากน้อยไปมาก
         c=0;
         System.out.print("Min => Max: ");
         while(c<a){
             System.out.print(x[c]+" ");
             c=c+1;
         }
         System.out.println();
        
         //แสดงผลเรียงค่าเลขคี่จากน้อยไปมาก
         c=0;
         System.out.print("Odd Number Min => Max: ");
         while(c<a){
             if(x[c]%2!=0)
                 System.out.print(x[c]+" ");
             c=c+1;
         }
         System.out.println();

        //แสดงผลเรียงค่าเลขคู่จากมากไปน้อย
         c=a-1;
         System.out.print("Even Number Max => Min: ");
         while(c>=0){
             if(x[c]%2==0)
                 System.out.print(x[c]+" ");
             c=c-1;
         }
         System.out.println();
       
    }
}

เมื่อ run โปรแกรมจะทำงานตามภาพต่อไปนี้


1.โปรแกรมจะรอรับค่าที่จะกำหนดรอบของ loop


2.ใส่จำนวนรอบตามต้องการแล้วกด enter


3.ใส่ตัวเลขที่ต้องการแล้วกด enter ไปจนครบ


4.เมื่อใส่ค่าครบแล้วก็จะแสดงผลดังภาพ



 

    Post a comment

    Your Name or E-mail ID (mandatory)

     

    Note: Your comment will be published after approval of the owner.




     RSS of this page