Post kali ini saya mau berbagi Program Konversi Bilangan Biner, Desimal, Oktal & Hexadesimal. Untuk script dapat di lihat dibawah ini semoga bermanfaat & terbantu ...
Silahkan tanyakan jika ada syntax yang kurang paham, bisa hubungi saya langsung atau beri komentar dibawah ini
#include <stdio.h>
#include <string.h>
void welcome() {
printf("PROGRAM KONVERSI BILANGAN");
}
void cls() {
int i;
for (i=0;i<100;i++) {
printf("\n");
}
}
void biner(int n) {
if (n > 0) {
biner(n/2);
printf("%d",n%2);
}
}
int pangkat(int n,int x) {
int nilai=1,i;
for (i=0;i<x;i++) {
nilai=nilai*n;
}
return nilai;
}
int cekdesimal(int x) {
//checking
if (x < 0) { //no minus
return 1;
}
//end of checking, all is right
return 0;
}
int cekbiner(char str[],int *x) {
int i,dec = 0;
//checking
for (i = 0; i < strlen(str); i++)
{
if ((str[i] - '0' != 1 ) && (str[i] - '0' != 0))
{
return 1;
}
}
//end of checking, all is right
for (i =0; i < strlen(str) ; i++)
{
if (str[i] - '0' == 1) {
dec = dec + pangkat(2,strlen(str)-1-i);
}
}
*x = dec;
return 0;
}
int cekoktal(char str[],int *x) {
int i,dec=0;
//checking
if ((strlen(str) >= 6) && (str[0] > 49)) {
return 1;
}
for (i = 0; i < strlen(str); i++)
{
if (!((str[i] > 47 ) && (str[i] < 56)))
{
return 1;
}
}
//end of checking, all is right
for (i =0; i < strlen(str) ; i++)
{
dec = dec + (str[i] - '0') * pangkat(8,strlen(str)-1-i);
}
*x = dec;
return 0;
}
int cekhexa(char str[],int *x) {
int i,dec=0;
//checking
for (i = 0; i < strlen(str); i++)
{
if (! ( ((str[i] > 47 ) && (str[i] < 58)) || ((str[i] > 96 ) && (str[i] < 103)) || ((str[i] > 64 ) && (str[i] < 71)) ))
{
return 1;
}
}
//end of checking, all is right
for (i =0; i < strlen(str) ; i++)
{
if ((str[i] >= '0' ) && (str[i] <= '9')) {
dec = dec + (str[i] - '0') * pangkat(16,strlen(str)-1-i);
}
else if ((str[i] > '@' ) && (str[i] < 'G')) {
dec = dec + (str[i] - 55) * pangkat(16,strlen(str)-1-i);
}
else if ((str[i] > 96 ) && (str[i] < 'g')) {
dec = dec + (str[i] - 87) * pangkat(16,strlen(str)-1-i);
}
}
*x = dec;
return 0;
}
int main() {
int x,dec;
char oct[6],bin[16],hex[4];
welcome();
while(1) {
printf("\n\n===============================\nBasis Angka Masukan\n1. Desimal\n2. Biner\n3. Oktal\n4. Heksadesimal\nChoose: ");
scanf("%d",&x);
switch(x) {
case 1:
printf("Masukan angka desimal (Maksimal 65535): ");
scanf("%d",&dec);
if(cekdesimal(dec) != 0) {
printf("Input salah");
break;
}
printf("Biner: ");
biner(dec);
printf("\nOktal: %o",dec);
printf("\nHexa: %X",dec);
break;
case 2:
printf("Masukan angka biner (Maksimal 16 bit): ");
scanf("%s",bin);
if(cekbiner(bin,&dec) != 0) {
printf("Input salah");
break;
}
printf("\nDesimal: %d",dec);
printf("\nOktal: %o",dec);
printf("\nHexa: %X",dec);
break;
case 3:
printf("Masukan angka Oktal (Maksimal 177777): ");
scanf("%s",oct);
if(cekoktal(oct,&dec) != 0) {
printf("Input salah");
break;
}
printf("Desimal: %d",dec);
printf("\nBiner: ");
biner(dec);
printf("\nHexa: %X",dec);
break;
case 4:
printf("Masukan angka hexa (Maksimal FFFF): ");
scanf("%s",hex);
if(cekhexa(hex,&dec) != 0) {
printf("Input salah");
break;
}
printf("Desimal: %d",dec);
printf("\nBiner: ");
biner(dec);
printf("\nOktal: %o",dec);
break;
default: printf("Not Present");
} //end case
} //end loop
return 0;
} //end main
#include <string.h>
void welcome() {
printf("PROGRAM KONVERSI BILANGAN");
}
void cls() {
int i;
for (i=0;i<100;i++) {
printf("\n");
}
}
void biner(int n) {
if (n > 0) {
biner(n/2);
printf("%d",n%2);
}
}
int pangkat(int n,int x) {
int nilai=1,i;
for (i=0;i<x;i++) {
nilai=nilai*n;
}
return nilai;
}
int cekdesimal(int x) {
//checking
if (x < 0) { //no minus
return 1;
}
//end of checking, all is right
return 0;
}
int cekbiner(char str[],int *x) {
int i,dec = 0;
//checking
for (i = 0; i < strlen(str); i++)
{
if ((str[i] - '0' != 1 ) && (str[i] - '0' != 0))
{
return 1;
}
}
//end of checking, all is right
for (i =0; i < strlen(str) ; i++)
{
if (str[i] - '0' == 1) {
dec = dec + pangkat(2,strlen(str)-1-i);
}
}
*x = dec;
return 0;
}
int cekoktal(char str[],int *x) {
int i,dec=0;
//checking
if ((strlen(str) >= 6) && (str[0] > 49)) {
return 1;
}
for (i = 0; i < strlen(str); i++)
{
if (!((str[i] > 47 ) && (str[i] < 56)))
{
return 1;
}
}
//end of checking, all is right
for (i =0; i < strlen(str) ; i++)
{
dec = dec + (str[i] - '0') * pangkat(8,strlen(str)-1-i);
}
*x = dec;
return 0;
}
int cekhexa(char str[],int *x) {
int i,dec=0;
//checking
for (i = 0; i < strlen(str); i++)
{
if (! ( ((str[i] > 47 ) && (str[i] < 58)) || ((str[i] > 96 ) && (str[i] < 103)) || ((str[i] > 64 ) && (str[i] < 71)) ))
{
return 1;
}
}
//end of checking, all is right
for (i =0; i < strlen(str) ; i++)
{
if ((str[i] >= '0' ) && (str[i] <= '9')) {
dec = dec + (str[i] - '0') * pangkat(16,strlen(str)-1-i);
}
else if ((str[i] > '@' ) && (str[i] < 'G')) {
dec = dec + (str[i] - 55) * pangkat(16,strlen(str)-1-i);
}
else if ((str[i] > 96 ) && (str[i] < 'g')) {
dec = dec + (str[i] - 87) * pangkat(16,strlen(str)-1-i);
}
}
*x = dec;
return 0;
}
int main() {
int x,dec;
char oct[6],bin[16],hex[4];
welcome();
while(1) {
printf("\n\n===============================\nBasis Angka Masukan\n1. Desimal\n2. Biner\n3. Oktal\n4. Heksadesimal\nChoose: ");
scanf("%d",&x);
switch(x) {
case 1:
printf("Masukan angka desimal (Maksimal 65535): ");
scanf("%d",&dec);
if(cekdesimal(dec) != 0) {
printf("Input salah");
break;
}
printf("Biner: ");
biner(dec);
printf("\nOktal: %o",dec);
printf("\nHexa: %X",dec);
break;
case 2:
printf("Masukan angka biner (Maksimal 16 bit): ");
scanf("%s",bin);
if(cekbiner(bin,&dec) != 0) {
printf("Input salah");
break;
}
printf("\nDesimal: %d",dec);
printf("\nOktal: %o",dec);
printf("\nHexa: %X",dec);
break;
case 3:
printf("Masukan angka Oktal (Maksimal 177777): ");
scanf("%s",oct);
if(cekoktal(oct,&dec) != 0) {
printf("Input salah");
break;
}
printf("Desimal: %d",dec);
printf("\nBiner: ");
biner(dec);
printf("\nHexa: %X",dec);
break;
case 4:
printf("Masukan angka hexa (Maksimal FFFF): ");
scanf("%s",hex);
if(cekhexa(hex,&dec) != 0) {
printf("Input salah");
break;
}
printf("Desimal: %d",dec);
printf("\nBiner: ");
biner(dec);
printf("\nOktal: %o",dec);
break;
default: printf("Not Present");
} //end case
} //end loop
return 0;
} //end main
Program Konversi Bilangan Biner, Desimal, Oktal dan Hexadesimal
Posted by RZDev: Belajar Programming! on Sunday, October 8, 2017
Berikut syntax C++ untuk penjumlahan 2 matriks dengan ordo BEBAS ...
Script ini tidak merupakan gabungan dari program yang menggunakan prosedur, jadi deklarasi silahkan di buat sendiri. Semoga dapat membantu !
void tambah ()
{
system("cls");
cout << "PENJUMLAHAN
MATRIKS " << endl;
do
{
cout << "Jumlah Baris
: "; cin >> baris;
cout << "Jumlah Kolom
: "; cin >> kolom;
}
while
((baris>10)||(kolom>10));
cout << "Matrix
A" << endl;
for(i=0;i<baris;i++)
for(j=0;j<kolom;j++)
{
cout << "data ["
<< i << "," << j << "] = "; cin
>> mA[i][j];
}
cout << "Matrix
B" << endl;
for(i=0;i<baris;i++)
for(j=0;j<kolom;j++)
{
cout << "data ["
<< i << "," << j << "] = "; cin
>> mB[i][j];
}
for(i=0;i<baris;i++)
for(j=0;j<kolom;j++)
hasil[i][j] =
mA[i][j] + mB[i][j];
cout <<
"\nHasilnya ..." << endl;
cout <<
"Matrix A + Matrix B
= Matrix C";
for(i=0;
i<baris; i++)
{
cout<<'\n';
for(j=0;
j<kolom; j++)
cout <<
setw(4) << mA[i][j];
cout <<
" ";
for(j=0;
j<kolom; j++)
cout <<
setw(4) << mB[i][j];
cout <<
" ";
for(j=0;
j<kolom; j++)
cout <<
setw(4) << hasil[i][j];
cout <<
endl;
}
}
Penjumlahan Dua Buah Matriks Dengan C++
Posted by RZDev: Belajar Programming! on Thursday, March 23, 2017
Programming susah ? kata siapa....
Memang untuk orang yang bener - bener baru di dunia coding akan berkata demikian, namun jika sudah terbiasa akan lebih mudah.
Syarat utama bisa programming adalah mencoba & mencoba, seperti pepatah mengatakan practice makes perfect. Untuk itu rezkycpp akan memberikan beberapa tips yang mungkin akan membantu kalian yang baru saja memasuki dunia programmers.
Programming Susah ? Baca 3 Tips Berikut Ini !
Posted by RZDev: Belajar Programming! on Friday, January 13, 2017
Contoh Program Sederhana Binary Search C++
Posted by RZDev: Belajar Programming! on Sunday, January 8, 2017
Program menghitung luas, keliling & diameter lingkaran ini menggunakan prosedur void & switch case. Script yang disusun cukup panjang namun masih bisa disederhanakan lagi. Berikut scriptnya :
#include <iostream>
#include <math.h>
#include <stdlib.h>
using namespace std;
float luas(float jari){
return jari*jari*3.14;
}
float keliling(float jari){
return 2*3.14*jari;
}
float diameter(float jari){
return jari*2;
}
int main()
{
menu:
system("cls");
int masukan;
char pil;
float jari;
do
{
cout << "==================================" << endl;
cout << " MENU " << endl;
cout << "1. Hitung Luas Lingkaran " << endl;
cout << "2. Hitung Keliling Lingkaran " << endl;
cout << "3. Hitung Diameter Lingkaran " << endl;
cout << "4. Keluar" << endl;
cout << "==================================" << endl;
cout << "Masukkan pilihan : ";cin>>masukan;
system("cls");
if (masukan == 1 || masukan == 2 || masukan == 3 || masukan == 4) break;
else (cout << " Maaf pilihan anda tidak tersedia!" ) << endl;
}
while (masukan != 4);
switch (masukan)
{
case 1:
cout << "==================================" << endl;
cout << " LUAS LINGKARAN " << endl;
cout << "==================================" << endl;
cout << "Masukkan Nilai Jari - Jari : "; cin >> jari;
cout << "Luas Lingkaran : "<< luas (jari);
cout << "\nKembali ke Menu (Y/N)? : ";
cin >> pil;
if (pil=='y'||pil=='Y')
{
goto menu;
}
else if (pil=='n'||pil=='N')
{
return 0;
}
else
{
cout << "INPUT Y atau N saja !" << endl;
}
break;
case 2:
cout << "==================================" << endl;
cout << " KELILING LINGKARAN " << endl;
cout << "==================================" << endl;
cout << "Masukkan Nilai Jari - Jari : "; cin >> jari;
cout << "Keliling Lingkaran : "<< keliling (jari);
cout << "\nKembali ke Menu (Y/N)? : ";
cin >> pil;
if (pil=='y'||pil=='Y')
{
goto menu;
}
else if (pil=='n'||pil=='N')
{
return 0;
}
else
{
cout << "INPUT Y atau N saja !" << endl;
}
break;
case 3:
cout << "==================================" << endl;
cout << " DIAMETER LINGKARAN " << endl;
cout << "==================================" << endl;
cout << "Masukkan Nilai Jari - Jari : "; cin >> jari;
cout << "Diameter Lingkaran : "<< diameter (jari);
cout << "\nKembali ke Menu (Y/N)? : ";
cin >> pil;
if (pil=='y'||pil=='Y')
{
goto menu;
}
else if (pil=='n'||pil=='N')
{
return 0;
}
else
{
cout << "INPUT Y atau N saja !" << endl;
}
break;
case 4:
return 0;
}
system("pause");
cout << "\nKembali ke Menu (Y/N)? : ";
cin >> pil;
if (pil=='y'||pil=='Y')
{
goto menu;
}
else if (pil=='n'||pil=='N')
{
return 0;
}
else
{
cout << "INPUT Y atau N saja !" << endl;
}
return 0;
}
#include <math.h>
#include <stdlib.h>
using namespace std;
float luas(float jari){
return jari*jari*3.14;
}
float keliling(float jari){
return 2*3.14*jari;
}
float diameter(float jari){
return jari*2;
}
int main()
{
menu:
system("cls");
int masukan;
char pil;
float jari;
do
{
cout << "==================================" << endl;
cout << " MENU " << endl;
cout << "1. Hitung Luas Lingkaran " << endl;
cout << "2. Hitung Keliling Lingkaran " << endl;
cout << "3. Hitung Diameter Lingkaran " << endl;
cout << "4. Keluar" << endl;
cout << "==================================" << endl;
cout << "Masukkan pilihan : ";cin>>masukan;
system("cls");
if (masukan == 1 || masukan == 2 || masukan == 3 || masukan == 4) break;
else (cout << " Maaf pilihan anda tidak tersedia!" ) << endl;
}
while (masukan != 4);
switch (masukan)
{
case 1:
cout << "==================================" << endl;
cout << " LUAS LINGKARAN " << endl;
cout << "==================================" << endl;
cout << "Masukkan Nilai Jari - Jari : "; cin >> jari;
cout << "Luas Lingkaran : "<< luas (jari);
cout << "\nKembali ke Menu (Y/N)? : ";
cin >> pil;
if (pil=='y'||pil=='Y')
{
goto menu;
}
else if (pil=='n'||pil=='N')
{
return 0;
}
else
{
cout << "INPUT Y atau N saja !" << endl;
}
break;
case 2:
cout << "==================================" << endl;
cout << " KELILING LINGKARAN " << endl;
cout << "==================================" << endl;
cout << "Masukkan Nilai Jari - Jari : "; cin >> jari;
cout << "Keliling Lingkaran : "<< keliling (jari);
cout << "\nKembali ke Menu (Y/N)? : ";
cin >> pil;
if (pil=='y'||pil=='Y')
{
goto menu;
}
else if (pil=='n'||pil=='N')
{
return 0;
}
else
{
cout << "INPUT Y atau N saja !" << endl;
}
break;
case 3:
cout << "==================================" << endl;
cout << " DIAMETER LINGKARAN " << endl;
cout << "==================================" << endl;
cout << "Masukkan Nilai Jari - Jari : "; cin >> jari;
cout << "Diameter Lingkaran : "<< diameter (jari);
cout << "\nKembali ke Menu (Y/N)? : ";
cin >> pil;
if (pil=='y'||pil=='Y')
{
goto menu;
}
else if (pil=='n'||pil=='N')
{
return 0;
}
else
{
cout << "INPUT Y atau N saja !" << endl;
}
break;
case 4:
return 0;
}
system("pause");
cout << "\nKembali ke Menu (Y/N)? : ";
cin >> pil;
if (pil=='y'||pil=='Y')
{
goto menu;
}
else if (pil=='n'||pil=='N')
{
return 0;
}
else
{
cout << "INPUT Y atau N saja !" << endl;
}
return 0;
}
Jika ada script yang salah segera laporkan, terima kasih & semoga bermanfaat
Halo, posting kali ini kita akan membahas program kombinasi, yaitu Input Array, Tampil Array, mencari Nilai minimun & maksimum. Program ini menggunakan switch-case. Langsung saja lihat script C++ nya dibawah ini :
#include <iostream>
#include <stdlib.h>
using namespace std;
int main()
{
int pilihan,i,indeks;
float ratarata,jumlah;
int minimum;
int maksimum;
int bilangan1;
int bilangan[100];
char pil;
menu:
system("cls");
cout << "========================" << endl;
cout << " MENU " << endl;
cout << "========================" << endl;
cout << "1. Input Array " << endl;
cout << "2. Tampilkan Array " << endl;
cout << "3. Cari Nilai Minimum " << endl;
cout << "4. Cari Nilai Maksimum " << endl;
cout << "5. Exit " << endl;
cout << "========================" << endl;
cout << "Masukkan Pilihan : "; cin >> pilihan;
cout << "========================" << endl;
switch(pilihan){
case 1:
cout << "Masukkan Jumlah Array : "; cin >> bilangan1;
for(i=0;i<bilangan1;i++){
cout << "Masukkan Bilangan ke-"<<i+1<< " :";
cin >> bilangan[i];
}
break;
case 2:
for (i=0;i<bilangan1;i++){
cout << "Bilangan Array ke-"<<i+1<< " :"<<bilangan[i]<<endl;
}
break;
case 3:
minimum=bilangan[0];
for (indeks=0;indeks<bilangan1;indeks++)
if (minimum>bilangan[indeks])
{
minimum=bilangan[indeks];
}
cout << "Bilangan Minimumnya adalah "<<minimum<<endl;
break;
case 4:
maksimum=bilangan[0];
for (indeks=0;indeks<bilangan1;indeks++)
if (maksimum<bilangan[indeks])
{
maksimum=bilangan[indeks];
}
cout << "Bilangan Maksimumnya adalah "<<maksimum<<endl;
break;
case 5:
return 0;
}
system ("pause");
goto menu;
return 0;
}
#include <stdlib.h>
using namespace std;
int main()
{
int pilihan,i,indeks;
float ratarata,jumlah;
int minimum;
int maksimum;
int bilangan1;
int bilangan[100];
char pil;
menu:
system("cls");
cout << "========================" << endl;
cout << " MENU " << endl;
cout << "========================" << endl;
cout << "1. Input Array " << endl;
cout << "2. Tampilkan Array " << endl;
cout << "3. Cari Nilai Minimum " << endl;
cout << "4. Cari Nilai Maksimum " << endl;
cout << "5. Exit " << endl;
cout << "========================" << endl;
cout << "Masukkan Pilihan : "; cin >> pilihan;
cout << "========================" << endl;
switch(pilihan){
case 1:
cout << "Masukkan Jumlah Array : "; cin >> bilangan1;
for(i=0;i<bilangan1;i++){
cout << "Masukkan Bilangan ke-"<<i+1<< " :";
cin >> bilangan[i];
}
break;
case 2:
for (i=0;i<bilangan1;i++){
cout << "Bilangan Array ke-"<<i+1<< " :"<<bilangan[i]<<endl;
}
break;
case 3:
minimum=bilangan[0];
for (indeks=0;indeks<bilangan1;indeks++)
if (minimum>bilangan[indeks])
{
minimum=bilangan[indeks];
}
cout << "Bilangan Minimumnya adalah "<<minimum<<endl;
break;
case 4:
maksimum=bilangan[0];
for (indeks=0;indeks<bilangan1;indeks++)
if (maksimum<bilangan[indeks])
{
maksimum=bilangan[indeks];
}
cout << "Bilangan Maksimumnya adalah "<<maksimum<<endl;
break;
case 5:
return 0;
}
system ("pause");
goto menu;
return 0;
}
Sekian & semoga bermanfaat!
Kali ini kita akan membahas sebuah program yang akan mengurutkan data yang tersimpan didalam array berdasarkan yang genap atau ganjil. Pada program ini kita menggunakan Prosedur Void, Array.
Berikut ini scriptnya :
#include <iostream>
using namespace std;
void urutanganjil(int n, int index[])
{
for (n=0; n<10; n++)
{
if (n%2 != 0)
{
cout << "Nilai Array index ke " << n << " = " << index[n] << endl;
}
}
}
void input(int n, int index[])
{
for(n=0; n<10; n++)
{
cout << "Nilai Array index ke " << n << " = "; cin >> index[n+1];
}
}
int main()
{
int n, index[10];
input (n, index);
cout << endl;
urutanganjil(n, index);
return 0;
}
Script diatas adalah pengurutan berdasarkan yang ganjil, jika anda ingin pengurutan berdasarkan yang genap maka modifikasilah script diatas.
Terima Kasih & Semoga bermanfaat!