Tugas Alpro Menghitung Volume Sebuah Tabung
TUGAS MENGHITUNG VOLUME SEBUAH TABUNG
Berikut adalah Sourcecode untuk menghitung volume sebuah tabung.
#include <iostream>
using namespace std;
//kamus
struct lingkaran
{
float phi;
float r;
float Keliling;
};
struct tabung
{
struct lingkaran circle;
float t;
float vol;
};
struct selimut
{
struct tabung P;
struct lingkaran L;
};
struct lingkaran bulet;
struct tabung tube[100];
int x;
//nilai phi untuk semua tube
void phiTabung(int jumlah_tabung)
{
x = 0;
while (x < jumlah_tabung)
{
tube[x].circle.phi = 3.14;
x++;
}
}
// input data dan hitung volume masing-masing tabung
void hitungVolume(int jumlah_tabung)
{
x = 0;
while (x < jumlah_tabung)
{
cout << "Tabung ke-" << x + 1 << endl;
cout << "Masukkan jari-jari tabung ke-" << x + 1 << " : ";
cin >> tube[x].circle.r;
cout << "Masukkan tinggi tabung ke-" << x + 1 << " : ";
cin >> tube[x].t;
tube[x].vol = tube[x].circle.phi * tube[x].circle.r * tube[x].t;
cout << "Maka volumenya adalah: " << tube[x].vol << endl;
cout << endl;
x++;
}
}
// Function untuk sorting menggunakan bubble
void bubbleSort(int jumlah_tabung)
{
int i = 0;
while (i < jumlah_tabung - 1)
{
int j = 0;
while (j < jumlah_tabung - i - 1)
{
if (tube[j].vol > tube[j + 1].vol)
{
// Swap the tubes
tabung temp = tube[j];
tube[j] = tube[j + 1];
tube[j + 1] = temp;
}
j++;
}
i++;
}
}
// Function untuk searching
int cari(float target_volume, int jumlah_tabung)
{
x = 0;
while (x < jumlah_tabung)
{
if (tube[x].vol == target_volume)
{
return x; // mengembalikan index tabung
}
x++;
}
return -1; // Kembalikan -1 jika volume tidak ditemukan
}
//deskripsi
int main()
{
cout << "VOLUME TABUNG" << endl;
cout << "=============" << endl;
cout << endl;
bulet.phi = 3.14;
// Input jumlah tabung yang akan dihitung volumenya
int jumlah_tabung;
cout << "Masukkan jumlah tabung: ";
cin >> jumlah_tabung;
cout << endl;
// panggil function phitabung
phiTabung(jumlah_tabung);
// panggil function hitungvolume
hitungVolume(jumlah_tabung);
// Sorting
bubbleSort(jumlah_tabung);
// menampilkan tabuung yang sudah diurutkan
cout << "Tubes setelah diurutkan berdasarkan volume:" << endl;
x = 0;
while (x < jumlah_tabung)
{
cout << "Tabung ke-" << x + 1 << " dengan volume: " << tube[x].vol << endl;
x++;
}
cout << endl;
// Searching
float target_volume;
cout << "Masukkan volume yang ingin dicari: ";
cin >> target_volume;
cout << endl;
int ketemu = cari(target_volume, jumlah_tabung);
if (ketemu != -1)
{
cout << "Tube dengan volume " << target_volume << " ditemukan pada tabung ke-" << ketemu + 1 << endl;
cout << "Jari-jari tabung: " << tube[ketemu].circle.r << endl;
cout << "Tinggi tabung: " << tube[ketemu].t << endl;
}
else
{
cout << "Tube dengan volume " << target_volume << " tidak ditemukan dalam tabung manapun." << endl;
}
return 0;
}
Komentar
Posting Komentar