ภาษาซี กับ โจทย์ Loop ในตำนาน (1) รับค่าตัวเลข และแสดงดอกจันดังรูป

หมวดสำหรับแบ่งบันความ รู้ต่างๆ จะมีหมวดย่อยๆ ในหมวดนี้ เช่น php, SQL, XML, CSS

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

ภาพประจำตัวสมาชิก
Aussadawut
PHP Hero Member
PHP Hero Member
โพสต์: 123
ลงทะเบียนเมื่อ: 15/11/2018 10:05 am

ภาษาซี กับ โจทย์ Loop ในตำนาน (1) รับค่าตัวเลข และแสดงดอกจันดังรูป

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

ภาษาซี กับ โจทย์ Loop ในตำนาน

สำหรับหลายๆ คนที่เรียนมาแล้วหรือกำลังเรียนสายคอมพิวเตอร์ โปรแกรม โปแกรมคำนวณแรกๆที่เจอ จะเป็นคำนวณเกรด กระทู้นี้ แนะนำยากขึ้นมาอีกนิด คิดว่าหลายๆท่าน จะต้องเจอกับโจทย์ Loop ชวนปวดหัวของอาจารย์อยู่เรื่อยๆ
นั่นก็เพราะว่า เราจะได้ฝึกให้มีความชำนาญในเรื่อง Loop และเข้าใจการทำงานของมันได้ง่ายขึ้นนั่นเอง

Loop คือ การทำงานวนซ้ำๆไปเรื่อยๆ จนกว่าจะถึงจุดที่เรากำหนดไว้

โจทย์ : รับค่าตัวเลข และแสดงดอกจันดังรูป
ccode.png
ccode.png (24.05 KiB) Viewed 19684 times

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

#include<stdio.h>
main()
{
    int i,j,num;
        printf("Enter number : ");
        scanf("%d",&num);
        for(i=1;i<=num;i++){
               for(j=1;j<=i;j++){
                        printf("*");
                }
                printf("\n");
        }
}
บรรทัดที่ 4 ทำการสร้างตัวแปร int ที่จะใช้ในการทำโจทย์ข้อนี้
บรรทัดที่ 5 แสดงข้อความรับค่าตัวเลข
บรรทัดที่ 6 รับค่าตัวเลขเก็บไว้ในตัวแปร num
บรรทัดที่ 7 Loop ชั้นแรก ทำการรัน Loop ตั้งแต่ i = 1 จนถึง i = num (บวกครั้งละ 1) ความหมายคือ For Loop จะรันจนกว่าค่าของ i จะเท่ากับค่าของ num ซึ่งก็คือ ค่าที่เราเก็บเข้ามาในตอนแรก
บรรทัดที่ 8,9 Loop ชั้นที่2 ทำการรัน Loop ตั้งแต่ j = 1 จนถึง j = i (บวกครั้งละ 1) ความหมายคือ For Loop จะรันจนกว่าค่าของ j จะเท่ากับค่าของ i และสั่งให้ปริ้น * เท่ากับค่าของ i
บรรทัดที่ 11 ลงบรรทัดใหม่หลังเพิ่มค่า i แตต่ละครั้ง

แนวคิด
ให้ i คือ บรรทัด และให้ j คือ จำนวนดอกจัน เมื่อ j เท่ากับ i ดอกจันก็จะเท่ากับเลขบรรทัด เช่น
เมื่อรับค่าข้อมูล คือ 2 จำนวนบรรทัด จะมีแค่ 2 บรรทัด บรรทัดที่ 1 จะมีดอกจันแค่ 1 ดอกจัน บรรทัดที่ 2 จะมีดอกจัน 2 ดอกจัน เป็นเช่นนี้ไปเรื่อยๆ

ทิ้งท้าย ไปดูแบบ Python กันบ้าง
  • Similar Topics
    ตอบกลับ
    แสดง
    โพสต์ล่าสุด

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

สมาชิกกำลังดูบอร์ดนี้: ไม่มีสมาชิกใหม่ และบุคลทั่วไป 36