บันทึกการประชุม ครั้งที่ 10


บันทึกการประชุม ครั้งที่ 10

ประชุมเมื่อ วันศุกร์ที่ 22 กรกฎาคม 2554

ประธานการประชุม : นายพงศ์พล โล่ห์สถาพรพิพิธ (54-010116-2035-6)

จำนวนสมาชิกที่มา : ครบ

ประชุมเรื่อง : ทำแบบฝึกหัด และทบทวน หาแบบฝึกหัดมาทำเพิ่มเติม เพื่อเตรียมสอบ

โดยการนำ เอา ตัวอย่างข้อสอบเก่า midterm 2553 จาก lms มาลองทำ
โจทย์ ก็จะผสม ทุกๆเรื่อง ที่เคย เรียนมา มาประยุกต์ใช้ในแต่ละโปรแกรม

โดยได้ยกตัวอย่างโจทย์ข้อ 5B ซึ่ง เป็นโปรแกรมเปรียบเทียบ ค่า จำนวนเต็ม 2 จำนวนมาเปรียบเทียบกัน
โดยใช้ฟังก์ชั่นย่อย ซึ่ง จะมีทั้ง จำนวนเต็มบวก และ ลบ ที่โปรแกรมจะต้องเปรียบเทียบค่าให้ถูกต้อง โดยจะ ได้โปรแกรม
ดังนี้
ลักษณะ ฟังก์ชั่นย่อย : compare(x,y);
โดยที่ฟังก์ชั่นย่อยจะรับ ค่าตัวแปร x และ y จากฟังก์ชั่น เมน ไปคำนวณ ในฟังก์ชั่นย่อย แล้วจึงรีเทิร์นค่ากลับมา ยังฟังก์ชั่นเมน

จากการประชุมครั้งนี้ ทำให้สมาชิกในกลุ่ม มีความพร้อมมากขึ้น สำหรับการสอบ midterm

ภาพการประชุม

บันทึกการประชุมที่ 9

บันทึกการประชุมที่ 9


ประชุมเมื่อ : วันพุธที่ 20 กรกฎาคม 2554
ประธานการประชุม : นายพิชิต เทียนทอง (54-010116-2039-9)
จำนวนสมาชิกที่มา : ครบ
ประชุมเรื่อง : ทบทวนการเขียนโปรแกรม และ โฟลวชาร์ต

ผมได้หยิบตัวอย่างข้อสอบเก่า ปีพุทธศักราช 2553 มา1ข้อ นั่นคือ ข้อ3b ซึ่งเป็นการประยุกต์ เอาวิธีการต่างๆ มาใช้เขียนโปรแกรม
เช่น การใช้ if else , การเรียกใช้ฟังชันก์ย่อย และ การเขียนโฟลวชาร์ตก่อนการทำ ซึ่งจะทำให้เราเข้าใจได้ง่ายขึ้นว่าเราควรเขียนโปรแกรมไปในทิศทางไหน ตรงกับคำสั่งที่โจทย์เค้าต้องการให้หาหรือไม่ เพราะการเขียนโปรแกรมบางทีเราอาจจะลืมได้ว่า เราทำไปถึงส่วนไหนแล้ว เราก็ยังย้อนกลับมาดูโฟลวชาร์ตที่เราเขียนไว้ก่อนหน้านี้ได้

นี่คือตัวอย่างที่ผมสอนครับ

จงสร้างโปรแกรมหาค่า root จากสมการ ax^2 + bx + c = 0

#include
#include
int main (void)
{
float a,b,c;
double x1,x2,sum,d;
printf("input a:\t");
scanf("%f",&a);
printf("input b:\t");
scanf("%f",&b);
printf("input c:\t");
scanf("%f",&c);
d = (b*b)-(4*a*c);
sum = sqrt(d);
x1 = (-b+sum)/(2*a);
x2 = (-b-sum)/(2*a);
if(a==0 && b==0)
{
printf("Invalid coefficient");
}
else if (a==0 && b!=0)
{
printf("Only one root is = %lf",x1);
}
else if(d<0)
{
printf("Root is Imaginary");
}
else if(d>0)
{
printf("Result Roots are x1= %lf and x2= %lf",x1,x2);
}
else
{
printf("Error");
}
return 0;
}


ภาพการประชุม






บันทึกการประชุมครั้งที่ 8

บันทึกการประชุมครั้งที่ 8

ประชุมเมื่อ จันทร์ 18 ก.ค. เวลา 16.30-18.00
ประธานการประชุม : นายวรเมธ ประเสริฐพันธุ์ (54-010116-2044-5)
จำนวนสมาชิกที่มา : ครบทุกคน
ประชุมเรื่อง : นำเนื้อหาที่เรียนมาทบทวนเพื่อเตรียมสอบ และหาแบบฝึกหัดมาทำ
โดยที่นำข้อสอบเก่าปีที่แล้วที่ผมได้ดาวน์โหลด LMS และได้สอนเพื่อนๆถึงข้อที่ผมได้มาเสนอ
คือข้อที่เกี่ยวกับการใช้ คำสั่ง while และรวมกับการใช้ฟังค์ชั่น มาช่วยอีกด้วย ซึ่งเป็นครั้งที่ 8 แล้ว เพื่อนๆ
ได้เข้าใจกันบางส่วนอยู่แล้ว ได้เพิ่มเติมในส่วนการอธิบายบางส่วนที่บางคนยังไม่เข้าใจ
โปรแกรมที่ผมเขียนและสอนให้เพื่อนๆครับ


#include
void drawRectangle(int height);
int main(void)
{
int height;
printf("Input height :");
scanf("%d",&height);
drawRectangle(height);
return 0;
}
void drawRectangle(int height)
{
while(height>0)
{
printf("cccccccccc\n");
height--;
}
}

ภาพการประชุม







บันทึกการประชุมครั้งที่ 7

บันทึกการประชุมครั้งที่ 7

ประชุมเมื่อ : ศุกร์ 15 ก.ค. เวลา 13.00-14.00

ประธานการประชุม : นางสาวธัญญาภรณ์ ธิวงค์ 54-010116-3017-3

จำนวนสมาชิกที่มา : ครบ

ประชุมเรื่อง : ทำคุยเรื่อง lab5 ทบทวนบทเรียน หาแบบฝึกหัดมาทำเพิ่ม

ร่วม กันปรึกษาปัญหาที่เกิดจากการทำ lab 5 ซึ่ง lab 5 นั้นเป็น Quiz ส่วนใหญ่จะมีปัญหาที่การทำ Quiz เป็นการรวมรูปแบบการเขียนโปรแกรมทั้งหมดที่เราได้เรียนมา สมาชิกส่วนใหญ่มีปัญหาในส่วนของการทำฟังก์ชั่นย่อย ซึ่งส่วนใหญ่จะมีปัญหาการเรียกฟังก์ชั่นย่อยมาใช้ผิด ซึ่งผลลัพธ์จะออกมาผิด จึงมีการประชุมกันและร่วมกันแก้ปัญหาออกมาได้ว่า จะต้องนำชื่อของฟังก์ชันย่อยและตัวที่เรา float มาเรียกใช้ใน main จึงจะได้ผลลัพธ์ที่ถูกต้องออกมา

รูปแบบการเรียกใช้ฟังก์ชันย่อย

#include
float calculateBMI(float w,float h);

int main(void)
{
float b,w,h;
printf("Weight:");
scanf("%f",&w);
printf("Height");

scanf("%f",&h);
b = calculateBMI(w,h);
printf("BMI=%f",b);
return 0;
}
float calculateBMI(float w,float h)
{
float b;
b=w/(h*h);
return b;
}

ภาพการประชุม

บันทึกการประชุมครั้งที่ 6

บันทึกการประชุมครั้งที่ 6

ประชุมเมื่อ : วันอังคารที่ 12 กรกฎาคม 2554 เวลา 10.00-11.00 น.

ประธานการประชุม : นายธนินทร์ คล้ายอยู่ (54-010116-3016-5)
จำนวนสมาชิกที่มา :
ครบ

ประชุมเรื่อง : ทบทวนบทเรียน เตรียมตัวสอบ และ นำปัญหามาช่วยแก้ไข

ในการทำข้อสอบจะต้องละเอียดรอบคอบ ตรวจสอบหลายๆรอบ ดูว่าลืมเครื่องหมาย ; หรือ เขียน printf , scanf ผิด การกระทำทาง

คณิตศาสตร์ เรียงลำดับของการกระทำการใส่วงเล็บ ให้ถูกต้องและครบถ้วน การทำงานของเงื่อนไข

ของ if ,else, while, do while, for การใช้ฟังก์ชั่น ย่อย การประกาศ การเรียกใช้ และการกระทำในฟังก์ชั่นย่อย การใช้ฟังก์ชั่นหลักตัวอื่น

นอกจาก #include คือ #include ซึ่งจะประกอบไปด้วยการกระทำทาง

คณิตศาสตร์ เช่น ตรีโกณมิติ การถอดรากที่สอง แอบโซลูท #include คำสั่งการซุ่ม ที่ใช้ประกอบ กับ #include ทั้งนี้ทั้งนั้นสิ่งที่สำคัญที่สุดของการทำข้อสอบคือความรอบคอบ และการมีสมาธิกับข้อสอบ


ภาพการประชุม



บันทึกการประชุมครั้งที่ 5

บันทึกการประชุมครั้งที่ 5

ประชุมเมื่อ :
วันจันทร์ที่ 11 กรกฎาคม 2554 เวลา 16.30-18.00 น.
ประธานการประชุม :
นางสาวพรชนก สุทธิจิระพันธ์ (54-010116-3030-1)
จำนวนสมาชิกที่มา :
ครบ
ประชุมเรื่อง :
นำเนื้อหาที่เรียนมาทบทวนเพื่อเ​ตรียมสอบ ปรึกษาlab4
ทบทวนเนื้อหาเรื่อง For , do while , while

คำสั่ง while :
จะเริ่มต้นทำงานจากการตรวจสอบเง​ื่อนไข ถ้าเป็นจริงจะทำงานตามคำสั่ง while เมื่อเสร็จแล้วจะวนกลับไปตรรวจส​อบเงื่อนไขใหม่เป็นเช่นนี้ไปเรื​่อยๆจนกว่าเงื่อนไขจะเป็นเท็จจึ​งจะหลุดออกจากการทำงาน

คำสั่ง do-while :
จะทำงานตามคำสั่งของ do ก่อนรอบนึงแล้วตรวจสอบเงื่อนไขท​ี่ while เป็นครั้งแรก ถ้าเงื่อนไขเป็นจริงจะวนกลับไปท​ำงานอีกครั้ง แล้วกลับมาตรวจสอบเงื่อไขใหม่ ถ้าเงื่อไขเป็นเท็จจึงจะออกจากก​ารวน

คำสั่ง for :
เป็นคำสั่งวนอบเช่นเดียวกับ while และ do-while แต่เขียนให้สั้นลงเพื่อความสะดว​กและง่ายในการเขียน









Group5's Meeting Photo








บันทึกการประชุมครั้งที่ 4

บันทึกการประชุมครั้งที่ 4

ประชุมเมื่อ วันจันทร์ที่ 8 กรกฎาคม 2554
ประธานการประชุม : นางสาว นันทนัช เนตรจันทร์เรือง(54-010116-3021​-1)
จำนวนสมาชิกที่มา : สมาชิกมาครบทุกคน
ประชุมเรื่อง : ทบทวนบทเรียน ฝึกทำโจทย์ในบทเรียนที่ผ่านมา เรื่องที่นำมาประชุมคือเรื่อง โอเปอร์เรเตอร์ เนื่องจากสมาชิกในกลุ่มยังมีคนส​ับสน ตัวดำเนินการ โอเปอร์เลเตอร์ ซึ่งเป็นเรื่องสำคัญมากในการดำเ​นินการทางคณิตศาสตร์ และ ตรรกศาสตร์ จึงนำมาอธิบายให้เพื่อนๆในกลุ่ม​ได้เข้าใจ โอเปร์เรเตอร์(Operator) คือ ตัวถูกกระทำ อาจเป็นค่าคงที่ ตัวแปร นิพจน์ หรือฟังก์ชั่นก็ได้ นิพจน์(Expression) คือ การนำเอาโอเปอร์เรเตอร์ และโอเปอแรนด์หลายๆตัวมารวมเข้า​ด้วยกันเป็นประโยคเดียว
การดำเนินงานทางคณิตศาสตร์
+ ความหมายคือ บวก
- ความหมายคือ ลบ
* ความหมายคือ คูณ
/ ความหมายคือ หาร
%
ความหมายคือ การหารเอาเศษ(Modulo)
++ ความ หมายคือ เพิ่มค่าขึ้น 1 ค่า โดย a++จะนำค่าของฟไปใช้ก่อนแล้วจึง​นำเพิ่มค่าของ a ขึ้น 1 แต่ ++a จะเพิ่มค่าของ a ขึ้น 1 ก่อน แล้วจึงนำค่าของ a ไปใช้
--
ความหมายคือ ลดค่าลง 1 โดย a--จะนำค่าของ a--จะนำค่าของ a ไปใช้ก่อน แล้วจึงลดค่าของ a ลง 1 แต่ --a จะลดค่าของ a ลง 1 ก่อนแล้วจึงนำค่าของ a ไปใช้
> ความหมายคือ มากกว่า
>==
ความหมายคือ มากกว่าหรือเท่ากับ
< ความหมายคือ น้อยกว่า
<== ความหมายคือ น้อยกว่าหรือเท่ากับ
== ความหมายคือ เท่ากับ
!=
ความหมายคือ ไม่เท่ากับ
&&
ความหมายคือ และ
||
ความหมายคือ หรือ

ตัวอย่างการทำงานของโอเปอเรเตอร์

จงหาค่าของนิพจน์ 8 + 7 * 6

วิธีทำ
1. ให้สังเกตที่ตัวโอเปอเรเตอร์ก่อนเสมอว่ามีโอเปอเรเตอร์อะไรบ้าง ในที่นี้มี + และ *
2. ทำการไล่ลำดับความสำคัญของโอเปอเรเตอร์ทั้งหมดเปรียบเทียบกัน จากตัวที่มีลำดับความสำคัญสูงสุดไปยังตัวที่มีลำดับสำคับต่ำสุด

3. จากข้อ 2 จะได้ลำดับการทำงานเป็นดังนี้
ขั้นที่ 1 7 * 6 = 42
ขั้นที่ 2 8 + ค่าที่ได้จากขั้นที่ 1
= 8 + 42

= 50
ดังนั้น 8 + 7 * 6 = 50





บันทึกการประชุมครั้งที่ 3


ประชุมเมื่อ วันจันทร์ที่ 4 กรกฎาคม 2554
ประธานการประชุม : นางสาวพรรวี ทาทิตย์ (54-010116-2037-2 )
จำนวนสมาชิกที่มา : ครบ

ประชุมเรื่อง : ทบทวนบทเรียน ปรึกษาการบ้าน lab 3
มีปัญหาในการทำชีท lab 3 ส่วนที่เป็น flow chart เนื่องจากยังไม่รู้หลักและวิธีใ​นการเขียน

ทบทวนบทเรียนใน lab 3 คำสั่ง if คือคำสั่งที่ให้เราเช็คเงื่อนไข​ก่อนการทำงาน ใช้คู่กับ else หรือ else if
เช่น
if(x>0)printf (“hello”);
else
printf (“End”);ถ้าหากเราป้อนค่า x มากกว่า 0 เข้าไป จะทำให้โปรแกรมทำงานที่เงื่อนไข​ if แต่ถ้าหากไม่ใช่ จะทำงานที่เงื่อนไข else

ภาพก
ารประชุม








บันทึกการประชุมครั้งที่ 2

ประชุมเมื่อ : ศุกร์ 01 ก.ค. เวลา 13.00-14.00
ประธานการประชุม : นาย สุภณ กัมพลาวลี 54-010116-2053-4ที่ประชุมมาครบทุกคนประชุมเรื่อง : ประชุมเรื่อง lab 3 ที่ได้มาใหม่
ร่วมกันปรึกษาที่ lab ที่ 3 เกี่ยวกับเรื่องการใช้คำสั่ง if และ else โดยศึกษาเกี่ยวกับวางเงื่อนไข
ของโปรแกรม และทิศทางการทำงานของโปรแกรม
ในการทำ lab ครั้งนี้ มีการใช้ / , % , การใช้คำส่ง random และ การคิดค่า absolute
example
#include
int main(void)
{
float x,sum;
printf("Input x : ");
scanf("%f",&x);
if(x==1)
{
printf("you in put is number one");
}
if(x>1)
{
sum=abs(50-x);
printf("the different between 50 and x is %f",sum);
}
if(x<1)
{
sum=-x;
if(sum%2==0)
{
printf("x is even number");
}
else
{
printf("x is odd number");
}
}
printf(" End of program");
return 0 ;
}