Program menghitung resistor dengan bahasa c

Listing Programnya :

//PROGRAM MENGHITUNG NILAI SUATU RESISTOR DENGAN MEMBACA GELANG WARNANYA

#include <stdio.h>
#include <math.h>
#include <stdlib.h>
#include <conio.h>
//pendeklarasian fungsi
int salah();
int kerja();
int htgkembali();
int hitungcetak(double x, double y, double z);

void main()//bagian utama program
{
kerja();//memanggil fungsi kerja
}

int kerja()
{
int a, b, c, g, z, gel[3]; //pendeklarasian variabel dan array bertipe integer
double g1,g2,x,y; //pendeklarasian veriabel bertipe double
printf(“PROGRAM MENGHITUNG NILAI SUATU RESISTOR DENGAN MEMBACA GELANG WARNANYA\n”);
printf(“[0] Hitam\n[1] Coklat\n[2] Merah\n[3] jingga\n[4] Kuning\n[5] Hijau\n”);
printf(“[6] Biru\n[7] Ungu\n[8] Abu-Abu\n[9] Putih\n”);
printf(“[10] Emas\n[11] Perak\n[12] Tak Berwarna\n\n”);
printf(“nb: ketik angka/hurufnya saja!\n\n”);
for (g=0;g<=3;g++) //perulangan untuk menginput warna gelang
{
printf(“Ketikkan warna gelang ke-%d : “, g+1);
scanf(“%d”,&gel[g]); //dibaca dan dimasukkan ke dalam array gel[]
}
switch (gel[0]) //penyeleksian kondisi pada gelang pertama
{
case 0 : g1=0; break;
case 1 : g1=1; break;
case 2 : g1=2; break;
case 3 : g1=3; break;
case 4 : g1=4; break;
case 5 : g1=5; break;
case 6 : g1=6; break;
case 7 : g1=7; break;
case 8 : g1=8; break;
case 9 : g1=9; break;
default : {printf(“Masukan gelang pertama salah!\n”);}
}
switch (gel[1]) //penyeleksian kondisi pada gelang kedua
{
case 0 : g2=0; break;
case 1 : g2=1; break;
case 2 : g2=2; break;
case 3 : g2=3; break;
case 4 : g2=4; break;
case 5 : g2=5; break;
case 6 : g2=6; break;
case 7 : g2=7; break;
case 8 : g2=8; break;
case 9 : g2=9; break;
default : {printf(“Masukan gelang kedua salah!\n”);}
}
//pada bagian ini nilai resistor ditentukan berdasarkan warna gelang
switch (gel[2]) //penyeleksian kondisi pada gelang ketiga
{
case 0 : x=g1*(pow(10,1));y=g2*(pow(10,0));break;
case 1 : x=g1*(pow(10,2));y=g2*(pow(10,1));break;
case 2 : x=g1*(pow(10,3));y=g2*(pow(10,2));break;
case 3 : x=g1*(pow(10,4));y=g2*(pow(10,3));break;
case 4 : x=g1*(pow(10,5));y=g2*(pow(10,4));break;
case 5 : x=g1*(pow(10,6));y=g2*(pow(10,5));break;
case 6 : x=g1*(pow(10,7));y=g2*(pow(10,6));break;
case 7 : x=g1*(pow(10,8));y=g2*(pow(10,7));break;
case 8 : x=g1*(pow(10,9));y=g2*(pow(10,8));break;
case 9 : x=g1*(pow(10,10));y=g2*(pow(10,9));break;
case 10 : x=g1*(pow(10,0));y=g2*(pow(10,-1));break;
default : {printf(“Masukan gelang ketiga salah!\n”);}
}
//penentuan nilai toleransi
switch (gel[3]) //penyeleksian kondisi pada gelang keempat
{
case 10 : z=5;break;
case 11 : z=10;break;
case 12 : z=20;break;
default : {}
}
if ((x<=0) || (y<=0) || (z<=0)) {salah();}//jika terjadi kesalahan dalam menginput, maka akan tampil pesan ini

else
{
hitungcetak(x, y, z); //pemanggilan fungsi hitungcetak
}
}

int hitungcetak(double x,double y, double z) //fungsi untuk menghitung dan mencetak hasil
{

float res,tol, maks, min,w;//pendeklarasian veriabel bertipe float
res=x+y; //penghitungan nilai dengan menjumlahkan variabel x dan y
tol=z; //assigment pada variabel tol dengan nilai yang ada pada variabel z
maks=res+(tol/100*res); //penghitungan nilai maksimum
min=res-(tol/100*res); //penghitungan nilai minimum
puts(“\n\nBerikut hasil pengitungan:\n++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++”);
printf(“Nilai Resistor tersebut adalah       = %.0f OHM “, res); //nilai hambatan
printf(“atau %.2f K.OHM\n”, res/1000); //konversi ke Kilo Ohm
printf(“Dengan toleransi                     = %.0f persen\n”, tol); //mencetak nilai toleransi
printf(“Maka nilai maksimumnya adalah        = %.0f Ohm\n”, maks); //mencetak nilai maksimum
printf(“dan nilai minimumnya adalah          = %.0f Ohm\n”, min); //mencetak nilai minimum
puts(“++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++\nPenghitungan selesai!\n\n”);
htgkembali();
}

int htgkembali()//fungsi konfirmasi apakah kita akan menghitung kembali
{
char k;
scanf(“%c”,&k);
{
switch(k)
{
case ‘y’: kerja();break;
case ‘Y’: kerja();break;
case ‘n’: printf(“\n\n\nTerima kasih atas penggunaan program ini.\nSemoga bermanfaat.\n”);getche;exit(0);break;
case ‘N’: printf(“\n\n\nTerima kasih atas penggunaan program ini.\nSemoga bermanfaat.\n”);getche;exit(0);break;
default: {printf(“Apakah anda ingin menghitung kembali?[jawab y atau n]”);htgkembali();}
}
}

}

int salah()//fungsi yang dipanggil jika input salah
{
char s;
printf(“\nOopss!\nMasukan anda ternyata ada yang salah!\n”);
scanf(“%c”,&s);
{
switch(s)
{
case ‘y’: htgkembali();break;
case ‘Y’: htgkembali();break;
case ‘n’: exit(0);break;
case ‘N’: exit(0);break;
default:{printf(“Apakah anda ingin mengulanginya?”);htgkembali();}
}
}
}

Iklan

perkalian matriks 3×3 dengan bahasa c

Naah ini PR praktek bahasa c ,tentang perkalian matriks 3×3.silahkan di copi paste ,

/*********************************************/

/* Program perkalian matriks 3×3 dua dimensi */

/*PR praktek Bahasa c                                         */

/*Silahkan dipelajari,jangan di copi paste doang */

/******************************************/

#include <stdio.h>
#include <conio.h>

void main()
{ int A[3][3], B[3][3], X[3][3], i, j;
clrscr();

/******* Masukkan matriks A *******/
for(i=0;i<3;i++)
{ for(j=0;j<3;j++)
{  printf(“input data matrik A[%i][%i] : “,i+1,j+1);
scanf(“%i”,&A[i][j]);
}
}

/******** Masukkan matriks B ********/
for(i=0;i<3;i++)
{  for(j=0;j<3;j++)
{  printf(“input data matrik B[%i][%i] : “,i+1,j+1);
scanf(“%i”,&B[i][j]);
}
}

/******** Proses perkalian matriks A dan B ********/
for(i=0;i<3;i++)
{  for(j=0;j<3;j++)
{  X[i][j]=A[i][j]*B[i][j];
}
}

/******** Cetak isi matriks A ********/
printf(“\n matrik A\n”);
for(i=0;i<3;i++)
{  for(j=0;j<3;j++)
printf(“%6i”,A[i][j]);
printf(“\n”);
}
printf(“\n”);

/******** Cetak isi matriks B *******/
printf(“\n matrik B\n”);
for(i=0;i<3;i++)
{  for(j=0;j<3;j++)
printf(“%6i”,B[i][j]);
printf(“\n”);
}
printf(“\n”);

/******** Cetak hasil perkalian matriks A dan B *******/
printf(“\n matrik Perkalian AxB\n”);
for(i=0;i<3;i++)
{  for(j=0;j<3;j++)
printf(“%6i”,X[i][j]);
printf(“\n”);
}
printf(“\n\n”);

getch();
}

Penjumlahan matriks 3×4

/* Program penjumlahan matriks dua dimensi */
#include <stdio.h>
#include <conio.h>

void main()
{ int A[3][4], B[3][4], X[3][4], Y[3][4], C[3][4], i, j;
clrscr();

/******* Masukkan matriks A *******/
for(i=0;i<3;i++)
{ for(j=0;j<4;j++)
{  printf(“input data matrik A[%i][%i] : “,i+1,j+1);
fflush(stdin);scanf(“%i”,&A[i][j]);
}
}

/******** Masukkan matriks B ********/
for(i=0;i<3;i++)
{  for(j=0;j<4;j++)
{  printf(“input data matrik B[%i][%i] : “,i+1,j+1);
fflush(stdin);scanf(“%i”,&B[i][j]);
}
}

/******** Proses penjumlahan matriks A dan B ********/
for(i=0;i<3;i++)
{  for(j=0;j<4;j++)
{  X[i][j]=A[i][j]+B[i][j];
}
}

/******** Cetak isi matriks A ********/
printf(“\n matrik A\n”);
for(i=0;i<3;i++)
{  for(j=0;j<4;j++)
printf(“%6i”,A[i][j]);
printf(“\n”);
}
printf(“\n”);

/******** Cetak isi matriks B *******/
printf(“\n matrik B\n”);
for(i=0;i<3;i++)
{  for(j=0;j<4;j++)
printf(“%6i”,B[i][j]);printf(“\n”);
}
printf(“\n”);

/******** Cetak hasil penjumlahan matriks A dan B *******/
printf(“\n matrik penjumlahan A+B\n”);
for(i=0;i<3;i++)
{  for(j=0;j<4;j++)
printf(“%6i”,X[i][j]);printf(“\n”);
}
printf(“\n\n”);

getch();
}

array multi dimensi

berikut ini adalah program array multi dimensi ,dari praktek bahasa c

/*Praktek bahasa c      */
/*STT DUTA BANGSA @2010 */
#include <stdio.h>
#include <conio.h>
void main()
{ int i, j, k;
static int data_huruf[3][8][8] =
{ { { 1, 1, 1, 1, 1, 1, 1, 0 },
{ 1, 1, 0, 0, 0, 0, 1, 0 },
{ 1, 1, 0, 0, 0, 0, 0, 0 },
{ 1, 1, 1, 1, 1, 1, 1, 0 },
{ 0, 0, 0, 0, 1, 1, 1, 0 },
{ 1, 0, 0, 0, 1, 1, 1, 0 },
{ 1, 1, 1, 1, 1, 1, 1, 0 },
{ 0, 0, 0, 0, 0, 0, 0, 0 }
},
{ { 1, 1, 1, 1, 1, 1, 1, 1 },
{ 1, 1, 1, 1, 1, 1, 1, 1 },
{ 0, 0, 0, 1, 1, 0, 0, 0 },
{ 0, 0, 0, 1, 1, 0, 0, 0 },
{ 0, 0, 0, 1, 1, 0, 0, 0 },
{ 0, 0, 0, 1, 1, 0, 0, 0 },
{ 0, 0, 0, 1, 1, 0, 0, 0 },
{ 0, 0, 0, 1, 1, 0, 0, 0 }
},
{ { 1, 1, 1, 1, 1, 1, 1, 1 },
{ 1, 1, 1, 1, 1, 1, 1, 1 },
{ 0, 0, 0, 1, 1, 0, 0, 0 },
{ 0, 0, 0, 1, 1, 0, 0, 0 },
{ 0, 0, 0, 1, 1, 0, 0, 0 },
{ 0, 0, 0, 1, 1, 0, 0, 0 },
{ 0, 0, 0, 1, 1, 0, 0, 0 },
{ 0, 0, 0, 1, 1, 0, 0, 0 }
}

};
/* menampilkan Huruf */
for(i=0; i<3; i++)
{ for(j=0; j<8; j++)
{ for(k=0;k<8; k++)
if(data_huruf[i][j][k])
putchar(‘\xDB’);
else
printf(” “);
puts(” “);
}
puts(” “);
}
getch();
}

Screenshoot program

praktek algoritma dengan c++

Menghadapi praktek algoritma dan pemograman dengan bahasa C++ ,kami hanya bisa menyediakan sedikit bahan bacaan beserta software turbo c++ 4.5

Silahkan didownload :

————————————————

Bahan yang lain akan segera menyusul 🙂

selamat belajar

Tingkat Akses Dalam Kelas di Pemrograman C++

Tingkat Akses Dalam Kelas di Pemrograman C++

Saat membuat kelas dengan C++ kita akan selalu menemukan kata kunci yang umum digunakan seperti public, private dan protected. Kata kunci ini merupakan tingkatan akses yang digunakan dalam mengakses data-data yang ada dalam program yang kita buat dengan C++. Dengan meggunakan kata kunci ini kita dapat memberikan pembatasan akses terhadap data-data yang ada dalam kelas hingga kita dapat menentukan data mana saja yang dapat diakses oleh kelas lain dan data mana saja tidak dapat (tidak boleh) diakses.

Public
Tingkat akses ini memberikan hak akses secara umum kepada kelas-kelas turunannya maupun kepada lingkungan diluar program.

Private
Tingkat akses ini hanya akan memberikan hak akses data kepada kelas yang bersangkutan saja. Data yang menggunakan tingkat akses ini tidak dapat diakses oleh kelas turunannya apalagi lingkungan diluar program. Setiap variabel atau fungsi yang tidak didefinisikan tingkat aksesnya secara otomatis akan ditetapkan sebagai data dengan tingakat akses private.

Protected
Tingkat akses ini memberikan hak akses kepada kelas turunannya tetapi tetap tidak mengizinkan lingkungan luar program untuk mengakses data ini.

Dalam program, tingkat akses dapat diterapkan pada variabel, fungsi dan kelas, contohnya adalah sebagai berikut :

//penerapan hak akses public pada variabel
public:
int y = 0;

//penerapan hak akses private pada variabel
private:
int x;

//penerapan hak akses public pada fungsi
public:
getX(){
….
statement
….
}

Untuk penerapan tingkat akses pada kelas biasanya digunakan dalam menentukan hak akses pada saat proses pewarisan, seperti berikut :

class induk {
int x;
public:
void setX(int xx) {
x=xx;
}

int getX() {
return x;
}
}

class turunan: public induk {
int y;
public:
void setY(int yy) {
y=yy;
}

int getY() {
return y;
}
}

Coba lihat pada baris kode class turunan: public induk, penerapan tingkat akses public pada proses pewarisan ini akan menjadikan setiap data public pada kelas induk tetap akan menjadi data public pada kelas turunannya.

Selain tingkat akses Public, Private dan Protected, C++ juga dapat menggunakan kata kunci Friend untuk memberikan hak akses terhadap data yang terdapat dalam suatu kelas. Kata kunci ini biasanya biasanya digunakan untuk mengakses data private yang terdapat dalam kelas yang lain. Dalam pengaplikasiannya biasanya disebut Friend Function dan Friend Class dan kebetulan disini kita tidak akan membahas hak akses ini, silahkan Anda cari disumber yang lain.

Pewarisan Kelas Dalam C++


Dalam pemrograman berorientasi objek, pewarisan (inheritance) merupakan salah satu sifat utama yang menjadi ciri dari konsep pemrograman OOP. Suatu kelas dasar dalam program memiliki kemampuan untuk mewariskan sifat-sifat yang terdapat didalamnya ke kelas turunannya. Kelas dasar yang dimaksud disini adalah kelas yang akan dijadikan sebagai induk (base class) yang akan menurunkan sifat-sifatnya kedalam kelas-kelas turunannya (derived class).
Untuk mempermudah pemahaman, bentuk listing disini akan saya pecah menjadi beberapa bagian, sedangkan dalam bentuk aslinya ini merupakan satu kesatuan program dan jangan dipecah-pecah menjadi beberapa file 🙂

Berikut ini contoh kelas dasar yang akan digunakan untuk membuat kelas turunan :

#include <iostream>

using namespace std;

class induk {
int x;
public:
void setX(int xx) {
x=xx;
}

int getX() {
return x;
}
}

Sekarang kita akan membuat kelas yang diturunkan dari kelas induk diatas :

class turunan: public induk {
int y;
public:
void setY(int yy) {
y=yy;
}

int getY() {
return y;
}
}

Untuk mengaplikasikan proses pewarisannya sekarang kita buat fungsi utamanya :

int main() {

induk a; // membuat instan kelas induk : a
a.setX(12);

cout<<”Nilai x yang akan dipanggil dari kelas induk : ”;
cout<<a.getX()<<endl;
cout<<”\n”<<endl;

turunan b; //membuat instan kelas turunan : b
b.setY(40);

cout<<”Nilai y yang terdapat pada kelas turunan : “;
cout<<a.getX()<<endl;
cout<<”\n”<<endl;

b.setX(35);

cout<<”Nilai x yang dipanggil dari kelas turunan : “;
cout<<b.getX()<<endl;
cout<<”\n”<<endl;

return 0;
}

Dari fungsi utama diatas kita dapat melihat bagaimana kelas dasar menurunkan sifat-sifatnya kedalam kelas turunannya bisa dilihat baris kode berikut :

b.setX(35);

cout<<”Nilai x yang dipanggil dari kelas turunan : “;
cout<<b.getX()<<endl;
cout<<”\n”<<endl;

Kelas turunan dapat memanggil fungsi yang terdapat dalam kelas utama setX() dengan memasukan nilai baru 35 dan memanggil fungsi getX(), hal ini terjadi karena kelas turunan mewariskan sifat objek yang ada pada kelas induk.