หาพี่เลี้ยงสอนการบ้านครับ มีโจทย์ด้ายใน

เริ่มโดย The Secret, 10 สิงหาคม 2009, 13:31:05

หัวข้อก่อนหน้า - หัวข้อถัดไป

0 สมาชิก และ 1 ผู้มาเยือน กำลังดูหัวข้อนี้

The Secret

Project1

Palindrome คือ สายอักขระที่สามารถอ่านย้อนหลัง และ อ่านไปข้างหน้าจะได้ผลเช่นเดียวกัน  ตัวอย่างของ Palindrome  ได้แก่

I am Free errf ma i
You Love evol uoy

จงเขียนโปรแกรมทดสอบว่าสายอักขระนั้นเป็น Palindrome โดยใช้  StackArray  โดยการ  push  ตัวอักขระลงใน  Stack ที่ละตัว เมื่อบรรลุถึงจุดจบของสายอักขระสามารถ pop ตัวอักระและสร้างสายอักขระขึ้นใหม่

**** หมายเหตุ Palindrome จะละเว้นตัวอีกขระที่เป็น ช่องว่าง เครื่องหมายวรรคตอน และ ตัวอักษรพิมพ์ใหญ่ ****

ให้ทดสอบโดยการป้อน input data ที่ น.ศ.  คิดขึ้นมาเอง 3 ประโยค โดนทั้ง 3 ประโยคที่ใช้ทดสอบต้องเป็นประโยคที่ใช่ Palindrome


****กำหนดส่ง วันที่ 22 สิงหาคม 2552****

อ้างอิง ภาษา C++

ผมลอง งม มา 2 สัปดาห์ แล้วอะครับ เป็นคนที่ไม่ชอบเขียนโปรแกรมอะครับ

แต่ ตอนนี้ต้องทำใจรับชะตากรรม พยายาม ศึกษา

ผม จบ ปวส. จากเทคนิคคอม เพื่อนไปต่อ คอมซาย กันหมด ผมหนี เขียนโปรแกรมมาเข้า เทคโนโลยี คอม ยังไม่วาย เจอ เขียนโปรแกรม เซงเป็ด เลย


ช่วยสอน นะครับ แบบให้คำ ปรึกษา ตรวจโปแกรม อาจจะ ยกตัวอย่างให้ ดู บ้าง

บอกไว้ก่อน เลยว่าผม โง่ เขียนโปรแกรมมาก คนที่สอน ผม ต้อง ทำใจ นิิดนึงนะครับ  :P

รบกวนด้วยนะครับ  :-*

MSN : [email protected]
Tel :  087-0721210

เิอิธ ครับ


navico

input ใส่อาร์เรย์ แ้ล้วเอาอาร์เรย์มาเช็คย้อนหลังทีละตัว ก็น่าจะได้แล้วมั๊งครับ

คำที่เป็น Palindrome ต้องเป็นคำที่เรียงย้อนหลังแล้วยังอ่านได้เหมือนเดิม
เช่น mom , dad , rotator  ไม่ใช่เหรอครับ  I am Free กับ errf ma i ไม่เห็นอ่านได้เหมือนกันเลย งงอ่ะครับ

Hari Seldon


เทคนิกการทำโจทย์ที่สำคัญคือ ต้องตีความให้ได้ว่า คนออกโจทย์
ต้องการทดสอบความรู้ของเราในด้านใด

อ่านแล้ว โจทย์คือให้หัดใช้ stackarray เป็นหลักครับ

stack array จริงๆ แล้วก็แค่ first in last out คือใส่ตัวแปรเข้าไปตัวแรก จะออกเป็นตัวสุดท้าย

ดังนั้น ถ้า insert ตัวอักษรที่ไม่มีวรรคตอนเข้าไปหมด เวลาดึงออกมา มันจะเอาตัวสุดท้ายออกมาก่อน
เช่น ถ้า insert a,b,c,d,e เวลาดึง จะกลายเป็น e,d,c,b,a

ถ้า implement stack array เอง หลักการคือต้องมีตัวชี้ครับ ว่าตอนนี้ stack อยู่ที่ item ไหน


ก่อนอื่น คุณควร implement stack array ใน c++ ก่อน ง่ายๆ ก็ search google คำว่า stackarray c++

พอได้ class StackArray มาแล้ว ก็เอามาใช้กับ palindrome ครับ

ง่ายๆ คือ รับ input string มาอันนึง ถอดวรรคตอนออกให้หมด

เอาตัวอักษรที่เหลือ push() เข้าไปใน stack array ตามลำดับ

pop() ตัวอักษรกลับออกมาทีละตัว เอามาสร้าง string output

เทียบ output กับ input (ที่ไม่มีววรคตอน) ว่าตรงกันหรือไม่
ถ้าตรงกัน ก็เป็น palindrome ถ้าไม่ตรง ก็ไม่ใช่

แค่นี้ครับ code ไปเขียนเองละกัน


The Secret

อ้างถึงจาก: Hari Seldon ใน 11 สิงหาคม 2009, 11:50:31

เทคนิกการทำโจทย์ที่สำคัญคือ ต้องตีความให้ได้ว่า คนออกโจทย์
ต้องการทดสอบความรู้ของเราในด้านใด

อ่านแล้ว โจทย์คือให้หัดใช้ stackarray เป็นหลักครับ

stack array จริงๆ แล้วก็แค่ first in last out คือใส่ตัวแปรเข้าไปตัวแรก จะออกเป็นตัวสุดท้าย

ดังนั้น ถ้า insert ตัวอักษรที่ไม่มีวรรคตอนเข้าไปหมด เวลาดึงออกมา มันจะเอาตัวสุดท้ายออกมาก่อน
เช่น ถ้า insert a,b,c,d,e เวลาดึง จะกลายเป็น e,d,c,b,a

ถ้า implement stack array เอง หลักการคือต้องมีตัวชี้ครับ ว่าตอนนี้ stack อยู่ที่ item ไหน


ก่อนอื่น คุณควร implement stack array ใน c++ ก่อน ง่ายๆ ก็ search google คำว่า stackarray c++

พอได้ class StackArray มาแล้ว ก็เอามาใช้กับ palindrome ครับ

ง่ายๆ คือ รับ input string มาอันนึง ถอดวรรคตอนออกให้หมด

เอาตัวอักษรที่เหลือ push() เข้าไปใน stack array ตามลำดับ

pop() ตัวอักษรกลับออกมาทีละตัว เอามาสร้าง string output

เทียบ output กับ input (ที่ไม่มีววรคตอน) ว่าตรงกันหรือไม่
ถ้าตรงกัน ก็เป็น palindrome ถ้าไม่ตรง ก็ไม่ใช่

แค่นี้ครับ code ไปเขียนเองละกัน




+1 ครับ นี่แหละครับ ที่ต้องการ เรื่องโค้ด เดี๋ยวผมขอบคุณกับเพื่อนต่อครับ ขอบคุณมากครับ  :) :)

numau109

เคยเขียน c++ กับ pascal เมื่อ 10 ปีที่แล้ว ตอนนี้ลืม syntax เกือบหมด  ลองดูนะครับ  ผมจะเขียนประมาณ pascal  มั่ว ๆ

ถ้าจะเอาตามโจทย์

var s1: string;
    i : integer;
    is_palin : boolean;

input s1;   // รับค่าประโยค ไปยัง s1

is_palin :=  true;

for i:= 0 to length(s1)-1 do             // length เป็น function หาความยาวข้อความ
 if s1[length(s1) -i] <> s1[ i ] then
   begin is_palin := false; break; end;

write "this sentence is ", is_palin;


 


เรารักนายนะอดิศักดิ์

อ้างถึงจาก: chabra ใน 10 สิงหาคม 2009, 13:31:05
Project1

Palindrome คือ สายอักขระที่สามารถอ่านย้อนหลัง และ อ่านไปข้างหน้าจะได้ผลเช่นเดียวกัน  ตัวอย่างของ Palindrome  ได้แก่

I am Free errf ma i
You Love evol uoy

จงเขียนโปรแกรมทดสอบว่าสายอักขระนั้นเป็น Palindrome โดยใช้  StackArray  โดยการ  push  ตัวอักขระลงใน  Stack ที่ละตัว เมื่อบรรลุถึงจุดจบของสายอักขระสามารถ pop ตัวอักระและสร้างสายอักขระขึ้นใหม่

**** หมายเหตุ Palindrome จะละเว้นตัวอีกขระที่เป็น ช่องว่าง เครื่องหมายวรรคตอน และ ตัวอักษรพิมพ์ใหญ่ ****

ให้ทดสอบโดยการป้อน input data ที่ น.ศ.  คิดขึ้นมาเอง 3 ประโยค โดนทั้ง 3 ประโยคที่ใช้ทดสอบต้องเป็นประโยคที่ใช่ Palindrome


****กำหนดส่ง วันที่ 22 สิงหาคม 2552****

อ้างอิง ภาษา C++

ผมลอง งม มา 2 สัปดาห์ แล้วอะครับ เป็นคนที่ไม่ชอบเขียนโปรแกรมอะครับ

แต่ ตอนนี้ต้องทำใจรับชะตากรรม พยายาม ศึกษา

ผม จบ ปวส. จากเทคนิคคอม เพื่อนไปต่อ คอมซาย กันหมด ผมหนี เขียนโปรแกรมมาเข้า เทคโนโลยี คอม ยังไม่วาย เจอ เขียนโปรแกรม เซงเป็ด เลย


ช่วยสอน นะครับ แบบให้คำ ปรึกษา ตรวจโปแกรม อาจจะ ยกตัวอย่างให้ ดู บ้าง

บอกไว้ก่อน เลยว่าผม โง่ เขียนโปรแกรมมาก คนที่สอน ผม ต้อง ทำใจ นิิดนึงนะครับ  :P

รบกวนด้วยนะครับ  :-*

MSN : [email protected]
Tel :  087-0721210

เิอิธ ครับ



ไม่เก่งโปรแกรม แต่อยากมีเป็นมากกว่าพี่เลี้ยงนะ อิอิ :-[
รักนะ

ฉันขอพรให้พระเจ้าจงช่วยฉันสักครั้ง

atiwat001


Gain

เคยเขียนเป็น ตอนนี่ลืมหมดแล้ว ;D ;D :D (ผ่านมาเป็น 10 ปี) :-[

The Secret

อ้างถึงจาก: wera123 ใน 11 สิงหาคม 2009, 13:47:20
อ้างถึงจาก: chabra ใน 10 สิงหาคม 2009, 13:31:05
Project1

Palindrome คือ สายอักขระที่สามารถอ่านย้อนหลัง และ อ่านไปข้างหน้าจะได้ผลเช่นเดียวกัน  ตัวอย่างของ Palindrome  ได้แก่

I am Free errf ma i
You Love evol uoy

จงเขียนโปรแกรมทดสอบว่าสายอักขระนั้นเป็น Palindrome โดยใช้  StackArray  โดยการ  push  ตัวอักขระลงใน  Stack ที่ละตัว เมื่อบรรลุถึงจุดจบของสายอักขระสามารถ pop ตัวอักระและสร้างสายอักขระขึ้นใหม่

**** หมายเหตุ Palindrome จะละเว้นตัวอีกขระที่เป็น ช่องว่าง เครื่องหมายวรรคตอน และ ตัวอักษรพิมพ์ใหญ่ ****

ให้ทดสอบโดยการป้อน input data ที่ น.ศ.  คิดขึ้นมาเอง 3 ประโยค โดนทั้ง 3 ประโยคที่ใช้ทดสอบต้องเป็นประโยคที่ใช่ Palindrome


****กำหนดส่ง วันที่ 22 สิงหาคม 2552****

อ้างอิง ภาษา C++

ผมลอง งม มา 2 สัปดาห์ แล้วอะครับ เป็นคนที่ไม่ชอบเขียนโปรแกรมอะครับ

แต่ ตอนนี้ต้องทำใจรับชะตากรรม พยายาม ศึกษา

ผม จบ ปวส. จากเทคนิคคอม เพื่อนไปต่อ คอมซาย กันหมด ผมหนี เขียนโปรแกรมมาเข้า เทคโนโลยี คอม ยังไม่วาย เจอ เขียนโปรแกรม เซงเป็ด เลย


ช่วยสอน นะครับ แบบให้คำ ปรึกษา ตรวจโปแกรม อาจจะ ยกตัวอย่างให้ ดู บ้าง

บอกไว้ก่อน เลยว่าผม โง่ เขียนโปรแกรมมาก คนที่สอน ผม ต้อง ทำใจ นิิดนึงนะครับ  :P

รบกวนด้วยนะครับ  :-*

MSN : [email protected]
Tel :  087-0721210

เิอิธ ครับ



ไม่เก่งโปรแกรม แต่อยากมีเป็นมากกว่าพี่เลี้ยงนะ อิอิ :-[


มันจาดีหรอ ;D ;D ;D ;D

The Secret

อ้างถึงจาก: si4101022b ใน 11 สิงหาคม 2009, 13:38:33
เคยเขียน c++ กับ pascal เมื่อ 10 ปีที่แล้ว ตอนนี้ลืม syntax เกือบหมด  ลองดูนะครับ  ผมจะเขียนประมาณ pascal  มั่ว ๆ

ถ้าจะเอาตามโจทย์

var s1: string;
    i : integer;
    is_palin : boolean;

input s1;   // รับค่าประโยค ไปยัง s1

is_palin :=  true;

for i:= 0 to length(s1)-1 do             // length เป็น function หาความยาวข้อความ
 if s1[length(s1) -i] <> s1[ i ] then
   begin is_palin := false; break; end;

write "this sentence is ", is_palin;


 




+1 ด้วยครับ - -  แหล่มมเลย ขอบคุณค้าบ

ohmohm

โจทย์ เหมือนจะบังคับว่าต้องใช้ stack ด้วยนะครับ คือให้เอาสตริงที่จะตรวจสอบ จับเอาอักษร push ลง stack ที่ละตัว จากนั้น pop ออกมา ใส่อีกสตริงอีกอัน ถ้าสตริงสองตัวนี้เหมือนกัน นั้นคือ มันเป็น Palindrome

class ที่เป็น Stack และ String ที่จำเป็นต้องใช้ คงหน้าในเน็ตได้ไม่ยาก

เหมือนจำได้แว็บๆ ว่า Turing Machine ไม่สามารถดักจับ Palindrome ได้ทุกแบบ

aseptic

[direct=http://]-[/direct]
[direct=http://]-[/direct]

Hari Seldon

อ้างถึงจาก: ohmohm ใน 12 สิงหาคม 2009, 13:04:14
โจทย์ เหมือนจะบังคับว่าต้องใช้ stack ด้วยนะครับ คือให้เอาสตริงที่จะตรวจสอบ จับเอาอักษร push ลง stack ที่ละตัว จากนั้น pop ออกมา ใส่อีกสตริงอีกอัน ถ้าสตริงสองตัวนี้เหมือนกัน นั้นคือ มันเป็น Palindrome

class ที่เป็น Stack และ String ที่จำเป็นต้องใช้ คงหน้าในเน็ตได้ไม่ยาก

เหมือนจำได้แว็บๆ ว่า Turing Machine ไม่สามารถดักจับ Palindrome ได้ทุกแบบ

ใช่ครับ โจทย์ให้หัดเขียนและใช้ stack เรื่อง palindrome เป็นแค่ตัวอย่าง
ถ้าคุณทำการบ้านไป ถึงเช็ค palindrome ได้แต่ไม่ใช้ stack (วิธีคุณ s14xxx)
ผมเป็นอาจารย์ผมให้ 0 เลยครับ

sniffer

[direct=http://www.pokpitch.com]iPhone มือสอง[/direct] | [direct=http://www.pokpitch.com]iPhone 3GS[/direct] | [direct=http://www.pokpitch.com]iPhone[/direct] | [direct=http://www.pokpitch.com]iPhone 3.1.3[/direct] | [direct=http://www.pokpitch.com/2010/iphone4-the-definitive-by-pokpitch]iPhone 4[/direct]

เรารักนายนะอดิศักดิ์

อ้างถึงจาก: chabra ใน 12 สิงหาคม 2009, 12:17:12
อ้างถึงจาก: wera123 ใน 11 สิงหาคม 2009, 13:47:20
อ้างถึงจาก: chabra ใน 10 สิงหาคม 2009, 13:31:05
Project1

Palindrome คือ สายอักขระที่สามารถอ่านย้อนหลัง และ อ่านไปข้างหน้าจะได้ผลเช่นเดียวกัน  ตัวอย่างของ Palindrome  ได้แก่

I am Free errf ma i
You Love evol uoy

จงเขียนโปรแกรมทดสอบว่าสายอักขระนั้นเป็น Palindrome โดยใช้  StackArray  โดยการ  push  ตัวอักขระลงใน  Stack ที่ละตัว เมื่อบรรลุถึงจุดจบของสายอักขระสามารถ pop ตัวอักระและสร้างสายอักขระขึ้นใหม่

**** หมายเหตุ Palindrome จะละเว้นตัวอีกขระที่เป็น ช่องว่าง เครื่องหมายวรรคตอน และ ตัวอักษรพิมพ์ใหญ่ ****

ให้ทดสอบโดยการป้อน input data ที่ น.ศ.  คิดขึ้นมาเอง 3 ประโยค โดนทั้ง 3 ประโยคที่ใช้ทดสอบต้องเป็นประโยคที่ใช่ Palindrome


****กำหนดส่ง วันที่ 22 สิงหาคม 2552****

อ้างอิง ภาษา C++

ผมลอง งม มา 2 สัปดาห์ แล้วอะครับ เป็นคนที่ไม่ชอบเขียนโปรแกรมอะครับ

แต่ ตอนนี้ต้องทำใจรับชะตากรรม พยายาม ศึกษา

ผม จบ ปวส. จากเทคนิคคอม เพื่อนไปต่อ คอมซาย กันหมด ผมหนี เขียนโปรแกรมมาเข้า เทคโนโลยี คอม ยังไม่วาย เจอ เขียนโปรแกรม เซงเป็ด เลย


ช่วยสอน นะครับ แบบให้คำ ปรึกษา ตรวจโปแกรม อาจจะ ยกตัวอย่างให้ ดู บ้าง

บอกไว้ก่อน เลยว่าผม โง่ เขียนโปรแกรมมาก คนที่สอน ผม ต้อง ทำใจ นิิดนึงนะครับ  :P

รบกวนด้วยนะครับ  :-*

MSN : [email protected]
Tel :  087-0721210

เิอิธ ครับ



ไม่เก่งโปรแกรม แต่อยากมีเป็นมากกว่าพี่เลี้ยงนะ อิอิ :-[


มันจาดีหรอ ;D ;D ;D ;D

ดีจิ  นายลืมเราเหรอ เราเคยคบกันนะ ลองนึกดีๆซิ  ;D ;D ;D ;D


ยังคิดถึงอยู่นะกั๊บบ สบายดีเปล่า ที่รัก
รักนะ

ฉันขอพรให้พระเจ้าจงช่วยฉันสักครั้ง

numau109

อ้างถึงจาก: wera123 ใน 12 สิงหาคม 2009, 23:51:46
อ้างถึงจาก: chabra ใน 12 สิงหาคม 2009, 12:17:12
อ้างถึงจาก: wera123 ใน 11 สิงหาคม 2009, 13:47:20
อ้างถึงจาก: chabra ใน 10 สิงหาคม 2009, 13:31:05
Project1

Palindrome คือ สายอักขระที่สามารถอ่านย้อนหลัง และ อ่านไปข้างหน้าจะได้ผลเช่นเดียวกัน  ตัวอย่างของ Palindrome  ได้แก่

I am Free errf ma i
You Love evol uoy

จงเขียนโปรแกรมทดสอบว่าสายอักขระนั้นเป็น Palindrome โดยใช้  StackArray  โดยการ  push  ตัวอักขระลงใน  Stack ที่ละตัว เมื่อบรรลุถึงจุดจบของสายอักขระสามารถ pop ตัวอักระและสร้างสายอักขระขึ้นใหม่

**** หมายเหตุ Palindrome จะละเว้นตัวอีกขระที่เป็น ช่องว่าง เครื่องหมายวรรคตอน และ ตัวอักษรพิมพ์ใหญ่ ****

ให้ทดสอบโดยการป้อน input data ที่ น.ศ.  คิดขึ้นมาเอง 3 ประโยค โดนทั้ง 3 ประโยคที่ใช้ทดสอบต้องเป็นประโยคที่ใช่ Palindrome


****กำหนดส่ง วันที่ 22 สิงหาคม 2552****

อ้างอิง ภาษา C++

ผมลอง งม มา 2 สัปดาห์ แล้วอะครับ เป็นคนที่ไม่ชอบเขียนโปรแกรมอะครับ

แต่ ตอนนี้ต้องทำใจรับชะตากรรม พยายาม ศึกษา

ผม จบ ปวส. จากเทคนิคคอม เพื่อนไปต่อ คอมซาย กันหมด ผมหนี เขียนโปรแกรมมาเข้า เทคโนโลยี คอม ยังไม่วาย เจอ เขียนโปรแกรม เซงเป็ด เลย


ช่วยสอน นะครับ แบบให้คำ ปรึกษา ตรวจโปแกรม อาจจะ ยกตัวอย่างให้ ดู บ้าง

บอกไว้ก่อน เลยว่าผม โง่ เขียนโปรแกรมมาก คนที่สอน ผม ต้อง ทำใจ นิิดนึงนะครับ  :P

รบกวนด้วยนะครับ  :-*

MSN : [email protected]
Tel :  087-0721210

เิอิธ ครับ



ไม่เก่งโปรแกรม แต่อยากมีเป็นมากกว่าพี่เลี้ยงนะ อิอิ :-[


มันจาดีหรอ ;D ;D ;D ;D

ดีจิ  นายลืมเราเหรอ เราเคยคบกันนะ ลองนึกดีๆซิ  ;D ;D ;D ;D


ยังคิดถึงอยู่นะกั๊บบ สบายดีเปล่า ที่รัก

กลายเป็นกระทู้สีม่วงไปหรือเปล่า  :-X

zo501

อืม โจทย์ไม่ยากมาก แค่ใช้ stack + check if, else เท่านั้นเอง

สู้ๆ

The Secret

อ้างถึงจาก: wera123 ใน 12 สิงหาคม 2009, 23:51:46
อ้างถึงจาก: chabra ใน 12 สิงหาคม 2009, 12:17:12
อ้างถึงจาก: wera123 ใน 11 สิงหาคม 2009, 13:47:20
อ้างถึงจาก: chabra ใน 10 สิงหาคม 2009, 13:31:05
Project1

Palindrome คือ สายอักขระที่สามารถอ่านย้อนหลัง และ อ่านไปข้างหน้าจะได้ผลเช่นเดียวกัน  ตัวอย่างของ Palindrome  ได้แก่

I am Free errf ma i
You Love evol uoy

จงเขียนโปรแกรมทดสอบว่าสายอักขระนั้นเป็น Palindrome โดยใช้  StackArray  โดยการ  push  ตัวอักขระลงใน  Stack ที่ละตัว เมื่อบรรลุถึงจุดจบของสายอักขระสามารถ pop ตัวอักระและสร้างสายอักขระขึ้นใหม่

**** หมายเหตุ Palindrome จะละเว้นตัวอีกขระที่เป็น ช่องว่าง เครื่องหมายวรรคตอน และ ตัวอักษรพิมพ์ใหญ่ ****

ให้ทดสอบโดยการป้อน input data ที่ น.ศ.  คิดขึ้นมาเอง 3 ประโยค โดนทั้ง 3 ประโยคที่ใช้ทดสอบต้องเป็นประโยคที่ใช่ Palindrome


****กำหนดส่ง วันที่ 22 สิงหาคม 2552****

อ้างอิง ภาษา C++

ผมลอง งม มา 2 สัปดาห์ แล้วอะครับ เป็นคนที่ไม่ชอบเขียนโปรแกรมอะครับ

แต่ ตอนนี้ต้องทำใจรับชะตากรรม พยายาม ศึกษา

ผม จบ ปวส. จากเทคนิคคอม เพื่อนไปต่อ คอมซาย กันหมด ผมหนี เขียนโปรแกรมมาเข้า เทคโนโลยี คอม ยังไม่วาย เจอ เขียนโปรแกรม เซงเป็ด เลย


ช่วยสอน นะครับ แบบให้คำ ปรึกษา ตรวจโปแกรม อาจจะ ยกตัวอย่างให้ ดู บ้าง

บอกไว้ก่อน เลยว่าผม โง่ เขียนโปรแกรมมาก คนที่สอน ผม ต้อง ทำใจ นิิดนึงนะครับ  :P

รบกวนด้วยนะครับ  :-*

MSN : [email protected]
Tel :  087-0721210

เิอิธ ครับ



ไม่เก่งโปรแกรม แต่อยากมีเป็นมากกว่าพี่เลี้ยงนะ อิอิ :-[


มันจาดีหรอ ;D ;D ;D ;D

ดีจิ  นายลืมเราเหรอ เราเคยคบกันนะ ลองนึกดีๆซิ  ;D ;D ;D ;D


ยังคิดถึงอยู่นะกั๊บบ สบายดีเปล่า ที่รัก

คิดถึงเหมือนกาน ม๊วฟๆ  >:( >:( >:(

morizaki

อ้างถึงจาก: Hari Seldon ใน 11 สิงหาคม 2009, 11:50:31

เทคนิกการทำโจทย์ที่สำคัญคือ ต้องตีความให้ได้ว่า คนออกโจทย์
ต้องการทดสอบความรู้ของเราในด้านใด

อ่านแล้ว โจทย์คือให้หัดใช้ stackarray เป็นหลักครับ

stack array จริงๆ แล้วก็แค่ first in last out คือใส่ตัวแปรเข้าไปตัวแรก จะออกเป็นตัวสุดท้าย

ดังนั้น ถ้า insert ตัวอักษรที่ไม่มีวรรคตอนเข้าไปหมด เวลาดึงออกมา มันจะเอาตัวสุดท้ายออกมาก่อน
เช่น ถ้า insert a,b,c,d,e เวลาดึง จะกลายเป็น e,d,c,b,a

ถ้า implement stack array เอง หลักการคือต้องมีตัวชี้ครับ ว่าตอนนี้ stack อยู่ที่ item ไหน


ก่อนอื่น คุณควร implement stack array ใน c++ ก่อน ง่ายๆ ก็ search google คำว่า stackarray c++

พอได้ class StackArray มาแล้ว ก็เอามาใช้กับ palindrome ครับ

ง่ายๆ คือ รับ input string มาอันนึง ถอดวรรคตอนออกให้หมด

เอาตัวอักษรที่เหลือ push() เข้าไปใน stack array ตามลำดับ

pop() ตัวอักษรกลับออกมาทีละตัว เอามาสร้าง string output

เทียบ output กับ input (ที่ไม่มีววรคตอน) ว่าตรงกันหรือไม่
ถ้าตรงกัน ก็เป็น palindrome ถ้าไม่ตรง ก็ไม่ใช่

แค่นี้ครับ code ไปเขียนเองละกัน



ตอบแบบนี้ดีแล้วครับ ให้เขียนเอง :) คนเรียนจะได้พัฒนาครับ 8)


EThaiZone

นึกว่ากระทู้จะเปลี่ยนประเด็นเป็น ยานาไรก้า แล้วซะอีก  ;D