.NET Logo
Welcome Guest Search | Active Topics | Members | Log In | Register

แบบฝึกหัด Options · View
noompd
Posted: Tuesday, July 29, 2008 6:59:01 AM
Rank: มือฝึกหัด
Groups: Member

Joined: 7/29/2008
Posts: 1

สวัสดีคับ ทุกคน ผมเพิ่งมาใหม่รบกวนให้คำแนะนำด้วยนะครับ

คือมีโจทย์แบบฝึกหัดที่ โรงเรียนมาให้ช่วยทำหน่อยอ่าครับ

ผมคิดแล้วคิดอีก คิดไม่ออก เลยต้องลองมาขอคำปรึกษาพี่ ๆ ดูครับ


โจทย์ กำหนดให้ผู้ใช้ป้อนตัวเลขจำนวนเต็ม 3 ค่า เก็บไว้ที่ตัวแปร x,y,z ตามลำดับ
แล้วแสดงผลออกทางหน้าจอว่าจำนวนเต็มใดมีค่าสูงสุด และจำนวนเต็มใดมีค่าต่ำสุด
พร้อมทั้งหาค่าเฉลี่ย

ผลลัพธ์

input number1 : x
input number2 : x
input number3 : x
Maximum number =(ค่าสูงสุด)
minimum number =(ค่าต่ำสุด)
Average=(ค่าเฉลี่ย)

เออคือว่าที่ผมเรียนกันตอนนี้ยังเรียนอยู่แค่ if กะ while อ่ะครับ
 

อีกข้อละกันนะคับ คิดเล่น ๆ กันก็ได้คับ เพราะผมเอาจริงเอาจังกับมันซะจนปวดหัวละ

กำหนดให้ผู้ใช้ป้อนจำนวนเงิน(หน่วย:บาท)ซึ่งเป็นเลจจำนวนเต็มบวก 1 ค่า

กำหนดให้มีธนบัตรใบละ 1000,500,100,50,20 และเหรียญ 10,

5 และ 1 บาท แล้วให้คำนวณว่าจะสามารถแลกเป็นเงินแบบต่าง ๆ ได้

อย่างละเท่าใด กำหนดให้แลกเป็นหน่วยใหญ่ที่สุดให้ได้มากที่สุดก่อน แล้ว

แสดงผลลัพธ์ ดังนี้

ผลลัพธ์

input money : 3726

1000 Baht : 3
500 Baht : 1
100 Baht : 2
50 Baht : 0
20 Baht : 1
10 Baht : 0
5 Baht : 1
1 Baht : 1

 

ขอเป็นแนวทางก็ได้คับ คิดไง ก็คิดไม่ออกแล้วจริง ๆ

 

รบกวนด้วยครับ

AloneboY
Posted: Thursday, July 31, 2008 3:17:24 PM

Rank: มือฝึกหัด
Groups: Member

Joined: 6/26/2008
Posts: 7

โปรแกรมนีเขียนไม่ยากน่ะครับ

เหมือนอย่างข้อแรก เราก็สร้างตัวแปรเพิ่มขึ้นมาอีกตัวนึง เอาไว้สำหรับทำเป็ตัวเปรียบเทียบ

โดยดาจจะกำหนดค่าเริ่มต้นของมันก่อน ให้เท่ากับศูนย์ก้อได้

สร้างลูปwhileขึ้นมาสองลูป ลูปแรกหาค่าmax ลูปสองค่าmin ภายในแต่ละลูปก้อมี if ไว้สำหรับตรวจสอบค่าmax หรือmin ลำดับ

ส่วนการหาค่าเฉลี่ยก้อแค่เอาข้อมูลทั้งหมดมาบวกกันเพื่อหาค่า sum เก็บไว้ที่ตัวแปรไรก้อได้(สร้างใหม่นะ) แล้วหารด้วยจำนวนทั้งหมด ซึ่งของคุณก็คือ 3

 

ส่วนข้อสอง ก็ใช้วิธีการหารลงไปเรื่อยๆๆ โดยเริ่มจากค่าที่มากที่สุดก่อนนั่นคือ 1000 ใช่ if...else ครับ

ในแต่ล่ะครั้งที่หาร เอาจำนวนเต็มที่หารได้ เก็บไว้ที่ตัวแปรใดก่อน แล้วเอาเศษมาเป็นตัวตั้งในการหารของจำนวนถัดไป

เช่น 3726/1000 = 3

726/500 = 1

226/100 = 2

ทำแบบนี้ไปเรื่อยๆครับ

ผมแค่ลองเสนอแนวคิดดูอย่างคร่าวๆตามที่ผมเข้าใจน่ะครับ ลองเอาไปประยุกต์ แล้วเขียนดูครับ

ผิดพลาดยังก็ขอภัยด้วยครับ

Users browsing this topic
Guest


Forum Jump
You cannot post new topics in this forum.
You cannot reply to topics in this forum.
You cannot delete your posts in this forum.
You cannot edit your posts in this forum.
You cannot create polls in this forum.
You cannot vote in polls in this forum.

Main Forum RSS : RSS

YAFVision Theme Created by Jaben Cargman (Tiny Gecko)
Powered by Yet Another Forum.net version 1.9.1.8 (NET v2.0) - 3/29/2008
Copyright © 2003-2008 Yet Another Forum.net. All rights reserved.


Sponsored by