Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> C++

โปรแกรม C++ บวกระยะทางสองค่า (นิ้ว-ฟุต) โดยใช้โครงสร้าง (Structures)


โครงสร้าง (Structure) คือการรวมกลุ่มข้อมูลที่มีชนิดข้อมูลต่างกันเข้าด้วยกัน มีประโยชน์มากในการสร้างโครงสร้างข้อมูลที่ซับซ้อนซึ่งประกอบด้วยระเบียนที่มีชนิดข้อมูลต่างกัน โครงสร้างจะถูกนิยามด้วยคีย์เวิร์ด struct

ตัวอย่างโครงสร้างสำหรับระยะทางในรูปแบบฟุตและนิ้ว ดังนี้:

struct DistanceFI { 
    int feet; 
    int inch; 
};

โครงสร้างข้างต้นนิยามระยะทางในรูปแบบฟุตและนิ้ว

โปรแกรม C++ สำหรับบวกระยะทางสองค่าในระบบนิ้ว-ฟุตโดยใช้โครงสร้าง มีดังนี้:

ตัวอย่าง

#include <iostream> 
using namespace std; 

struct DistanceFI { 
    int feet; 
    int inch; 
}; 

int main() { 
    struct DistanceFI distance1, distance2, distance3; 
    cout << "Enter feet of Distance 1: "<<endl; 
    cin >> distance1.feet; 
    cout << "Enter inches of Distance 1: "<<endl; 
    cin >> distance1.inch; 
    cout << "Enter feet of Distance 2: "<<endl; 
    cin >> distance2.feet; 
    cout << "Enter inches of Distance 2: "<<endl; 
    cin >> distance2.inch; 
    distance3.feet = distance1.feet + distance2.feet; 
    distance3.inch = distance1.inch + distance2.inch; 
    if(distance3.inch > 12) { 
        distance3.feet++; 
        distance3.inch = distance3.inch - 12; 
    } 
    cout << endl << "Sum of both distances is " << distance3.feet << " feet and " << distance3.inch << " inches"; 
    return 0; 
}

ผลลัพธ์

ผลลัพธ์ของโปรแกรมข้างต้นจะเป็นดังนี้:

Enter feet of Distance 1: 5 
Enter inches of Distance 1: 9 
Enter feet of Distance 2: 2 
Enter inches of Distance 2: 6 
Sum of both distances is 8 feet and 3 inches

ในโปรแกรมนี้ โครงสร้าง DistanceFI ถูกนิยามเพื่อเก็บระยะทางในหน่วยฟุตและนิ้ว โค้ดสำหรับรับค่าระยะทางทั้งสองจากผู้ใช้ มีดังนี้:

cout << "Enter feet of Distance 1: "<<endl; 
cin >> distance1.feet; 
cout << "Enter inches of Distance 1: "<<endl; 
cin >> distance1.inch; 
cout << "Enter feet of Distance 2: "<<endl; 
cin >> distance2.feet; 
cout << "Enter inches of Distance 2: "<<endl; 
cin >> distance2.inch;

ฟุตและนิ้วของระยะทางทั้งสองจะถูกบวกกันแยกกัน หากนิ้วเกิน 12 จะเพิ่มฟุต 1 และลบนิ้วออก 12 เนื่องจาก 1 ฟุต = 12 นิ้ว โค้ดสำหรับส่วนนี้มีดังนี้:

distance3.feet = distance1.feet + distance2.feet; 
distance3.inch = distance1.inch + distance2.inch; 
if(distance3.inch > 12) { 
    distance3.feet++; 
    distance3.inch = distance3.inch - 12; 
}

สุดท้าย ค่าฟุตและนิ้วของระยะทางที่บวกแล้วจะถูกแสดงผล ดังนี้:

cout << endl << "Sum of both distances is " << distance3.feet << " feet and " << distance3.inch << " inches";