program c++ mencari data yg terdapat pada indeks ke-, dengan metode aray linear.
#include<iostream>
#include<conio.h>
using namespace std;
main(){
char cari, arr[10];
int n, i;
int awal, akhir, tengah;
cout<<" Masukkan total element :";
cin>>n;
cout<<"Masukkan "<<n<<" huruf :";
cout<<endl;
for(i=0; i<n; i++){
cout<<"\t\t ->";
cin>>arr[i];
}
cout<<endl;
cout<<"Masukkan huruf yang akan dicari :";
cin>>cari;
for(i=0; i<n; i++){
if(cari==arr[i]){
cout<<"terdapat pada indeks ke-"<<i;
}
/* else if(arr[tengah] == cari){
cout<<cari<<"Ditemukan pada indeks ke-"<<tengah<<endl;
break;
}
else{
akhir=tengah-1;
}
tengah = (awal + akhir)/2;
}
if(awal>akhir){
cout<<"Tidak di temukan"<<endl;
cout<<cari<<" "<<"Tidak ada dalam data";
*/ }
getch();
}
Senin, 21 Mei 2018
Mengurutkan Data
pada materi ini, kita dapat mengurutkan data menggunakan beberapa metode atau beberapa cara:
1. Bubble Sort
2. Selection Sort
3. Insertion Sort
4. Quick Sort
hasil akhir dari pengurutan di atas bakalan sama, hanya saja cara pemindahan angkanya yg berbed. Langsung saja kita ke programnya ya...
#include<iostream>
using namespace std;
void bacaData(int arr[], int n){
cout<<"\nBaca Data :"<<endl;
for(int i=1; i<=n; i++){
cout<<"Data Index ke-"<<i<<":";
cin>>arr[i];
}
cout<<endl;
}
void tampilData(int arr[], int n){
cout<<"Isi Array :";
for(int i=1; i<=n; i++){
cout<<arr[i];
}
cout<<endl;
}
void bubbleSort(int arr[], int n){
int i, k, temp;
for(k=n; k>=2; k--){
for(i=1; i<=k-1; i++){
if(arr[i]>arr[i+1]){
temp=arr[i];
arr[i]=arr[i+1];
arr[i+1]=temp;
}
}
}
}
void selectionSort(int arr[], int n){
int i, j, iMin,temp;
for(i=1; i<=n-1; i++){
iMin=i;
for(j=i+1; j<=n; j++){
if(arr[j] < arr[iMin]){
iMin = j;
}
}
temp = arr[i];
arr[i] = arr[iMin];
arr[iMin] = temp;
}
}
void insertionSort(int arr[], int n){
int i, temp, blok;
for(i=0; i<=n; i++){
temp = arr[i];
blok = i;
while(blok>1 && arr[blok-1]>temp){
arr[blok] = arr[blok-1];
blok = blok-1;
}
arr[blok]= temp;
}
}
void quickSort(int arr[], int L, int R){
int i, j, p, temp;
p = arr[(L+R)/2];
i = L;
j = R;
while(i<=j){
while(arr[i]<p){
i++;
}
while(arr[j]>p){
j--;
}
if(i<=j){
temp = arr[i];
arr[i] = arr[j];
arr[j] = temp;
i++;
j--;
}
}
if(L<j){
quickSort(arr, L, j);
}
if(i<R){
quickSort(arr, i, R);
}
}
int main(){
int arr[100], n;
cout<<"Masukkan Banyak Data :";
cin>>n;
bacaData(arr, n);
cout<<"Sebelum Diurutkan :"<<endl;
tampilData(arr,n);
cout<<endl;
//cout<<"Setelah diturunkan dengan Bubble Sort :"<<endl;
//bubbleSort(arr, n);
//cout<<"Setelah diturunkan dengan Selection Sort :"<<endl;
//selectionSort(arr, n);
//cout<<"Setelah diturunkan dengan Insertion Sort :"<<endl;
//insertionSort(arr, n);
cout<<"Setelah di urutkan dengan Quick Sort :"<<endl;
quickSort(arr, 1, n);
tampilData(arr, n);
}
1. Bubble Sort
2. Selection Sort
3. Insertion Sort
4. Quick Sort
hasil akhir dari pengurutan di atas bakalan sama, hanya saja cara pemindahan angkanya yg berbed. Langsung saja kita ke programnya ya...
#include<iostream>
using namespace std;
void bacaData(int arr[], int n){
cout<<"\nBaca Data :"<<endl;
for(int i=1; i<=n; i++){
cout<<"Data Index ke-"<<i<<":";
cin>>arr[i];
}
cout<<endl;
}
void tampilData(int arr[], int n){
cout<<"Isi Array :";
for(int i=1; i<=n; i++){
cout<<arr[i];
}
cout<<endl;
}
void bubbleSort(int arr[], int n){
int i, k, temp;
for(k=n; k>=2; k--){
for(i=1; i<=k-1; i++){
if(arr[i]>arr[i+1]){
temp=arr[i];
arr[i]=arr[i+1];
arr[i+1]=temp;
}
}
}
}
void selectionSort(int arr[], int n){
int i, j, iMin,temp;
for(i=1; i<=n-1; i++){
iMin=i;
for(j=i+1; j<=n; j++){
if(arr[j] < arr[iMin]){
iMin = j;
}
}
temp = arr[i];
arr[i] = arr[iMin];
arr[iMin] = temp;
}
}
void insertionSort(int arr[], int n){
int i, temp, blok;
for(i=0; i<=n; i++){
temp = arr[i];
blok = i;
while(blok>1 && arr[blok-1]>temp){
arr[blok] = arr[blok-1];
blok = blok-1;
}
arr[blok]= temp;
}
}
void quickSort(int arr[], int L, int R){
int i, j, p, temp;
p = arr[(L+R)/2];
i = L;
j = R;
while(i<=j){
while(arr[i]<p){
i++;
}
while(arr[j]>p){
j--;
}
if(i<=j){
temp = arr[i];
arr[i] = arr[j];
arr[j] = temp;
i++;
j--;
}
}
if(L<j){
quickSort(arr, L, j);
}
if(i<R){
quickSort(arr, i, R);
}
}
int main(){
int arr[100], n;
cout<<"Masukkan Banyak Data :";
cin>>n;
bacaData(arr, n);
cout<<"Sebelum Diurutkan :"<<endl;
tampilData(arr,n);
cout<<endl;
//cout<<"Setelah diturunkan dengan Bubble Sort :"<<endl;
//bubbleSort(arr, n);
//cout<<"Setelah diturunkan dengan Selection Sort :"<<endl;
//selectionSort(arr, n);
//cout<<"Setelah diturunkan dengan Insertion Sort :"<<endl;
//insertionSort(arr, n);
cout<<"Setelah di urutkan dengan Quick Sort :"<<endl;
quickSort(arr, 1, n);
tampilData(arr, n);
}
Membuat program Array Biner
pada aray biner, berbeda dengan array linear yg terdapat pada judul blog sebelumnya. Yang mana, pada array biner ini, pada saat kita ingin mencari data, dia bakalan mengurutkan data itu dahulu, baru kita dapat mencari data yg kita mau terdapat pada indeks ke berapa.
langsung saja ke program nya ya.....
#include <iostream>
using namespace std;
int pencarianbiner(int arr[],int kunci,int low, int high){
bool ketemu;
int middle;
ketemu=false;
while(low<=high && !ketemu){
middle=(low+high)/2;
if(kunci == arr[middle]){
ketemu=true;
}
else if(kunci<arr[middle]){
high=middle-1;
}
else{
low=middle+1;
}
}
if(ketemu){
return middle;
}
else {
return -1;
}
}
void bubblesort(int l[], int n){
int k=n;
int temp;
for(k-1;k>=1;k--){
for(int i =0;i<=k-2;i++){
if (l[i]>l[i+1]){
temp=l[i];
l[i]=l[i+1];
l[i+1]=temp;
}
}
}
}
void tampilsebelum(int i[],int n){
cout<<"isi Array Sebelum diurutkan = ";
for(int a=0;a<n;a++){
cout<<i[a]<<", ";
}
cout<<endl;
}
void tampilsesudah(int i[],int n){
cout<<"isi Array Sesudah diurutkan = ";
for(int a=0;a<n;a++){
cout<<i[a]<<", ";
}
cout<<endl;
}
main(){
int arr[]={4,45,6,7},cari;
tampilsebelum(arr,4);
bubblesort(arr,4);
tampilsesudah(arr,4);
cout<<"Masukan Data yang ingin dicari = ";cin>>cari;
int indexawal=0;
int indexakhir=3;
int hasilpencarian;
hasilpencarian=pencarianbiner(arr,cari,indexawal,indexakhir);
if(hasilpencarian==-1){
cout<<"Angka Yang Anda Cari Tidak Ketemu"<<endl;
}
else {
cout<<"Angka yang anda cari ketemu di index ke = "<<hasilpencarian+1<<endl;
}
}
langsung saja ke program nya ya.....
#include <iostream>
using namespace std;
int pencarianbiner(int arr[],int kunci,int low, int high){
bool ketemu;
int middle;
ketemu=false;
while(low<=high && !ketemu){
middle=(low+high)/2;
if(kunci == arr[middle]){
ketemu=true;
}
else if(kunci<arr[middle]){
high=middle-1;
}
else{
low=middle+1;
}
}
if(ketemu){
return middle;
}
else {
return -1;
}
}
void bubblesort(int l[], int n){
int k=n;
int temp;
for(k-1;k>=1;k--){
for(int i =0;i<=k-2;i++){
if (l[i]>l[i+1]){
temp=l[i];
l[i]=l[i+1];
l[i+1]=temp;
}
}
}
}
void tampilsebelum(int i[],int n){
cout<<"isi Array Sebelum diurutkan = ";
for(int a=0;a<n;a++){
cout<<i[a]<<", ";
}
cout<<endl;
}
void tampilsesudah(int i[],int n){
cout<<"isi Array Sesudah diurutkan = ";
for(int a=0;a<n;a++){
cout<<i[a]<<", ";
}
cout<<endl;
}
main(){
int arr[]={4,45,6,7},cari;
tampilsebelum(arr,4);
bubblesort(arr,4);
tampilsesudah(arr,4);
cout<<"Masukan Data yang ingin dicari = ";cin>>cari;
int indexawal=0;
int indexakhir=3;
int hasilpencarian;
hasilpencarian=pencarianbiner(arr,cari,indexawal,indexakhir);
if(hasilpencarian==-1){
cout<<"Angka Yang Anda Cari Tidak Ketemu"<<endl;
}
else {
cout<<"Angka yang anda cari ketemu di index ke = "<<hasilpencarian+1<<endl;
}
}
Membuat program Array Linear
pada array linear kita dapat mencari data, tanpa data harus di urutkan dulu...
contoh : kita mengisi data 1 pada indeks ke- 1, 4 pada indeks ke- 2, 2 pada indeks ke- 3...dan kita ingin mencari data 4.. maka dia akan langsung menemukan data angka 4 pada indeks ke -2... berikut adalah program nya
#include<iostream>
#define max 30
using namespace std;
void bacaData(int a[],int n){
for(int i=0; i<n; i++){
cout<<"masukkan data index ke-"<<i+1<<":";
cin>>a[i];
}
}
void tampilData(int arr[],int n){
for(int i=0; i<n; i++){
if(i%2==1){
}
else{
cout<<"data index ke-"<<i+1<<":"<<arr[i]<<endl;
}
}
}
void tampil_data_rekursif(int arr[],int i, int n){
if(i<n){
cout<<"data index ke-"<<i<<":"<<arr[i]<<endl;
tampil_data_rekursif(arr,i+1,n);
}
}
float hitung_rata(int arr[],int n){
float jumlah;
float hasil;
float x;
for(int i=0; i<n; i++){
if(i%2==1){
x=i;
}
else{
jumlah=jumlah+arr[i];
}
}
hasil=jumlah/x;
return hasil;
}
main(){
int a[max], banyakData;
cout<<"masukkan banyak data :";
cin>>banyakData;
if(banyakData > max){
cout<<"maksimal"<<" "<<max<<" "<<"data"<<endl;
}
else{
//baca data array a
bacaData(a, banyakData);
//tampil data array a
//tampil_data_rekursif(a,0, banyakData);
//tamoil data array a
tampilData(a,banyakData);
cout<<"rata-rata ="<< hitung_rata(a, banyakData);
}
return 0;
}
contoh : kita mengisi data 1 pada indeks ke- 1, 4 pada indeks ke- 2, 2 pada indeks ke- 3...dan kita ingin mencari data 4.. maka dia akan langsung menemukan data angka 4 pada indeks ke -2... berikut adalah program nya
#include<iostream>
#define max 30
using namespace std;
void bacaData(int a[],int n){
for(int i=0; i<n; i++){
cout<<"masukkan data index ke-"<<i+1<<":";
cin>>a[i];
}
}
void tampilData(int arr[],int n){
for(int i=0; i<n; i++){
if(i%2==1){
}
else{
cout<<"data index ke-"<<i+1<<":"<<arr[i]<<endl;
}
}
}
void tampil_data_rekursif(int arr[],int i, int n){
if(i<n){
cout<<"data index ke-"<<i<<":"<<arr[i]<<endl;
tampil_data_rekursif(arr,i+1,n);
}
}
float hitung_rata(int arr[],int n){
float jumlah;
float hasil;
float x;
for(int i=0; i<n; i++){
if(i%2==1){
x=i;
}
else{
jumlah=jumlah+arr[i];
}
}
hasil=jumlah/x;
return hasil;
}
main(){
int a[max], banyakData;
cout<<"masukkan banyak data :";
cin>>banyakData;
if(banyakData > max){
cout<<"maksimal"<<" "<<max<<" "<<"data"<<endl;
}
else{
//baca data array a
bacaData(a, banyakData);
//tampil data array a
//tampil_data_rekursif(a,0, banyakData);
//tamoil data array a
tampilData(a,banyakData);
cout<<"rata-rata ="<< hitung_rata(a, banyakData);
}
return 0;
}
menghitung volume tabung
pada C++ kita juga dapat menghitung volume dari semua bangun ruang, salah satunya kita dapat mengitung volume pada tabung, langsung saja ke programnya :
#include <iostream>
#include <string>
using namespace std;
int main()
{
string raptor_prompt_variable_zzyz;
float vk;
float phi=3.14;
float vt;
int t;
int r;
cout << "MENGHITUNG VOLUME TABUNG DAN KERUCUT" << endl;
raptor_prompt_variable_zzyz ="masukkan jari jari =";
cout << raptor_prompt_variable_zzyz;
cin >> r;
raptor_prompt_variable_zzyz ="masukkan tinggi =";
cout << raptor_prompt_variable_zzyz;
cin >> t;
vt =phi*r*r*t;
vk =1/3.0*phi*r*r*t;
cout << "volume tabung adalah "<<vt << endl;
cout << "volume kerucut adalah"<<vk << endl;
return 0;
}
#include <iostream>
#include <string>
using namespace std;
int main()
{
string raptor_prompt_variable_zzyz;
float vk;
float phi=3.14;
float vt;
int t;
int r;
cout << "MENGHITUNG VOLUME TABUNG DAN KERUCUT" << endl;
raptor_prompt_variable_zzyz ="masukkan jari jari =";
cout << raptor_prompt_variable_zzyz;
cin >> r;
raptor_prompt_variable_zzyz ="masukkan tinggi =";
cout << raptor_prompt_variable_zzyz;
cin >> t;
vt =phi*r*r*t;
vk =1/3.0*phi*r*r*t;
cout << "volume tabung adalah "<<vt << endl;
cout << "volume kerucut adalah"<<vk << endl;
return 0;
}
Mengubah celcius Ke Farenheit dan Reamur (petemuan 3)
Kali ini kita akan mencoba merubah celcius ke farenheit atau pun reamur meggunakan C++. langsung saja kita lihat ke programnya.
#include<iostream>
#include<conio.h>
using namespace std;
class yoogs{
private:
int c;
float r,f;
public:
void masuk(){
cout<<"masukkan cc :";
cin>>c;
}
float reamur(int c){
r=4/5*c;
return r;
}
float farenheit(int c){
f=(9/5*c)+32;
return f;
}
void hasil(){
cout<<"hasil cc ke reamur :"<<r;
cout<<"hasil cc ke farenheit :"<<f;
}
int main(){
yoogs x;
x.masuk();
x.reamur(x.c);
x.farenheit(x.f);
x.hasil();
}
#include<iostream>
#include<conio.h>
using namespace std;
class yoogs{
private:
int c;
float r,f;
public:
void masuk(){
cout<<"masukkan cc :";
cin>>c;
}
float reamur(int c){
r=4/5*c;
return r;
}
float farenheit(int c){
f=(9/5*c)+32;
return f;
}
void hasil(){
cout<<"hasil cc ke reamur :"<<r;
cout<<"hasil cc ke farenheit :"<<f;
}
int main(){
yoogs x;
x.masuk();
x.reamur(x.c);
x.farenheit(x.f);
x.hasil();
}
Langganan:
Postingan (Atom)
Mencari Data
program c++ mencari data yg terdapat pada indeks ke-, dengan metode aray linear. #include<iostream> #include<conio.h> using na...
-
Menghitung Volume Bola Dan Kubus Assalamu'alaikum Wr,Wb Dalam blog ini saya akan memberikan cara bagaimana menghitung volume ...
-
Pada saat kita ingin berolahraga, langkah apa saja yang akan kita lakukan?? Persiapan olahraga : Siapkan baju dan celana khusus o...
-
Komponen Dasar Komputer dan Fungsinya Apa itu komputer ? Istilah komputer sendiri diambil dari bahasa asing ( Inggris ) yaitu to com...