ช่วยที่ครับ..ภาษา C

แนะนำ สอบถาม ภาษา C สำหรับผู้เริ่มต้น ภาษา Java ภาษา Python

Moderator: mindphp, ผู้ดูแลกระดาน

gungsakab
PHP Jr. Member
PHP Jr. Member
โพสต์: 24
ลงทะเบียนเมื่อ: 19/10/2010 2:38 pm

ช่วยที่ครับ..ภาษา C

โพสต์ที่ยังไม่ได้อ่าน โดย gungsakab »

คือผมต้องการเขียนโปรแกรมโดยรับค่ามา 3 ค่า

สิ่งที่ผมทำได้แล้วคือ

1. รับค่าจาก Keyboard มา 3 ค่า
2. หาค่าเฉลี่ย

สิ่งที่ยังทำไม่ได้คือ

หาค่าใกล้เคียงกับค่าเฉลี่ยมากที่สุด โดยใช้คำสั่ง if เท่านั้น ไม่ว่า if 1ทางเลือก 2ทางเลือก หรือ หลายทางเลือกได้หมดครับ

เช่น รับค่า 5 , 7 , 3 ค่าเฉลี่ยคือ 5 ค่าใกล้เคียงที่สุดก็คือ 5 อะครับ (ไม่เป็นตรงหาค่าใกล้เคียงนี่แหละครับ) เป็นจำนวนเต็มนะครับ ไม่เอาทศนิยม


** ขอบคุณครับ **
genocideaon
PHP Sr. Member
PHP Sr. Member
โพสต์: 56
ลงทะเบียนเมื่อ: 21/09/2010 3:57 pm

Re: ช่วยที่ครับ..ภาษา C

โพสต์ที่ยังไม่ได้อ่าน โดย genocideaon »

ให้ if เปรียบเทียบเอาได้มั๊ยคัฟ ว่าค่าไหนมากกว่า น้อยกว่า

แล้วให้แสดงอันนั้นเป็นค่าใกล้เคียง
touleg
PHP Super Member
PHP Super Member
โพสต์: 480
ลงทะเบียนเมื่อ: 25/01/2010 11:57 pm
ติดต่อ:

Re: ช่วยที่ครับ..ภาษา C

โพสต์ที่ยังไม่ได้อ่าน โดย touleg »

ค่าเฉลี่ย-ค่าที่รับมา(ที่ละตัว)
ลบแล้วเอาค่าที่ได้ของแต่ละตัวมาเปรียบเทียบกัน
ค่าไหนลบแล้วได้ค่าน้อยสุดแสดงว่าใกล้เคียงสุด

* เวลาลบต้องใส่ absolute ให้กับค่าที่ลบได้ด้วย เพราะเราไม่รู้ว่าค่าที่เอามาลบกันจะติดลบหรือเปล่า

โค้ดสามารถเขียนได้หลายแบบ อันนี้เป็นแค่แบบนึงเท่านั้น

โค้ด: เลือกทั้งหมด

#include<stdio.h>
#include<math.h>

void main()
{
	int a,b,c,avg;

	printf("Enter a: ");
	scanf("%d",&a);
	printf("Enter b: ");
	scanf("%d",&b);
	printf("Enter c: ");
	scanf("%d",&c);

	avg = (a+b+c)/3;

	printf("AVG = %f\n",avg);

	if(abs(avg-a)<=abs(avg-b) && abs(avg-a)<=abs(avg-c))//a ใกล้สุด
	{
		printf("%d",a);

	}else if(abs(avg-b)<=abs(avg-a) && abs(avg-b)<=abs(avg-c) ){ //b ใกล้สุด

		printf("%d",b);
	}else{ //c ใกล้สุด

		printf("%d",c);
	}
}
ตอบกลับโพส
  • Similar Topics
    ตอบกลับ
    แสดง
    โพสต์ล่าสุด

ผู้ใช้งานขณะนี้

สมาชิกกำลังดูบอร์ดนี้: Amazon [Bot] และบุคลทั่วไป 75