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

ตอบกระทู้

รูปแสดงอารมณ์
:icon_plusone: :like: :plusone: :gfb: :-D :) :( :-o 8O :? 8) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: :angry: :baa: :biggrin:
รูปแสดงอารมณ์อื่นๆ

BBCode เปิด
[img] เปิด
[url] เปิด
[Smile icon] เปิด

กระทู้แนะนำ
   

มุมมองที่ขยายได้ กระทู้แนะนำ: ช่วยที่ครับ..ภาษา C

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

โดย touleg » 13/12/2010 12:20 am

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

* เวลาลบต้องใส่ 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);
	}
}

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

โดย genocideaon » 20/11/2010 10:00 am

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

แล้วให้แสดงอันนั้นเป็นค่าใกล้เคียง

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

โดย gungsakab » 18/11/2010 6:15 pm

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

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

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

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

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

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


** ขอบคุณครับ **

ข้างบน