วันจันทร์ที่ 27 ธันวาคม พ.ศ. 2553

เว็บ ของทำมือ(Handmade)

บทที่ 1
บทนำ
1.1       ภูมิหลังและความเป็นมา
                   ของทำมือ(Handmade) สิ่งที่จัดทำขึ้น โดยใช้ความคิด สร้างสรรค์ให้เกิดความประณีต สวยงาม น่าสนใจ และในปัจจุบันของทำมือ(Handmade) กำลังเป็นที่นิยมในกลุ่มวัยรุ่นและคนทั่วไปเป็นจำนวนมาก เพราะของทำมือจะมีราคาที่ถูกกว่าของจากโรงงานอุตสาหกรรมและเป็นของที่มีเพียงชิ้นเดียว ด้วยความที่ว่าของทำมือเป็นของที่ทำมาจากคนที่มีความคิดสร้างสรรค์ มีความประณีต จึงทำให้ของทำมือมีคุณค่ายิ่งกว่าของที่ถูกผลิตจากโรงงาน เพราะขั้นตอนในการทำนั้นต้องใช้มือทำทุกขั้นตอน และของทำมือส่วนมากก็จะเป็นความคิดใหม่ๆ (Idea) ที่ยังไม่มีขายที่ไหน จึงทำให้ของทำมือเป็นธุรกิจที่กำลังเจริญเติบโตและมีกระแสตอบรับที่ดีในปัจจุบันและในอนาคตต่อไป
                   ปัจจุบันมีการขายของทำมือ(Handmade) ในหลายรูปแบบแต่รูปแบบและสินค้าและสถานที่ในการขายก็แยกออกไปในหลายสถานที่ซึ่งทำให้เกิดความไม่สะดวกในการเลือกซื้อสินค้าและตรวจสอบราคาสินค้าหรือสังคมของสินค้าของทำมือจึงหาความแตกต่างในการขายสินค้าคือการใช้สื่ออิเล็กทรอนิกส์เข้ามาช่วยในการจัดการบริหารการขายของทำมือ(Handmade) เพื่อเพิ่มช่องทางในการให้บริการ
                   การใช้อิเล็กทรอนิกส์เป็นเครื่องมือทางการตลาดได้มีการแพร่หลายและมีจำนวนมากขึ้นเพราะปัจจุบันผู้ซื้อส่วนใหญ่หันมาซื้อสินค้าผ่านการขายแบบออนไลน์มากขึ้น และการขายแบบออนไลน์สามารถช่วยให้ผู้ขายประหยัดค่าใช้จ่าย ทั้งในเรื่องของการจัดสถานที่แสดงสินค้า หนักงานขาย อีกทั้งยังก่อให้เกิดการขายได้ตลอด 24 ชั่วโมง ผ่านทางอินเตอร์เน็ต
                   ดังนั้นผู้จัดทำจึงได้ทำการพัฒนาเว็บไซต์ขึ้นมาเพื่อให้เป็นทางเลือกใหม่ให้แก่ลูกค้าในด้านธุรกิจการขายสินค้าผ่านสื่ออิเล็กทรอนิกส์ เพื่อเพิ่มความสะดวกในการเลือกซื้อสินค้ามากขึ้น เป็นช่องทางในการตัดสินใจเลือกซื้อของลูกค้าได้



1.2 วัตถุประสงค์
                   1.2.1 เพื่อทำการขายสินค้าได้ตลอด 24 ชั่วโมง
                   1.2.2 เพื่อเพิ่มช่องทางในการตัดสินใจให้แก่ลูกค้า
                   1.2.3 เพื่อเพิ่มความสะดวกสบายในการซื้อสินค้า

1.3 ขอบเขตการศึกษา
                   1.3.1 ส่วนของผู้ใช้งานทั่วไป
                                1.3.1.1 ผู้ใช้งานทั่วไปสามารถเข้าดูข้อมูลและรายละเอียดของสินค้าได้
                                1.3.1.2 ผู้ใช้งานทั่วไปสามารถสมัครสมาชิกได้
                                1.3.1.3 ผู้ใช้งานทั่วไปสามารถอ่านข่าวสารต่างๆในเว็บได้
                                1.3.1.4 ผู้ใช้งานทั่วไปสามารถอ่านข้อมูลบนเว็บบอร์ดได้
                   1.3.2 ส่วนของสมาชิก
                                1.3.2.1 สมาชิกสามารถเข้าดูข้อมูลและรายละเอียดของสินค้าได้
                                1.3.2.2 สมาชิกสามารถสั่งซื้อสินค้าออนไลน์ได้
                                1.3.2.3 สมาชิกสามารถเลือกประเภทของสินค้าได้
                                1.3.2.4 สมาชิกสามารถเพิ่ม ลบ แก้ไข ข้อมูลส่วนตัวได้
                                1.3.2.5 สมาชิกสามารถอ่านข่าวสารบนเว็บได้
                                1.3.2.6 สมาชิกสามารถอ่านข้อมูลในเว็บบอร์ดได้
                                1.3.2.7 สมาชิกสามารถแสดงความคิดเห็นบนเว็บบอร์ดได้

                   1.3.3. ส่วนผู้ดูแลระบบ
                                1.3.3.1 ผู้ดูแลระบบสามารถเข้าดูข้อมูลและรายละเอียดของสินค้าได้
                                1.3.3.2 ผู้ดูแลระบบสามารถปรับเลี่ยน เพิ่ม ลบ แก้ไขข้อมูลสินค้าได้
                                1.3.3.3 ผู้ดูแลระบบสามารถจัดเก็บข้อมูลการสั่งซื้อของลูกค้าได้
                                1.3.3.4 ผู้ดูแลระบบสามารถอ่านข่าวสารต่างๆบนเว็บได้
                                1.3.3.5 ผู้ดูแลระบบสามารถอ่านข้อมูลบนเว็บบอร์ดได้
                                1.3.3.6 ผู้ดูแลระบบสามารถแสดงความคิดเห็นบนเว็บบอร์ดได้

1.4 ผลที่คาดว่าจะได้รับ
                   1.4.1 เพิ่มรายได้ให้กับทางร้านค้าได้ตลอด 24 ชั่วโมง
                   1.4.2 ทางร้านสามารถจัดส่งสินค้าให้ลูกค้า ตามใบสั่งซื้อสินค้าได้อย่างถูกต้อง
                   1.4.3 ลูกค้าได้รับความสะดวกสบายในการเลือกซื้อสินค้า
1.5 ตารางการดำเนินงาน
      ตารางที่ 1.1 ตารางแสดงแผนการดำเนินการ
                                                    


1.6 อุปกรณ์และโปรแกรมที่คาดว่าจะใช้
                                1.6.1 ฮาร์ดแวร์ ที่คาดว่าจะใช้
                                1.6.1.1 เครื่องคอมพิวเตอร์
                                1.6.1.2 เครื่องพิมพ์ (Printer)
                                1.6.1.3 เครื่องสแกน (Scanner)
         

         
1.6.2 ซอฟต์แวร์ ที่คาดว่าจะใช้
                                1.6.2.1 HTML ,CSS ,JAVASCRIPT
                                1.6.2.2 Dreamweaver CS5
                                1.6.2.3 Photoshop CS5
                                1.6.2.4 Browser (internet explorer 8 , Google Chrome, safari )
                                1.6.2.5 Window 7 32bit
                                1.6.2.6 Oracle
                                1.6.2.7 Microsoft Office



การออกแบบระบบ
แผนภาพบริษัท (Use Case Diagram)


รูปแผนภาพการแสดงการทา งานของ ผู้ใช้ทั่วไป สมาชิก และ ผู้ดูแลระบบ

Prosedure


Register Customer ID

  Input
                  Username type String (25)
              
                  Password  type String (25)

                  Tel type String (15)

                  Address type String (250)


  Process 

 ตรวจสอบข้อมูลภายในฐานข้อมูลในระบบว่ามีข้อมูลตรงกันหรือไม่ ถ้าตรวจสอบว่าไม่มีระบบจะทำการบันทึกข้อมูลเเละสร้าง  Username (ID) ภายในระบบ

Add Order

  Input 
                  Product code type String (5)

                  Price type Int (6)

                  Piece type Int (4)

  Process 

เพิ่ม ลบ แก้ไข ข้อมูลถ้าข้อมมูลไม่มีการแก้ไขจะจบการทำงาน

   Payment

  Process
   
                  Get price
    Output   
                  ใบเสร็จ 
 
 Edit  Register


  Input 
                  Username type String (25)
              
                  Password  type String (25)
   
  Process   
                  เข้าสู่ระบบเพื่อทำการเเก้ไขข้อมูลส่วนตัว
 
  Check Status


  Input 
                  Username type String (25)
              
                  Password  type String (25)

  Process
                  ทำการตรวจสอบสถานะการสั่งสินค้า
 News


        Process
                  ดูข่าวสารของทางร้าน

ผู้จัดทำ
51023062 นางสาวนิภาพร  ต๊ะใจ
51023315 นายเพชร  ณ ตะกัวทุ่ง

วันจันทร์ที่ 6 ธันวาคม พ.ศ. 2553

การเขียนโปรแกรมหารจุดทศนิยม ที่รองรับทศนิยมสุงสุด มากกว่า50 ตำแหน่ง และห้ามใช้เครื่องหมายหาร
เริ่มเขียนโดย การ สร้างส่วนหารปรกติก่อน
จากโปรแกรมจะเห็นว่า นี้คือส่วนของการ หารแบบปรกติ

Method นี้อาศัยหลักการหารแบบมนุษย์ โดยเวลาเราคิดหารเลขจริงๆ แบบไม่มีเครื่องหมายหาร
ก่อนอื่นเราจะหารตัวเลขใดๆ ได้จำเป็นต้องมี 2 ตัวเลขคือ เลขที่จะหาร กับตัวหาร(ตัวตั้ง, ตัวหาร)
โดยใน method นี้เรารับ พารามิเตอร์มา 2 ตัว line 50 (int a, int b) โดยที่ int a เป็นตัวตั้ง int b เป็นตัวหาร
Line 51 , line 52 เป็นตัวแปรที่เป็นผลของการหาร คือมือหารแล้วจะเกิดผลหารและเศษ ถ้าหารลงตัวเศษจะเป็น 0
เช่น 10/2 ตัวตั้งคือ 10 หารด้วย 2 คำตอบ คือ ผลหารได้5 และเศษ เป็น 0
แต่หากเป็น 7/3 ผลหารจะได้ 2 และเศษจากการหารอิก 1
การหารโดยที่ไม่ใช้ Operation หาร เราจะให้วิธีการดังนี้
แนวคิดคือ เมือคุณหารเลขโดยห้ามคิดโดยใช้เครื่องหมายหารคุณจะยังไง....
การหารคือการแบ่งออกเท่าๆกัน โดยส่วนที่เหลือน้อยกว่าส่วนที่ต้องแบ่งคือเศษ
หากไม่เข้าใจ ลองคิดตามนี้
20 หาร ด้วย 3 คือเราจะแบ่ง 20 ออกเป็นส่วนๆ โดยจำนวนที่แบ่งได้คือผลหาร และแต่ละส่วนเราจะแบ่งเท่ากับ 3
ดังนั้น เราจะแบ่งได้ ส่วนละ 3 ทั้งหมด 6 ส่วน และเหลือเศษ อิก 2
โดยการจะแบ่งเราจะคิดจาก แบ่ง 20 ออก มา 1 ส่วนส่วนละ 3 เหลือ 20 อยู่ 17 (20 – (1*3) =17)
โดย 17 คือเศษ แต่ 17 ยังสามารถแบ่งออกทีละ 3 ได้อิกดังนั้นเราจะทำต่อไป
ขั้นแรก เราจะหาร โดยการแบ่ง 20 ออก คือ แบ่ง 20 ออกมา 3 ได้ 1 ส่วน เหลือทั้งหมด 17  (20-(3*1 =3) =17)
ต่อมา เมื่อเราแบ่ง ออกอิก โดย แบ่ง 20 ออก 3 เป็น 2 ส่วน เหลือทั้งหมด 14 (20 –(3*2=6) = 14)
และเมื่อเราแบ่งไปเรื่อยๆ จนได้ 6 ส่วน เราจะได้ว่า
แบ่ง 20 ออก 3 เป็น 6 ส่วน เหลือ 2 (20-(3*6 =18) = 2)
และเราจะรู้ว่าเราไม่สามาร แบ่ง 20 ออกเป็น 7 ส่วนโดย แต่ละส่วนคือ 3 ได้ เพราะ เมื่อได้ 6 แล้ว จะเหลือเพียง 2
จากทั้งหมด เราจะไม่ได้ใช้เครื่องหมายหารเลย ดังนั้น โปรเกรมเราจะคิดตามนี้ โดยทำหารหาเศษไปเรื่อยๆ
จะทำจนกว่า เศษ จะน้อยกว่า ส่วนที่เอามาหาร
Line ที่ 55 เป้นการหาผลหาร line 56 เป็นการหาเศษที่เหลือ และ line53 เป็นเงือนไขของการ ทำ
เมือทำไปจยจบ เราจะได้ ผลหารและเศษ โดย method จะ return 2ค่าไม้ได้ ดังนั้น เราจึงสร้าง Class Vector
มาเพื่อการที่จะ เอาทั้งผลหารและเศษไส่รวมกัน และ return ออกไป


Line 62,63 เป็นชนิดข้อมุลที่เอาไว้เก็บ ค่า โดย เมือจะ เก็บ หรือ Get ก็สามารถ
 ใช้ Instance ของ Class Vector. Attribute ได้เลย

เนื่องจาก โจทย์เราไม่ใช่เพียงการหารโดยที่ไม่ใช้เครืองหมายหารอย่างดียว แต่เป็นการหารเลข ที่ต้องสามารถ รองรับการหาทศนิยมได้มากกว่า 50 ตำแหน่ง
ดังนั้น เมื่อเราได้ ส่วนการทำงานที่จะหารแล้ว เราต้อง สร้างส่วนการทำงานที่ จะหารให้ได้ทศนิยมอิก
Method div
การหารเอาทศนิยมคือ เราจะหารไปเรื่อยๆ จนกว่าจะมีเศษเป็น 0 หรือ จนกว่าเราจะหยุด
(ในกรณี ทศนิยมซ้าไม่รู้จบ ทศนิยมจะไม่สามารถการลงตัวได้เช่น 10/3 ) เราจะใช้วิธีเรียก method devider
ไปเรื่อยๆ จนกว่า ผลที่ได้.Y จะเท่ากับ0 (เศษ0) เช่น 7/2

 1 .        2 หาร 7 ได้ 3
              3*2 ได้ 6
2.         7-6 เหลือ 1 คือเศษ
3.         เศษน้อยกว่า 2 หารไม่ได้
            ไส่. ที่คำตอบ เติม 0
            ผลที่ได้คือ เศษ = 10
           10 มากกว่า 2 หารได้
4.        10 หาร 2 ได้ 5 เศษ 0
           เศษเป็น 0 หยุด
ตอบ 3.5









Line 28 คือ m ตัวตั้ง(และเป้นทั้งเศษในการหาร) n ตัวหาร
Line 29 เราจะเอาค่าที่รับจากพารมมิตเอร์มาเก็บไว้ใน m,n
Line 30 คือ ตัวที่บอกว่าเราเติม . (จุดทศนิยมแล้วหรือยัง)
Line 31 คือ คำตอบเนื้องจาก เราต้องการถึง 50 หลัก ในชนิดข้อมูลตัวเลขทั่วไปอาจไม่สามารถเก้บได้ ดังนั้น
เราจึงใช้ String และรวมทั้งให้ง่ายในการต่อตัวเลข
ขั้นแรก
เราจะเขียนโปรแกรมตามนี้ คือ ถ้า จะ หารโดยการเรียก method divider(a,b) จากเงื่อนไขที่
เศษของการหาร ต้องไม่เป็น 0 และทำซ่าไปเรื่อยๆ จนเท่ากับจำนวนหลักที่อยากได้
Div( ตัวตั้ง, ตัวหาร , จำนวนหลักสูงสุดที่รองรับ)
Line 33 คือ เงือนไขดังกล่าว
Line 34 คือ ถ้า ตัวตั้งมากกว่าตัวการเราจะทำการหาร แล้ว
นำผลหารไปไส่ในคำตอบ line 35-36
Line 37 คือเอ้เศษ ไปเก็บไว้ที่ m เพื่อตรวจสอบในรอบต่อไป
Line 39 คือ ถ้า ตัวตั้ง(เศษที่เหลืออยู่) น้อยกว่าตัวหาร
 Line 44 ในเติม 0 ที่คำตอบ
Line 40 เราจะ ตรวจดูว่า ไส่จุดหรือยังหากยังให้ไส หากไส่แล้วให้เติมตัวเลขต่อได้เลย
Line 48 เมือเสร็ดเงื่อนไข Return ค่า String คำตอบออกไป







Main program
Line 7 สร้าง instance  ของ การรับค่าขึ้นมา
Line 9  m คือ ตัวตั้ว n คือตัวหาร long คือ จำนวนทศนิยมที่จะรองรับ
Line 10 – 15 รับค่าและแสดง ให้ผู้ใช้ ป้อนค่า ตัวตั้ง ตัวหาร และ ความยาวของ หลักสูงสุด

Line 16 ,17 ถ้าผู้ใช้ป้อน ตัวตั้ง เป็น 0 ก็ให้โปรแกรม ตอบ 1 ไปเลย เพราะ 0 หารอะไรก็ได้ 1
Line 20 ,21 ถ้าผู้ใช้ป้อน ตัวหาร เป็น 0 ก็ให้โปรแกรม ตอบ ข้อความ "คำตอบ : จำนวนใดๆ หาร 0 ไม่ได้ อย่ามั่วหลาย"
เพราะ ตัวเลขใดๆ หาร 0 ไม่ได้ - -*
Line 23 แสดงคำตอบโดยการ ส่ง m,n, และ line ไปใน metod div( ตัวตั้ง, ตัวหาร , จำนวนหลักสูงสุดที่รองรับ)
และแสดงคำตอบออกทาง text line





ส่วนตัวเลขที่ใช้ทดสอบ สุดฮิต ของทศนิยมซ้ำ ไมรู้จบคงจะเป็น 22/7
หรือค่า pry นั้นละ
 ผลของการรัน 22 /7  จำนวน  50 หลัก output


ผลของการรัน 10 /3  จำนวน 100 หลัก output



จบ ^^










ส่วนนี้เป็นส่วนของ CODE ค่


package javaapplication3;


import java.util.Scanner;


public class Main {


    static Scanner kb = new Scanner(System.in);
    public static void main(String[] args) {
        int m,n,lang;
        System.out.print("ตัวตั้ง : ");
        m =  kb.nextInt();
        System.out.print("ตัวหาร : ");
        n = kb.nextInt();
        System.out.print("จำนวนหลักรวมทศนิยมสูงสุดที่จะให้แสดง : ");
        lang = kb.nextInt();
        if(m == 0){
           System.out.print("คำตอบ : 1");
        }
        else{
            if(n==0)
                 System.out.print("คำตอบ : จำนวนใดๆ หาร 0 ไม่ได้ อย่ามั่วหลาย");
            else
         System.out.print("คำตอบ : "+div(m, n,lang));
        }


    }
   private static String div(int a,int b,int lang){//ในรูปแบบ aตั้ง    bหาร
       int m,n;
       m =a;n=b;
       boolean dot =true;
        String outPut ="";


       for(int c =0 ;c<lang&&m!=0;c+=0){
        if(m>n){
            c++;
        int out=divider(m, n).X;
        outPut+=out;
        m=divider(m, n).Y;
        //System.out.println(m+ " : "+n+":index :"+c);
        }else{
        if(dot){
        outPut +=".";
        dot =false;
            }
        String temp = m+"0";
        m = Integer.parseInt(temp);
        }
       }
        return outPut;
    }
    private static Vector divider(int a,int b){// a คือตั้วตั้ง b คือตัวหารเช่น 10/5 a= 10 b =5
        int over =0;// เศษ
        int mod = 0;// ผลหาร
            while(a-(b*mod) >=b ){
               //  System.out.println(mod);
                mod ++;
                over =a-(mod*b);
            }
            return new Vector(mod,over); // mod เป็นผลหาร over เป็นเศษ
      }
}
class Vector {
    public  int X;
    public int Y;
    public Vector(){
      
    }
    public Vector(int X, int Y) {
        this.X = X;
        this.Y = Y;
    }
}








 
Copyright 2010 ส่งการบ้านวิชา ICT 305. Powered by Blogger
Blogger Templates created by DeluxeTemplates.net
Wordpress by Wpthemescreator
Blogger Showcase