วันพฤหัสบดีที่ 28 กรกฎาคม พ.ศ. 2554

โปรแกรมภาษาซี ตอน ตารางแสดงรหัสแบบข้อมูล ในการใช้ scanf() โปรแกรมภาษาซี

โปรแกรมภาษาซี ตอน ตารางแสดงรหัสแบบข้อมูล ในการใช้ scanf() โปรแกรมภาษาซี


แสดงรหัสแบบข้อมูล  ที่สามารถใช้ในฟังก์ชัน  scanf( )
รหัสรูปแบบ 
(format  code)
ความหมาย
%c
  ใช้กับข้อมูลชนิดตัวอักขระตัวเดียว  (single  character :  char)
%d
  ใช้กับข้อมูลชนิดตัวเลขจำนวนเต็ม (integer : int)  โดยสามารถใช้กับตัวเลขฐาน  10  เท่านั้น
%e
  ใช้กับข้อมูลชนิดตัวเลขจุดทศนิยม  (floating  point : float)
%f, %lf
ใช้กับข้อมูลชนิด  float  และ  double  ตามลำดับ
%g
ใช้กับข้อมูลชนิด  float
%h
ใช้กับข้อมูลชนิด  short  integer
%l
ใช้กับข้อมูลชนิด  int  โดยใช้กับตัวเลขฐาน 8, ฐาน 10 และฐาน 16
%o
ใช้กับข้อมูลชนิด  int  โดยสามารถใช้กับตัวเลขฐาน  8  เท่านั้น
%u
ใช้กับข้อมูลชนิด  unsigned  int  โดยใช้กับตัวเลขฐาน  10  เท่านั้น
%x
ใช้กับข้อมูลชนิด  int  โดยสามารถใช้กับตัวเลขฐาน  16  เท่านั้น
%s
ใช้กับข้อมูลชนิด  string
แหล่งข้อมูลจาก : Gottfried, S. Byron, 1990 : 481.


วันอังคารที่ 26 กรกฎาคม พ.ศ. 2554

โปรแกรมภาษาซี ตอน โค๊ด ตัวอย่างโปรแกรมหาค่านายหน้า คำนวณเปอร์เช็นต์

โปรแกรมหาค่านายหน้า เปอร์เซ็นต์ที่ได้รับด้วยโปรแกรม ภาษาซี


เขียนโปรแกรมด้วยภาษาซี เพื่อรับค่ายอดขายรวม (Total sales) ของพนักงานจากแป้นพิมพ์   แล้วนำมาคำนวณหาค่านายหน้า (Sales commission) ตามเงื่อนไขต่อไปนี้
ยอดขายรวม (บาท) ค่านายหน้า(%)
< 10,000               0
10,000 <= ยอดขายรวม < 25,000       7
>=25,000               10
#include <stdio.h>
void main(){

    float commiss,sales;
    printf("\t\tProgram Total sales.\n");
    printf("\t\tInsert You's Total sales:");
    scanf("%f",&sales);
    printf("\t\t%You's Total sales.: %.2lf\n",sales);
    if(sales>=25000){
        commiss=(sales*10)/100;
        printf("\t\tYou's sales commission.: %.2f",commiss);
    }else if(sales<25000&&sales>=10000){
        commiss=(sales*7)/100;
        printf("\t\tYou's sales commission.: %.2f",commiss);
    }else{
        commiss=0;
        printf("\t\tYou's sales commission.: %.2f",commiss);

    }

}
ปล.สำหรับน้องๆคนไหนอยากได้โค๊ตหรือปรึกษาก็แสดงความคิดเห็น และติดตามบทความได้ครับ

วันจันทร์ที่ 25 กรกฎาคม พ.ศ. 2554

โปรแกรมภาษาซี ตอนที่3 ชวนให้คิดในแนวบวก เทคนิคการเขียนโปรแกรมภาษาซี จงบังเกิดผล

คิดใจเชิงบวก กับ พระอาจารย์ชยสาโร
คนเราต้องมีการมองโลกในแง่บวกกันนะครับ จะทำให้สุขภาพจิตดี แล้วทำให้บังเกิดผลที่ดีกับเราและต่อคนรอบข้างของเรานั้นเอง บ้างคนคิดว่าแค่ไม่ทำให้คนอื่นเดือนร้อน เพราะเราก็พอ นั้นก็เป็นสิ่งที่ดี ถ้าเรารู้จักมองโลกในแง่ดี คิดในเชิงบวก จะทำให้มีความสุขครับ

โปรแกรมภาษาซี ตอนที่2 ชวนให้คิดในแนวบวก เทคนิคการเขียนโปรแกรมภาษาซี จงบังเกิดผล

คิดใจเชิงบวก กับ พระอาจารย์ชยสาโร
คนเราต้องมีการมองโลกในแง่บวกกันนะครับ จะทำให้สุขภาพจิตดี แล้วทำให้บังเกิดผลที่ดีกับเราและต่อคนรอบข้างของเรานั้นเอง บ้างคนคิดว่าแค่ไม่ทำให้คนอื่นเดือนร้อน เพราะเราก็พอ นั้นก็เป็นสิ่งที่ดี ถ้าเรารู้จักมองโลกในแง่ดี คิดในเชิงบวก จะทำให้มีความสุขครับ

โปรแกรมภาษาซี ตอนที่1 ชวนให้คิดในแนวบวก เทคนิคการเขียนโปรแกรมภาษาซี จงบังเกิดผล

คิดใจเชิงบวก กับ พระอาจารย์ชยสาโร
คนเราต้องมีการมองโลกในแง่บวกกันนะครับ จะทำให้สุขภาพจิตดี แล้วทำให้บังเกิดผลที่ดีกับเราและต่อคนรอบข้างของเรานั้นเอง บ้างคนคิดว่าแค่ไม่ทำให้คนอื่นเดือนร้อน เพราะเราก็พอ นั้นก็เป็นสิ่งที่ดี ถ้าเรารู้จักมองโลกในแง่ดี คิดในเชิงบวก จะทำให้มีความสุขครับ

โปรแกรมภาษาซี ตอน โค๊ด ตัวอย่างโปรแกรม การหาตัวหารร่วม อย่างง่าย

ตัวอย่าง โค๊ด โปรแกรมการหาตัวหารร่วม อย่างง่ายกับโปรแกรมภาษาซี





จงเขียนโปรแกรมในการรับค่าตัวเลขจำนวนเต็มเข้ามา 2 ตัว จากนั้นทำการประมวลผลและแสดงผลลัพธ์ว่าตัวเลขตัวแรกเป็นผลคูณของตัวเลขตัวที่ 2 หรือไม่

ตัวอย่าง

ถ้าตัวเลขที่รับเข้ามาคือ 16 และ 8
คำตอบที่แสดงคือ 8 * 2 = 16
หรือถ้าตัวเลขที่รับเข้ามาคือ 16 และ 5
คำตอบคือ 16 ไม่เป็นผลคูณของ 5  เนื่องจาก 5 ไม่สามารถคูณกับตัวเลขใดๆ แล้วมีค่าเท่ากับ 16

#include <stdio.h>
void main(){
    int a,b,over,mod;

    printf("\t\tProgram Multiply number 2 digit.\n");
    printf("\n");
    printf("\t\t\tInsert number1:");
    scanf("%d",&a);
    printf("\t\t\tInsert number2:");
    scanf("%d",&b);
    over=a/b;
    mod=a%b;
        if(mod==0){
           printf("\t\t\tInput %d and %d\n",a,b);
           printf("\t\t\t%d X %d = %d\n",b,over,a);
        }else{
           printf("%d Can't multiply's %d . becuase %d Can't multiply with anynumber result is %d .\n",b,a,b,a);
    }
}


โปรแกรมภาษาซี ตอน โค๊ด ตัวอย่างโปรแกรมบวก ลบ คูณ หาร ง่ายๆ

โปรแกรมภาษาซี โค๊ต ตัวอย่างโปรแกรมบวก ลบ คูณ หาร อย่างง่าย


#include <stdio.h>

void main(){

int x,y;
char sym;

printf("\t\tProgram calculator 2 digit.\n");
printf("choice(+, -, *, /, %) : ");
scanf("%c",&sym);
printf("Input number1 : ");
scanf("%d",&x);
printf("Input number1 : ");
scanf("%d",&y);
switch(sym){
case '*' :
  printf("Result = %d\n",x*y);
break;
case '-' :
printf("Result = %d\n",x-y);
break;
case '+' :
printf("Result = %d\n",x+y);
break;
case '%' :
printf("Result = %d\n",x%y);
break;
case '/' :
printf("Result = %d\n",x/y);
break;

default : printf("Error!\n");
}
}

ปล.สำหรับน้องๆคนไหนอยากได้โค๊ตหรือปรึกษาก็แสดงความคิดเห็น และติดตามบทความได้ครับ


วันจันทร์ที่ 18 กรกฎาคม พ.ศ. 2554

โปรแกรมภาษาซี คืออะไร? ทำไมต้องเขียนโปรแกรมภาษาซีด้วย ภาษาซีเบื้องต้น การเขียนโปรแกรมภาษาซี Turbo c++

โปรแกรมภาษาซี เขียนโปรแกรมภาษาซี




Dennis Ritche
                   ภาษาซี (C Language)เป็นภาษาหนึ่งสำหรับเขียนโปรแกรมคอมพิวเตอร์   พัฒนาขึ้นโดยนายเดนนิส  ริทชี่ (Dennis Ritche)  ในปี ค.ศ. 1972  เพื่อสร้างระบบปฏิบัติการยูนิกซ์ (Unix Operating System)โปรแกรมภาษาซี การออกแบบโปรแกรมภาษาซี โครงสร้างภาษาซี


ลักษณะเด่นของโปรแกรมภาษาซี
                   โครงสร้างภาษาซีมีสิ่งอำนวยสำหรับการเขียนโปรแกรมเชิงโครงสร้าง และสามารถกำหนดขอบข่ายตัวแปรและเรียกซ้ำ เช่นเดียวกับภาษาโปรแกรมเชิงคำสั่งส่วนใหญ่ในสายตระกูลภาษาอัลกอล ในขณะที่ระบบชนิดตัวแปรแบบอพลวัตช่วยป้องกันการดำเนินการที่ไม่ได้ตั้งใจ รหัสที่ทำงานได้ทั้งหมดในภาษาซีถูกบรรจุอยู่ในฟังก์ชัน พารามิเตอร์ของฟังก์ชันส่งผ่านด้วยค่าของตัวแปรเสมอ ส่วนการส่งผ่านด้วยการอ้างอิงจะถูกจำลองขึ้นโดยการส่งผ่านค่าตัวชี้ ชนิดข้อมูลรวมแบบแตกต่าง (struct) ช่วยให้สมาชิกข้อมูลที่เกี่ยวข้องกันสามารถรวมกันและจัดการได้ในหน่วยเดียว รหัสต้นฉบับของภาษาซีเป็นรูปแบบอิสระ ซึ่งใช้อัฒภาค (;) เป็นตัวจบคำสั่ง (มิใช่ตัวแบ่ง)
                    ภาษาซีจัดเป็นภาษาระดับกลางที่มีลักษณะเป็นภาษาโครงสร้าง สามารถประยุกต์ใช้ได้กับงานในลักษณะต่างๆ เป็นภาษาที่ใกล้เคียงกับภาษาแอสแซมบลี ผ้เขียนโปรแกรมจะสามารถเขียนโปรแกรมได้อย่างคล่องตัวโดยไม่มีข้อจำกัดในการวางตำแหน่งฟังก์ชัในโปรแกรม ภาษาซีจึงเป็นภาษาที่ง่ายต่อการเข้าใจและการนำไปใช้งาน การสร้างโปรแกรมภาษาซีจะเริ่มจากการเขียนโปรแกรมต้นกำเนิด แล้วนำไปทำการแปลด้วยตัวแปลภาษาซีเกิดเป็นโปรแกรมประสงค์
                    แนะนำให้รู้จักกับการเขียนโปรแกรมภาษาซี Turbo c/c++ Version 3.0 เป็นโปรแกรมเขียนภาษา C โดยบอร์แลนด์ ซอฟต์แวร์ คอร์ปอเรชั่น (Borland Software Corporation) ซึ่งเพรียบพร้อมไปด้วยเครื่องมือต่าง ๆ มากมายอาทิเช่น โปรแกรมเรียบเรียงข้อความ และโปรแกรมตรวจสอบและแปลคำสั่งได้ดีทีเดียวครับ ภาษาซีเบื้องต้น

วันอาทิตย์ที่ 17 กรกฎาคม พ.ศ. 2554

โปรแกรมภาษาซี ตอน โค๊ด ตัวอย่าง ภาษาซี ค.ร.น

โปรแกรม หาค่า ค.ร.น





หัดเขียนเล่นบ่อย ความชำนาญก็จะมาเองครับ เรื่องแบบนี้มันต้องตั้งใจด้วยครับ
#include <stdio.h>
             void main (void){
                 int a,b,max,min,r,max_1,clm;
                      printf("Enter number A:");
                      scanf("%d",&a);
                      printf("Enter number B:");
                      scanf("%d",&b);
                      if (a>b){
                      max=a;
                      min=b;
                      }else{
                      max=b;
                      min=a;
                      }
                      max_1=max;
                      r=max%min;
                      while(r!=0){
                      max=max+max_1;
                      r=max%min;
                      }
                      clm=max;
                      printf("Least common Multiple=%d",clm);
}

เพลง รัก Infamous [MV]

สุดท้ายแล้วนิยามมันก็คง คือคำว่า รัก




บางสิ่ง!!! ที่คุณเคยบอกว่ารักใคร
สุดท้ายแล้วมันคืออะไร...มันคงมีแค่เราที่เข้าใจ...จะมีสิ่งไหน​ที่จะแทนความรู้สึกได้?


วันเสาร์ที่ 16 กรกฎาคม พ.ศ. 2554

กระบวนการ Bootstrapping machin. | การทำงานตั้งแต่เปิดเครื่องจนพร้อมใช้งาน

กระบวนการ power on self test (POST) ของเมนบอร์ด



          คือ การตรวจสอบความพร้อมของระบบโดยรวมของตัวเมนบอร์ดและอุปกรณ์ที่สำคัญของระบบ ก่อนที่จะทำการ เริ่มระบบปฏิบัติการของคอมพิวเตอร์ ถ้ากระบวนการ power on self test ทำงานได้ไม่สมบูรณ์ไม่ว่าจะด้วยสาเหตุใดก็ตามจะไม่สามารถเริ่มระบบปฏิบัตการ ได้ (ระบบปฏิบัติการ หรือ Operatinng system คือส่วนของโปรแกรมระบบ เช่น วินโดว์ ดอส หรือ โอเอสทู ลีนุกส์ เป็นต้น)กระบวนการ Power on self test เรื่มเมือใด?กระบวนการ power on self test จะเริ่มทำงานทันทีทีทำการ เปิดสวิทซ์ ของเครื่องคอมพิวเตอร์ (power on) แล้วจะเริ่มทำการตรวจสอบส่วนประกอบพิ้นฐานสำคัญต่างๆของคอมพิวเตอร์




            1.เมื่อเปิดเครื่องกระแสไฟฟ้าจะกระตุ้นให้ซีพียูเริ่มทำงาน โปรแกรมถาวรที่ฝังภายในตัวซีพียูจะเริ่มทำงานโดยการล้างหน่วยความจำภายในซี พียู หรือที่เรียกกันว่า รีจิสเตอร์ (register) ให้ว่างเปล่า จากนั้นกำหนดให้ริจิสเตอร์ตัวหนึ่งที่ชื่อว่าโปรแกรมเคาร์เตอร์มีค่าตำแหน่ง เฉพาะค่าหนึ่ง (program counter ทำหน้าที่จดจำหมายเลขหน่วยความจำที่จะทำการดึงคำสั่งโปรแกรมขึ้นมาทำงาน) โดยถ้าเป็นเครื่องรุ่นAT จะเริ่มทำงานที่แอดเดรสหรือตำแหน่งที่เลขฐานสิบหกที่ F000 ซึ่งเป็นตำแหน่งเริ่มต้นของโปรแกรมบูตนั่นเอง ข้อสังเกต เราจะใส่โปรแกรมบูต “ส่วนแรก” ลงในหน่วยความจำถาวรที่เรียกว่า รอม (ROM :Read-Only Memory ) และส่วนที่สองลงในแผ่นดิสก์ที่มีโอเอส ดังนั้นเมื่อปิดเครื่องโปรแกรมก็ยังคงไม่หายไปไหน เมื่อกลับมาเปิดเครื่องใช้ใหม่ ซีพียูก็จะสามารถอ่านโปรแกรมบูตนี้ได้เหมือนเดิม รอมที่ว่านี้อาจเรียกว่า ไบออส (BIOS : Basic Input/Output System) ก็ได้

          2.ซีพียูใช้ตำแหน่งแอดเดรสที่อ้างอิงครั้งแรกนี้ เรียกคำสั่งแรกของโปรแกรมบูตของรอมไบออสขึ้นมา ซึ่งเท่ากับเป็นการเริ่มการบวนการ “โพสต์” โดยเริ่มแรกจะเป็นคำสั่งให้ซีพียูทำการตรวจสภาพตัวซีพียูเองว่าสมบูรณ์หรือ ไม่ จากนั้นโปรแกรมก็จสั่งให้ซีพียูลองย้อนกลับไปตรวจสอบโปรแกรมโพสต์ว่าถูกต้อง หรือไม่ โดยการอ่านพื้นที่หลาย ๆ พื้นที่ของโปรแกรมภายในรอม แล้วลองเทียบกับตัวเลขที่ตอนบันทึกไว้ตั้งแต่ตอนเริ่มสร้างรอม

          3.ซีพียูส่งสัญญาณไปทั่วระบบบัสเพื่อให้มั่นใจว่าชิ้นส่วนและอุปกรณ์ต่าง ๆ ทำงานได้อย่างสมบูรณ์ busคือ กลุ่มของสายไฟที่ใช้เป็นเส้นส่งถ่ายคำสั่งและข้อมูลระหว่างชิ้นส่วนหรือ ระหว่างซีพียูกับชิ้นส่วนต่าง ๆหรืออาจกล่าวว่า บัส หมายความว่า วงจรไฟฟ้าเชื่อมชิ้นส่วนที่สำคัญต่าง ๆ เข้าด้วยกัน และทำให้ชิ้นส่วนเหล่านี้สามารถติดต่อสื่อสารระหว่างกันได้ )


          4.ซีพียูทำการตรวจว่ามีโปรแกรมภาษาเบสิกอยู่หรือไม่ และสมบูรณ์หรือไม่ จากนั้นจะหันไปทำการตรวจสอบตัวกำเนิดสัญญาณนาฬิการ (timer) ซึ่งบางทีเราจะเรียกว่าคริสตัล (crytal) ทั้งนี้ให้มั่นใจว่าจะทำงานเพรียงกันได้อย่างสมบูรณ์ (ตัวกำเนิดสัญญาณนาฬิกาจะเป็นตัวกำหนด “จังหวะ” การทำงานของชิ้นส่วนต่าง ๆ รวมทั้งตัวซีพียู และเจ้าตัวนี้เองที่มีหน่วยเป็นเมกะเฮิรตซ์ (MHZ) เช่น เครื่อง 486-50 ก็มักหมายความว่าเป็นเครื่องพีซีที่ใช้คริสตัลความเร็ว 50 เมกะเฮิรตซ์ หรือทำงาน 50 ล้านจังหวะต่อวินาทีนั่นเอง )

          5.ต่อมากระบวนการ “โพสต์” ก็จะทำการตรวจหน่วยความจำบนการ์ดแสดงผล (Monochrome, EGA,VGA ฯลฯ) และสัญญาณภาพ (video signal) เมื่อพบว่าสมบูรณ์ก็จะนำโปรแกรมไบออสที่อยู่บนการ์ดแสดงผลมาผนึกรวมเป็นส่วน หนึ่งของไบออสระบบและกำหนดคุณสมบัติให้กับหน่วยความจำ ถึงตอนนี้คุณจะเริ่มเห็นอะไรบางอย่างปรากฏที่จอมอนิเตอร์เป็นครั้งแรก

       6.โพสต์จะทำการตรวจสอบหน่วยความจำหลัก ที่อยู่บนเมนบอร์ดซึ่งมักจะเป็นแรม (RAM) การทดสอบทำได้โดยการเขียนข้อมูลลงแรม แล้วทดสอบอ่านกลับดูว่าเหมือนกับข้อมูลที่เขียนลงไปในครั้งแรกหรือไม่ในช่วง นี้เองที่ผู้ใช้จะเห็นตัวเลขวิ่งที่หน้าจอ

       7.ซีพียูตรวจว่ามีคีย์บอร์ดเสียบอยู่หรือไม่ และมีใครกดปุ่มคีย์ไหนค้างอยู่

       8.โพสต์จะส่งสัญญาณไปยังบัสของดิสก์ไดร์ฟต่าง ๆ และฟังสัญญาณโต้กลับว่าไดร์ฟไหนพร้อมที่จะทำงาน

       9.สำหรับเครื่อง AT หรือเครื่องรุ่นใหม่ ๆ กระบวนการโพสต์จะทำการเปรียบเทียบผลการตรวจสอบอุปกรณ์กับข้อมูลที่บันทึกไว้ ในซีมอส (CMOS) ถ้าข้อมูลไม่ต้องกับที่โพสต์ตรวจสอบมา โพสต์ก็อาจจะเข้าสู่โปรแกรมเซตอัปเพื่อให้เรากำหนดชนิดของอุปกรณ์ใหม่ (ซีมอสเป็นชนิดของชิปหน่วยความจำ มันสามารถเก็บข้อมูลได้นานตราบเท่าที่เราป้อนไฟเลี้ยงจากแบตเตอรี่ให้) อนึ่ง ข้อมูลภายในซีมอสจะไม่หายไปเมื่อมีการปิดไฟเครื่อง แต่จะหายไปได้ในกรณีที่เราใช้แบตเตอรี่มานาน แล้วแบตเตอรี่ไฟหมด (เครื่องพีซีรุ่น XTจะไม่มีหน่วยความจำซีมอสนี้)

      10. บางเครื่องที่มีการใส่อุปกรณ์ที่มีไบออสของมันเอง เช่น การ์ดควบคุมดิสก์ชนิด SCSI (อ่านว่าสกัสซี่)โปรแกรมไบออสของการ์ดหรืออุปกรณ์เหล่านี้จะถูกจดจำและผนวก รวมเป็นส่วนหนึ่งของไบออสระบบ ก่อนที่เครื่องพีซีจะเข้าสู่ขั้นตอนต่อไปในการบูต ซึ่งเป็นการโหลดหรือบรรจุโอเอสจากดิสก์ลงสู่หน่วยความจำ



วันพุธที่ 6 กรกฎาคม พ.ศ. 2554

Introducing the Blogger Template Designer

ไปหัดทำบล็อกกันครับ วิธีทำบล็อกง่ายๆ อย่างไร

หัดทำบล็อกโปรแกรมภาษาซี ง่ายมาก

โปรแกรมภาษาซี ตอน if-else

โปรแกรมภาษาซี ตอน if-else
#include <stdio.h>
          void main(){
                 int a,b,over,mod;
                    printf("\t\tProgram Multiply number 2 digit.\n");
                    printf("\t\t\tInsert number1:");
                    scanf("%d",&a);
                    printf("\t\t\tInsert number2:");
                    scanf("%d",&b);
                    over=a/b;
                    mod=a%b;
                        if(mod==0){
                           printf("\t\t\tInput %d and %d\n",a,b);
                           printf("\t\t\t%d X %d = %d\n",b,over,a);
                        }else{
 printf("%d Can't multiply's %d . becuase  %d Can't multiply with  anynumber result is %d .\n",b,a,b,a);
                    }
}

comment : *โค๊ตเราไม่เน้นกฎการตั้งชื่อตัวแปรแต่การตั้งชื่อตัวแปรที่ดีต้องสามารถทำให้คนอื่นสามารถอ่านเข้าใจ และสามารถพัฒนาต่อได้ก็เป็นคุณลักษณะที่ดี อย่างหนึ่งของโปรแกรมเมอร์ครับ