TUTORIAL CODEIGNITER : APLIKASI WEBSITE / BLOG (WEBLOG) SEDERHANA DENGAN CODEIGNITER

Oke gan, langsung saja untuk screen shoot contoh aplikasi website, weblog, blog dengan codeigniter yang ane kasi, seperti di bawah ini...

Tutorial HTML

HTML merupakan bahasa dasar pembuatan web. Disebut dasar karena dalam membuat web, jika hanya menggunakan HTML tampilan web terasa hambar. Terdapat banyak bahasa pemograman web yang ditujukan untuk memanipulasi kode HTML, seperti ...

TUTORIAL ORACLE - KONEKSI ORACLE KE JAVA, PHP DAN C# (C-SHARP)

Disitu juga ane kasi contoh aplikasi CRUD nya yang bisa ente download Gratisss :D ...

Selasa, 13 Desember 2016

Game Snake C++ (source code)


Nih bagi kalian yang sudah penasaran sama game Snake nya. Cara bikin nya sih sama seperti di Tutorial C dan C++. Create new file, beri nama, lalu klik OK. Nah oe ada source code nya, kalian bisa copy dibawah ini, untuk game Snake nya.

 

#include < iostream >
#include < conio.h >
#include < windows.h >

 

#define batas_atas 2
#define batas_bawah 23
#define batas_samping 2
#define batas_samping_k 78

 

#define caption "\t\t Ulo-Ulo \t\t\n\n"

 

using namespace std;

 

int iX(5), iY(5), x1 (4), y1 (4), xHapus(3), yHapus(3), veloX(1), veloY(0),ekorsX[200], ekorsY[200], nEkor = 2, start = 0, makX, makY ,level = 1 ,username;

 

void gotoxy(int x, int y)
{
COORD pos = {x, y};
SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE), pos);
}

 

void naik()
{
veloY = -1;
veloX = 0;
}

 

void turun()
{
veloY = 1;
veloX = 0;
}

 

void samping()
{
veloX = -1;
veloY = 0;
}

 

void samping_k()
{
veloX = 1;
veloY = 0;
}

 

void hapus()
{
gotoxy(xHapus, yHapus);
cout << " ";
}

 

void ekor()
{
for(int j = 0; j <= 2; j++)
{
gotoxy(ekorsX[j], ekorsY[j]);
cout << char(02);
}
}

 

void tampil()
{
gotoxy(iX, iY);
cout << char(01);

gotoxy(makX, makY);
cout << char(06);
}

 

void ganti_posisi()
{
xHapus = ekorsX[nEkor - 1];
yHapus = ekorsY[nEkor - 1];
for(int j = nEkor - 1; j >= 1; j--)
{
ekorsX[j] = ekorsX[j-1];
ekorsY[j] = ekorsY[j-1];
}
ekorsX[0] = iX;
ekorsY[0] = iY;
}

 

void velo()
{
ganti_posisi();
hapus();
iX += veloX;
iY += veloY;
tampil();
ekor();
}

 

bool isDestroy()
{
if(iX == batas_samping_k) { iX = 3; gotoxy(78, iY); cout << " "; }
if(iX == batas_samping) { iX = 77; gotoxy(2, iY); cout << " "; }
if(iY == batas_atas) { iY = 22; gotoxy(iX, 2); cout << " "; }
if(iY == batas_bawah) { iY = 3; gotoxy(iX, 23); cout << " "; }
for(int j = 0; j <= nEkor - 1; j++)
if(ekorsX[j] == iX && ekorsY[j] == iY) return true;
return false;
}

 

char getkey()
{
for(int i = 8; i <= 222; i++)
{
if(GetAsyncKeyState(i) == -32767)
{
switch(i)
{
case 38 : if(veloY != 1)naik();
break;
case 40 : if(veloY != -1)turun();
break;
case 37 : if(veloX != 1)samping();
break;
case 39 : if(veloX != -1)samping_k();
break;
}
}
}
}

 

void random_makanan()
{
makX = rand()%(batas_samping_k - 1);
if(makX < 4) makX += 3 + (4-makX);
makY = rand()%(batas_bawah - 1);
if(makY < 4) makY += 3 + (4-makY);
gotoxy(makX, makY);
cout << char(3);
if (nEkor%10==0)
level=level+1;
}

 

bool isEaten()
{
if(iX == makX && iY == makY)
return true;
else
return false;
}

 

void cBorder()
{
for(int i = 1; i <= 78; i++)
{
for(int j = 1; j <= 24; j += 23)
{
if(j > 10 || i >= 2)
{
gotoxy(i, j);cout << "-";
}
}
}
for(int i = 1; i <= 24; i++)
{
for(int k = 1; k <= 80; k += 78)
{
gotoxy(k, i); cout << "|";
}
}
}

 

void skor()
{
gotoxy(3,1); cout << "Skor : ";
gotoxy(18,1); cout << "Panjang : ";
gotoxy(34,1); cout << "level : ";
gotoxy(47,1); cout << "twitter : @thomzgunz";
gotoxy(3,2); cout << "Nama : ";
gotoxy(47,2); cout << "Instagram : @thomas_gunawan";
}

 

void tulis_skor()
{
gotoxy(11,1); cout << (nEkor) * 10;
gotoxy(28,1); cout << nEkor;
gotoxy(41,1); cout << level;
}

 

void inisialisasi()
{
cBorder();
random_makanan();
skor();
tulis_skor();
}

 

void tulisTengah(string s, int y)
{
gotoxy(40 - (s.length() / 2), y);
cout << s;
}

 

int main()
{
system("color f0");
int pilih;
char user[20];

pilih:
system("cls");
cout<<(caption);
tulisTengah("Selamat Datang",5);
tulisTengah("================================", 6);
tulisTengah("GAME Ulo-Ulo by ThomasCode v 1.0", 7);
tulisTengah("================================", 8);
tulisTengah("Follow Me :",10);
tulisTengah("Twitter : @thomzgunz | Fb : thomas gunawan part I | WA : 085712475303", 11);
tulisTengah("Line : @thomasgunawan_s | IG : thomas_gunawan | Bigo : thomas gunawan", 12);
tulisTengah("pilih kode nya : 1. untuk bermain , 2. untuk keluar", 14);
tulisTengah("1.main",15);
tulisTengah("2.keluar",16);
tulisTengah("anda pilih yang mana : ",18);
cin>>pilih;

switch (pilih)
{
case 1:
goto main;
case 2:
goto exit;
default : tulisTengah("maaf tidak tersedia",25);
goto pilih;
}

main:
system("cls");
tulisTengah("Selamat Datang",5);
tulisTengah("================================", 6);
tulisTengah("GAME Ulo-Ulo by ThomasCode v 1.0", 7);
tulisTengah("================================", 8);
tulisTengah("Follow Me :",9);
tulisTengah("Twitter : @thomzgunz | Fb : thomas gunawan part I | WA : 085712475303", 10);
tulisTengah("Line : @thomasgunawan_s | IG : thomas_gunawan | Bigo : thomas gunawan", 11);

tulisTengah("Masukkan Nama : ",13);
cin >> user;
system("cls");
gotoxy(11,2); cout << user;
inisialisasi();

while(!(isDestroy()))
{
velo();
getkey();
if(isEaten())
{
nEkor += 2;
random_makanan();
tulis_skor();
}
Sleep(100 - (nEkor * 3));
}
system("cls");
gotoxy(32,12); cout << "Skor "<< user<<":" << (nEkor - 1) * 10;
gotoxy(25,13);
exit:
system("pause");
}


Nih contoh codingan yang full nya, bisa kalian copy.

 

#include < iostream >
#include < conio.h >
#include < windows.h >

#define batas_atas 2
#define batas_bawah 23
#define batas_samping 2
#define batas_samping_k 78

#define caption "\t\t Ulo-Ulo \t\t\n\n"

using namespace std;

int iX(5), iY(5), x1 (4), y1 (4), xHapus(3), yHapus(3), veloX(1), veloY(0),ekorsX[200], ekorsY[200], nEkor = 2, start = 0, makX, makY ,level = 1 ,username;

void gotoxy(int x, int y)
{
COORD pos = {x, y};
SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE), pos);
}

void naik()
{
veloY = -1;
veloX = 0;
}

void turun()
{
veloY = 1;
veloX = 0;
}

void samping()
{
veloX = -1;
veloY = 0;
}

void samping_k()
{
veloX = 1;
veloY = 0;
}

void hapus()
{
gotoxy(xHapus, yHapus);
cout << " ";
}

void ekor()
{
for(int j = 0; j <= 2; j++)
{
gotoxy(ekorsX[j], ekorsY[j]);
cout << char(02);
}
}

void tampil()
{
gotoxy(iX, iY);
cout << char(01);

gotoxy(makX, makY);
cout << char(06);
}

void ganti_posisi()
{
xHapus = ekorsX[nEkor - 1];
yHapus = ekorsY[nEkor - 1];
for(int j = nEkor - 1; j >= 1; j--)
{
ekorsX[j] = ekorsX[j-1];
ekorsY[j] = ekorsY[j-1];
}
ekorsX[0] = iX;
ekorsY[0] = iY;
}

void velo()
{
ganti_posisi();
hapus();
iX += veloX;
iY += veloY;
tampil();
ekor();
}

bool isDestroy()
{
if(iX == batas_samping_k) { iX = 3; gotoxy(78, iY); cout << " "; }
if(iX == batas_samping) { iX = 77; gotoxy(2, iY); cout << " "; }
if(iY == batas_atas) { iY = 22; gotoxy(iX, 2); cout << " "; }
if(iY == batas_bawah) { iY = 3; gotoxy(iX, 23); cout << " "; }
for(int j = 0; j <= nEkor - 1; j++)
if(ekorsX[j] == iX && ekorsY[j] == iY) return true;
return false;
}

char getkey()
{
for(int i = 8; i <= 222; i++)
{
if(GetAsyncKeyState(i) == -32767)
{
switch(i)
{
case 38 : if(veloY != 1)naik();
break;
case 40 : if(veloY != -1)turun();
break;
case 37 : if(veloX != 1)samping();
break;
case 39 : if(veloX != -1)samping_k();
break;
}
}
}
}

void random_makanan()
{
makX = rand()%(batas_samping_k - 1);
if(makX < 4) makX += 3 + (4-makX);
makY = rand()%(batas_bawah - 1);
if(makY < 4) makY += 3 + (4-makY);
gotoxy(makX, makY);
cout << char(3);
if (nEkor%10==0)
level=level+1;
}

bool isEaten()
{
if(iX == makX && iY == makY)
return true;
else
return false;
}

void cBorder()
{
for(int i = 1; i <= 78; i++)
{
for(int j = 1; j <= 24; j += 23)
{
if(j > 10 || i >= 2)
{
gotoxy(i, j);cout << "-";
}
}
}
for(int i = 1; i <= 24; i++)
{
for(int k = 1; k <= 80; k += 78)
{
gotoxy(k, i); cout << "|";
}
}
}

void skor()
{
gotoxy(3,1); cout << "Skor : ";
gotoxy(18,1); cout << "Panjang : ";
gotoxy(34,1); cout << "level : ";
gotoxy(47,1); cout << "twitter : @thomzgunz";
gotoxy(3,2); cout << "Nama : ";
gotoxy(47,2); cout << "Instagram : @thomas_gunawan";

}

void tulis_skor()
{
gotoxy(11,1); cout << (nEkor) * 10;
gotoxy(28,1); cout << nEkor;
gotoxy(41,1); cout << level;
}

void inisialisasi()
{
cBorder();
random_makanan();
skor();
tulis_skor();
}

void tulisTengah(string s, int y)
{
gotoxy(40 - (s.length() / 2), y);
cout << s;
}

int main()
{
system("color f0");
int pilih;
char user[20];

pilih:
system("cls");
cout<<(caption);
tulisTengah("Selamat Datang",5);
tulisTengah("================================", 6);
tulisTengah("GAME Ulo-Ulo by ThomasCode v 1.0", 7);
tulisTengah("================================", 8);
tulisTengah("Follow Me :",10);
tulisTengah("Twitter : @thomzgunz | Fb : thomas gunawan part I | WA : 085712475303", 11);
tulisTengah("Line : @thomasgunawan_s | IG : thomas_gunawan | Bigo : thomas gunawan", 12);
tulisTengah("pilih kode nya : 1. untuk bermain , 2. untuk keluar", 14);
tulisTengah("1.main",15);
tulisTengah("2.keluar",16);
tulisTengah("anda pilih yang mana : ",18);
cin>>pilih;

switch (pilih)
{
case 1:
goto main;
case 2:
goto exit;
default : tulisTengah("maaf tidak tersedia",25);
goto pilih;
}

main:
system("cls");
tulisTengah("Selamat Datang",5);
tulisTengah("================================", 6);
tulisTengah("GAME Ulo-Ulo by ThomasCode v 1.0", 7);
tulisTengah("================================", 8);
tulisTengah("Follow Me :",9);
tulisTengah("Twitter : @thomzgunz | Fb : thomas gunawan part I | WA : 085712475303", 10);
tulisTengah("Line : @thomasgunawan_s | IG : thomas_gunawan | Bigo : thomas gunawan", 11);

tulisTengah("Masukkan Nama : ",13);
cin >> user;
system("cls");
gotoxy(11,2); cout << user;
inisialisasi();

while(!(isDestroy()))
{
velo();
getkey();
if(isEaten())
{
nEkor += 2;
random_makanan();
tulis_skor();
}
Sleep(100 - (nEkor * 3));
}
system("cls");
gotoxy(32,12); cout << "Skor "<< user<<":" << (nEkor - 1) * 10;
gotoxy(25,13);
exit:
system("pause");
}



Sekian dulu ya dari oe. Jangan lupa Share & Follow blog oe ya, like fanpage oe juga.

Game Puzzle C (source code)


Nih bagi kalian yang sudah penasaran sama game puzzle nya. Cara bikin nya sih sama seperti di Tutorial C dan C++. Create new file, beri nama, lalu klik OK. Nah oe ada source code nya, kalian bisa copy dibawah ini, untuk game puzzle nya.

 

#include < stdlib.h >
#include < time.h >
#include < stdio.h >

 

#define atas 1
#define kiri 2
#define bawah 3
#define kanan 4

 

#define keyUp 0x048
#define keyDown 0x050
#define keyLeft 0x04b
#define keyRight 0x04d

 

#define true 1
#define false 0

 

#define easy 10
#define medium 100
#define hard 1000

 

#define caption "-------------------------------------------------------------------------\n|\t\t\t\t GAME PUZZLE \t\t\t\t|\n-------------------------------------------------------------------------\n"

 

#define fieldSize 4

 

char field[fieldSize][fieldSize];
char field2[fieldSize][fieldSize];
unsigned int seed;
int x, y;
int acak(int i);
void initField(int movement);
void move(int arah);
void generateOutput();
int cekUrut();

 

int acak(int i)
{
int a;
seed += 5;
srand(seed);

a = (rand() % i) + 1;

return(a);
}

 

void initField(int movement)
{
int arah, arahOld = -1, nPindah = movement, xOld, yOld;
int c = 1, i, j;
char temp;

srand(time(NULL));
seed = rand();
x = y = (fieldSize - 1);

for (i = 0; i <= (fieldSize - 1); i++) {
for (j = 0; j <= (fieldSize - 1); j++) {
field[i][j] = field2[i][j] = c;
c++;
}
}
field[fieldSize - 1][fieldSize - 1] = field2[fieldSize - 1][fieldSize - 1] = ' ';

c = 0;
while (c != nPindah) {
xOld = x;
yOld = y;
arah = acak(4);

if (arah != 0) {
if ( c != 0) {
if ((arah + 2) % 4 == arahOld) {
continue;
}
}

switch (arah) {
case atas :
if (y > 0) y--;
else continue;
break;
case kiri:
if (x > 0) x--;
else continue;
break;
case kanan :
if (x < fieldSize - 1) x++;
else continue;
break;
case bawah :
if (y < fieldSize - 1) y++;
else continue;
break;
default :
break;
}

if (x >= 0 && y >= 0 && x <= (fieldSize - 1) && y <= (fieldSize - 1)) {
temp = field[y][x];
field[y][x] = field[yOld][xOld];
field[yOld][xOld] = temp;

c++;
arahOld = arah % 4;
} else {
x = xOld;
y = yOld;
}
}
}
}

 

void move(int arah) {
int xOld, yOld;
char temp;

xOld = x;
yOld = y;

switch (arah) {
case atas :
if (y > 0) y--;
break;
case kiri:
if (x > 0) x--;
break;
case kanan :
if (x < (fieldSize - 1)) x++;
break;
case bawah :
if (y < (fieldSize - 1)) y++;
break;
default :
break;
}

if (x >= 0 && y >= 0 && x <= (fieldSize - 1) && y <= (fieldSize - 1)) {
temp = field[y][x];
field[y][x] = field[yOld][xOld];
field[yOld][xOld] = temp;
} else {
x = xOld;
y = yOld;
}
generateOutput();
}

 

void generateOutput() {
int i, j, k;
system("cls");
puts(caption);
puts("Tekan ESC untuk keluar / reset permainan...");
for(k = 1; k <= fieldSize; k++) printf("+----"); puts("+");

for (i = 0; i<=(fieldSize - 1); i++) {
for (j= 0; j<=(fieldSize - 1); j++) {
if (i == y && j == x) {
printf("| %c ", field[i][j]);
} else {
printf("| %2i ", field[i][j]);
}
}
puts("|");

for(k = 1; k <= fieldSize; k++) printf("+----"); puts("+");
}
}

 

int cekUrut() {
int c, d;
int match = true;

for (c = 0; c <= (fieldSize - 1); c++) {
for (d = 0; d <= (fieldSize - 1); d++) {
if (field[c][d] != field2[c][d]) {
if (match == true) {
match = false;
}
}
}
}
return(match);
}

 

int main()
{
system("color f0");
int i, j, k, level;
char key;

system("cls");
puts(caption);
puts("Mainkan puzzle dan menyusunnya menjadi urutan yang benar...");
puts("Geser kotak kosong sehingga menjadi berurutan sbg berikut : \n");
initField(0);
for(k = 1; k <= fieldSize; k++) printf("+----"); puts("+");
for (i = 0; i<=(fieldSize - 1); i++) {
for (j= 0; j<=(fieldSize - 1); j++) {
if (i == y && j == x) {
printf("| %c ", field2[i][j]);
} else {
printf("| %2i ", field2[i][j]);
}
}
puts("|");

for(k = 1; k <= fieldSize; k++) printf("+----"); puts("+");
}
puts("Gunakan tombol panah untuk menggeser kotak kosong...\n");
puts("Tekan sembarang tombol untuk melanjutkan...");
getch();
for(;;) {
system("cls");
puts("Level : ");
puts("\t1. Easy");
puts("\t2. Medium");
puts("\t3. Hard");
printf("Pilih Level yang akan dimainkan : ");
scanf("%i", &level);

switch (level) {
case 1 :
initField(easy);
break;
case 2 :
initField(medium);
break;
case 3 :
initField(hard);
break;
default :
puts("Level salah!!");
getch();
continue;
}

system("cls");

generateOutput();

while ((key = getch()) != 27) {
switch(key) {
case keyUp :
move(atas);
break;
case keyDown :
move(bawah);
break;
case keyLeft :
move(kiri);
break;
case keyRight :
move(kanan);
break;
}
if (cekUrut() == true) {
puts("\nANDA MENANG!!!");
break;
}
}
if (key == 27) {
printf("Apakah anda ingin keluar ?\n['y' utk keluar / 't' utk reset] : ");
if (toupper(getchar()) == 'Y') break;
else continue;
} else {
printf("Apakah anda ingin main lagi ? [y/t] : ");
if (toupper(getchar()) == 'T') {
puts("\nTerima Kasih Telah Mencoba!!!");
getch();
break;
}
else continue;
}
}
}

Nih contoh codingan yang full nya, bisa kalian copy.

 

#include < stdlib.h >
#include < time.h >
#include < stdio.h >

#define atas 1
#define kiri 2
#define bawah 3
#define kanan 4

#define keyUp 0x048
#define keyDown 0x050
#define keyLeft 0x04b
#define keyRight 0x04d

#define true 1
#define false 0

#define easy 10
#define medium 100
#define hard 1000

#define caption "-------------------------------------------------------------------------\n|\t\t\t\t GAME PUZZLE \t\t\t\t|\n-------------------------------------------------------------------------\n"

#define fieldSize 4

char field[fieldSize][fieldSize];
char field2[fieldSize][fieldSize];
unsigned int seed;
int x, y;

int acak(int i);
void initField(int movement);
void move(int arah);
void generateOutput();
int cekUrut();

int acak(int i)
{
int a;
seed += 5;
srand(seed);

a = (rand() % i) + 1;

return(a);
}

void initField(int movement)
{
int arah, arahOld = -1, nPindah = movement, xOld, yOld;
int c = 1, i, j;
char temp;

srand(time(NULL));
seed = rand();
x = y = (fieldSize - 1);

for (i = 0; i <= (fieldSize - 1); i++) {
for (j = 0; j <= (fieldSize - 1); j++) {
field[i][j] = field2[i][j] = c;
c++;
}
}
field[fieldSize - 1][fieldSize - 1] = field2[fieldSize - 1][fieldSize - 1] = ' ';

c = 0;
while (c != nPindah) {
xOld = x;
yOld = y;
arah = acak(4);

if (arah != 0) {
if ( c != 0) {
if ((arah + 2) % 4 == arahOld) {
continue;
}
}

switch (arah) {
case atas :
if (y > 0) y--;
else continue;
break;
case kiri:
if (x > 0) x--;
else continue;
break;
case kanan :
if (x < fieldSize - 1) x++;
else continue;
break;
case bawah :
if (y < fieldSize - 1) y++;
else continue;
break;
default :
break;
}

if (x >= 0 && y >= 0 && x <= (fieldSize - 1) && y <= (fieldSize - 1)) {
temp = field[y][x];
field[y][x] = field[yOld][xOld];
field[yOld][xOld] = temp;

c++;
arahOld = arah % 4;
} else {
x = xOld;
y = yOld;
}
}
}
}

void move(int arah) {
int xOld, yOld;
char temp;

xOld = x;
yOld = y;

switch (arah) {
case atas :
if (y > 0) y--;
break;
case kiri:
if (x > 0) x--;
break;
case kanan :
if (x < (fieldSize - 1)) x++;
break;
case bawah :
if (y < (fieldSize - 1)) y++;
break;
default :
break;
}

if (x >= 0 && y >= 0 && x <= (fieldSize - 1) && y <= (fieldSize - 1)) {
temp = field[y][x];
field[y][x] = field[yOld][xOld];
field[yOld][xOld] = temp;
} else {
x = xOld;
y = yOld;
}
generateOutput();
}

void generateOutput() {
int i, j, k;
system("cls");
puts(caption);
puts("Tekan ESC untuk keluar / reset permainan...");
for(k = 1; k <= fieldSize; k++) printf("+----"); puts("+");

for (i = 0; i<=(fieldSize - 1); i++) {
for (j= 0; j<=(fieldSize - 1); j++) {
if (i == y && j == x) {
printf("| %c ", field[i][j]);
} else {
printf("| %2i ", field[i][j]);
}
}
puts("|");

for(k = 1; k <= fieldSize; k++) printf("+----"); puts("+");
}
}

int cekUrut() {
int c, d;
int match = true;

for (c = 0; c <= (fieldSize - 1); c++) {
for (d = 0; d <= (fieldSize - 1); d++) {
if (field[c][d] != field2[c][d]) {
if (match == true) {
match = false;
}
}
}
}
return(match);
}

int main()
{
system("color f0");
int i, j, k, level;
char key;

system("cls");
puts(caption);
puts("Mainkan puzzle dan menyusunnya menjadi urutan yang benar...");
puts("Geser kotak kosong sehingga menjadi berurutan sbg berikut : \n");
initField(0);
for(k = 1; k <= fieldSize; k++) printf("+----"); puts("+");
for (i = 0; i<=(fieldSize - 1); i++) {
for (j= 0; j<=(fieldSize - 1); j++) {
if (i == y && j == x) {
printf("| %c ", field2[i][j]);
} else {
printf("| %2i ", field2[i][j]);
}
}
puts("|");

for(k = 1; k <= fieldSize; k++) printf("+----"); puts("+");
}
puts("Gunakan tombol panah untuk menggeser kotak kosong...\n");
puts("Tekan sembarang tombol untuk melanjutkan...");
getch();
for(;;) {
system("cls");
puts("Level : ");
puts("\t1. Easy");
puts("\t2. Medium");
puts("\t3. Hard");
printf("Pilih Level yang akan dimainkan : ");
scanf("%i", &level);

switch (level) {
case 1 :
initField(easy);
break;
case 2 :
initField(medium);
break;
case 3 :
initField(hard);
break;
default :
puts("Level salah!!");
getch();
continue;
}

system("cls");

generateOutput();

while ((key = getch()) != 27) {
switch(key) {
case keyUp :
move(atas);
break;
case keyDown :
move(bawah);
break;
case keyLeft :
move(kiri);
break;
case keyRight :
move(kanan);
break;
}
if (cekUrut() == true) {
puts("\nANDA MENANG!!!");
break;
}
}
if (key == 27) {
printf("Apakah anda ingin keluar ?\n['y' utk keluar / 't' utk reset] : ");
if (toupper(getchar()) == 'Y') break;
else continue;
} else {
printf("Apakah anda ingin main lagi ? [y/t] : ");
if (toupper(getchar()) == 'T') {
puts("\nTerima Kasih Telah Mencoba!!!");
getch();
break;
}
else continue;
}
}
}


Sekian dulu ya dari oe. Jangan lupa Share & Follow blog oe ya, like fanpage oe juga.

Game Balapan C++ (source code)


Nih bagi kalian yang sudah penasaran sama game balapan. Cara bikin nya sih sama seperti di Tutorial C dan C++. Create new file, beri nama, lalu klik OK. Nah oe ada source code nya, kalian bisa copy dibawah ini, untuk game balapan nya.

 

#include < iostream >
#include < windows.h >
#include < conio.h >
#include < time.h >
#include < stdlib.h >

 

#define KOTAK char(178)
#define BATAS_KIRI 16
#define BATAS_KANAN 59
#define BATANG char(219)

 

using namespace std;

 

void gotoxy(int x, int y)
{
COORD koord = {x, y};
SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE), koord);
}

 

void Credit()
{
gotoxy(BATAS_KANAN + 5, 10); cout << "CONTROL";
gotoxy(BATAS_KANAN + 5, 11); cout << "W : ATAS ";
gotoxy(BATAS_KANAN + 5, 12); cout << "S : BAWAH";
gotoxy(BATAS_KANAN + 5, 13); cout << "D : KANAN";
gotoxy(BATAS_KANAN + 5, 14); cout << "A : KIRI";
gotoxy(BATAS_KANAN + 5, 16); cout << "Twitter";
gotoxy(BATAS_KANAN + 5, 17); cout << "@thomzgunz";
gotoxy(BATAS_KANAN + 5, 18); cout << "Instagram";
gotoxy(BATAS_KANAN + 5, 19); cout << "@thomas_gunawan";
}

 

void gambarLatar()
{
for(int i = 0; i <= 24; i++)
{
gotoxy(BATAS_KIRI + 3, i); cout << BATANG;
gotoxy(BATAS_KANAN - 2, i); cout << BATANG;
gotoxy(BATAS_KIRI, i); cout << KOTAK << KOTAK;
gotoxy(BATAS_KANAN, i); cout << KOTAK << KOTAK;
}
}

 

void gambarJalan(int spasi, int awal)
{
for(int i = awal + 1; i <= 24; i += spasi)
{
gotoxy(BATAS_KIRI, i - 1); cout << KOTAK << KOTAK;
gotoxy(BATAS_KANAN, i - 1); cout << KOTAK << KOTAK;
gotoxy(BATAS_KIRI, i); cout << " ";
gotoxy(BATAS_KANAN, i); cout << " ";
}
}

 

int abs(int a)
{
if(a < 0) return -a;
}

 

void batangDarah(int a)
{
gotoxy(1, 4);
cout << "HEALTH : ";
gotoxy(1, 5);
for(int i = 1; i <= a / 10; i++)
{
cout << BATANG;
}
for(int i = 1; i <= 10 - (a / 10); i++)
{
cout << KOTAK;
}
}

 

void jarak(int iJarak)
{
gotoxy(1, 7);
cout << "JARAK :";
gotoxy(1, 8);
cout << iJarak;
}

 

void Speed(int speed)
{
gotoxy(1, 10);
cout << "KECEPATAN :";
gotoxy(1, 11);
cout << " ";
gotoxy(1, 11);
cout << speed;
}

 

class car
{
public :
int x,y,darah, kebal;
bool exis;
string gambar[5];
car()
{
x = 25;
y = 20;
exis = false;
darah = 100;
kebal = 0;
gambar[0] = " - ";
gambar[1] = "0+1";
gambar[2] = " + ";
gambar[3] = "0+1";
}
void setPos(int a, int b)
{
x = a;
y = b;
}
void keKiri()
{
if(x > 20)
{
hapus();
x -= 1;
}
}
void keKanan()
{
if(x + 2 < 56)
{
hapus();
x += 1;
}
}
void keBawah()
{
if(y + 3 <= 23)
{
hapus();
y += 1;
}
}
void keAtas()
{
if(y + 3 > 3)
{
hapus();
y -= 1;
}
}
void hapus()
{
gotoxy(x+1, y); cout << " ";
gotoxy(x, y+1); cout << " ";
gotoxy(x+1, y+2); cout << " ";
gotoxy(x, y+3); cout << " ";
}
bool cekTabrakan(car a)
{
if((a.y >= y && a.y <= y+3) && (abs(a.x - x) < 3))
{
return true;
}
else
{
return false;
}
}
void gores()
{
for(int i = y; i <= (y + 3); i++)
{
gotoxy(x, i);
for(int j = 0; j < gambar[i - y].length(); j++)
{
if(gambar[i - y][j] == '0') cout << char(221); else
if(gambar[i - y][j] == '1') cout << char(222); else
if(gambar[i - y][j] == '+') cout << BATANG; else
if(gambar[i - y][j] == '-') cout << char(220); else
cout << " ";
}
}
}
void buatGambar()
{
if(kebal == 0)
{
gores();
}
else
{
if(kebal % 2 == 0)
{
gores();
}
else
{
hapus();
}
}
}
};

 

void tulisTengah(string s, int y)
{
gotoxy(40 - (s.length() / 2), y);
cout << s;
}

 

void tidur(int a)
{
time_t now = clock();
while((clock() - now) < a) {};
}

 

void opening()
{
tulisTengah("Bersedia", 10);
tidur(1000);
tulisTengah(" ", 10);
tulisTengah("3", 10);
tidur(1000);
tulisTengah("2", 10);
tidur(1000);
tulisTengah("1", 10);
tidur(1000);
tulisTengah(" ", 10);
}

 

int main()
{
system("color f0");
int spk = 0;
float fSpk = 0;
while(spk <= 0)
{
system("cls");
tulisTengah("==============================", 7);
tulisTengah("GAME BALAP by ThomasCode v 1.0", 8);
tulisTengah("==============================", 9);
tulisTengah("Masukkan Tingkat Kesulitan [Berupa Angka]", 11);
tulisTengah("Semakin besar angka nya semakin mudah", 12);
tulisTengah("Minimal sampai 99", 13);
tulisTengah("Follow Me :",19);
tulisTengah("Twitter : @thomzgunz | Fb : thomas gunawan part I | WA : 085712475303", 20);
tulisTengah("Line : @thomasgunawan_s | IG : thomas_gunawan | Bigo : thomas gunawan", 21);
tulisTengah("Masukkan angka [ besar dari 0 ]: ", 14);
cin >> fSpk;
spk = (int) fSpk;
}
system("cls");
srand(clock());
car pemainUtama;
car enemy[4];
char control = ' ';
enemy[0].setPos(20 + rand()%34, 0);
enemy[1].setPos(20 + rand()%34, 0);
enemy[2].setPos(20 + rand()%34, 0);
enemy[0].exis = true;
bool mulai = false;
int spasi = 8, awal = 0, nMusuh = 0, iJarak = 0;
batangDarah(pemainUtama.darah);
float before = clock();
gambarLatar();
Credit();
while(pemainUtama.darah > 0 && (spk - iJarak / 200) > 0)
{
Speed(spk - iJarak / 200);
iJarak++;
if(awal > 8) awal = 0;
gambarJalan(spasi, awal);
awal++;
if(kbhit())
{
control = getch();
control = toupper(control);
}
switch (control)
{
case 'W' : pemainUtama.keAtas(); break;
case 'S' : pemainUtama.keBawah(); break;
case 'D' : pemainUtama.keKanan(); break;
case 'A' : pemainUtama.keKiri(); break;
}
pemainUtama.buatGambar();

for(int i = 0; i <= 2; i++)
{
if(enemy[i].exis == true)
{
enemy[i].keBawah();
enemy[i].buatGambar();
if(enemy[i].y > 20)
{
enemy[i].hapus();
enemy[i].y = 0;
enemy[i].x = 20 + rand()%34;
enemy[i].exis = false;
nMusuh++;
}
if(enemy[i].cekTabrakan(pemainUtama))
{
if(pemainUtama.kebal == 0)
{
pemainUtama.darah -= 10;
pemainUtama.kebal = 45;
batangDarah(pemainUtama.darah);
}
}
}
else
{
nMusuh = i - 1;
if(nMusuh < 0) nMusuh = 3;
if(enemy[nMusuh].y >= 7)
{
enemy[i].exis = true;
}
}
if(pemainUtama.kebal > 0)
{
pemainUtama.kebal--;
}
jarak(iJarak);
}
if(mulai == false)
{
opening();
mulai = true;
}
control = ' ';
tidur(spk - iJarak / 200);
}
spk -= iJarak / 200;
system("cls");
gotoxy(20, 12); cout << "Game Berakhir Score Anda : " << (iJarak / spk) + pemainUtama.darah * 100;
gotoxy(20, 13); cout << "Total Waktu Bermain : " << (clock() - before) / 1000 << " Detik";
tulisTengah("=========================================", 16);
tulisTengah("Terimakasih telah bermain.", 17);
tulisTengah("Kunjungi tokhimashu.blogspot.com", 18);
tulisTengah("dan follow @thomzgunz untuk game lainnya", 19);
tulisTengah("=========================================", 20);
tidur(5000);
getch();
}

Nih contoh codingan yang full nya, bisa kalian copy.

 

#include < iostream >
#include < windows.h >
#include < conio.h >
#include < time.h >
#include < stdlib.h >

#define KOTAK char(178)
#define BATAS_KIRI 16
#define BATAS_KANAN 59
#define BATANG char(219)

using namespace std;

void gotoxy(int x, int y)
{
COORD koord = {x, y};
SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE), koord);
}

void Credit()
{
gotoxy(BATAS_KANAN + 5, 10); cout << "CONTROL";
gotoxy(BATAS_KANAN + 5, 11); cout << "W : ATAS ";
gotoxy(BATAS_KANAN + 5, 12); cout << "S : BAWAH";
gotoxy(BATAS_KANAN + 5, 13); cout << "D : KANAN";
gotoxy(BATAS_KANAN + 5, 14); cout << "A : KIRI";
gotoxy(BATAS_KANAN + 5, 16); cout << "Twitter";
gotoxy(BATAS_KANAN + 5, 17); cout << "@thomzgunz";
gotoxy(BATAS_KANAN + 5, 18); cout << "Instagram";
gotoxy(BATAS_KANAN + 5, 19); cout << "@thomas_gunawan";
}

void gambarLatar()
{
for(int i = 0; i <= 24; i++)
{
gotoxy(BATAS_KIRI + 3, i); cout << BATANG;
gotoxy(BATAS_KANAN - 2, i); cout << BATANG;
gotoxy(BATAS_KIRI, i); cout << KOTAK << KOTAK;
gotoxy(BATAS_KANAN, i); cout << KOTAK << KOTAK;
}
}

void gambarJalan(int spasi, int awal)
{
for(int i = awal + 1; i <= 24; i += spasi)
{
gotoxy(BATAS_KIRI, i - 1); cout << KOTAK << KOTAK;
gotoxy(BATAS_KANAN, i - 1); cout << KOTAK << KOTAK;
gotoxy(BATAS_KIRI, i); cout << " ";
gotoxy(BATAS_KANAN, i); cout << " ";
}
}

int abs(int a)
{
if(a < 0) return -a;
}

void batangDarah(int a)
{
gotoxy(1, 4);
cout << "HEALTH : ";
gotoxy(1, 5);
for(int i = 1; i <= a / 10; i++)
{
cout << BATANG;
}
for(int i = 1; i <= 10 - (a / 10); i++)
{
cout << KOTAK;
}
}

void jarak(int iJarak)
{
gotoxy(1, 7);
cout << "JARAK :";
gotoxy(1, 8);
cout << iJarak;
}

void Speed(int speed)
{
gotoxy(1, 10);
cout << "KECEPATAN :";
gotoxy(1, 11);
cout << " ";
gotoxy(1, 11);
cout << speed;
}

class car
{
public :
int x,y,darah, kebal;
bool exis;
string gambar[5];
car()
{
x = 25;
y = 20;
exis = false;
darah = 100;
kebal = 0;
gambar[0] = " - ";
gambar[1] = "0+1";
gambar[2] = " + ";
gambar[3] = "0+1";
}
void setPos(int a, int b)
{
x = a;
y = b;
}
void keKiri()
{
if(x > 20)
{
hapus();
x -= 1;
}
}
void keKanan()
{
if(x + 2 < 56)
{
hapus();
x += 1;
}
}
void keBawah()
{
if(y + 3 <= 23)
{
hapus();
y += 1;
}
}
void keAtas()
{
if(y + 3 > 3)
{
hapus();
y -= 1;
}
}
void hapus()
{
gotoxy(x+1, y); cout << " ";
gotoxy(x, y+1); cout << " ";
gotoxy(x+1, y+2); cout << " ";
gotoxy(x, y+3); cout << " ";
}
bool cekTabrakan(car a)
{
if((a.y >= y && a.y <= y+3) && (abs(a.x - x) < 3))
{
return true;
}
else
{
return false;
}
}
void gores()
{
for(int i = y; i <= (y + 3); i++)
{
gotoxy(x, i);
for(int j = 0; j < gambar[i - y].length(); j++)
{
if(gambar[i - y][j] == '0') cout << char(221); else
if(gambar[i - y][j] == '1') cout << char(222); else
if(gambar[i - y][j] == '+') cout << BATANG; else
if(gambar[i - y][j] == '-') cout << char(220); else
cout << " ";
}
}
}
void buatGambar()
{
if(kebal == 0)
{
gores();
}
else
{
if(kebal % 2 == 0)
{
gores();
}
else
{
hapus();
}
}
}
};

void tulisTengah(string s, int y)
{
gotoxy(40 - (s.length() / 2), y);
cout << s;
}

void tidur(int a)
{
time_t now = clock();
while((clock() - now) < a) {};
}

void opening()
{
tulisTengah("Bersedia", 10);
tidur(1000);
tulisTengah(" ", 10);
tulisTengah("3", 10);
tidur(1000);
tulisTengah("2", 10);
tidur(1000);
tulisTengah("1", 10);
tidur(1000);
tulisTengah(" ", 10);
}

int main()
{
system("color f0");
int spk = 0;
float fSpk = 0;
while(spk <= 0)
{
system("cls");
tulisTengah("==============================", 7);
tulisTengah("GAME BALAP by ThomasCode v 1.0", 8);
tulisTengah("==============================", 9);
tulisTengah("Masukkan Tingkat Kesulitan [Berupa Angka]", 11);
tulisTengah("Semakin besar angka nya semakin mudah", 12);
tulisTengah("Minimal sampai 99", 13);
tulisTengah("Follow Me :",19);
tulisTengah("Twitter : @thomzgunz | Fb : thomas gunawan part I | WA : 085712475303", 20);
tulisTengah("Line : @thomasgunawan_s | IG : thomas_gunawan | Bigo : thomas gunawan", 21);
tulisTengah("Masukkan angka [ besar dari 0 ]: ", 14);
cin >> fSpk;
spk = (int) fSpk;
}
system("cls");
srand(clock());
car pemainUtama;
car enemy[4];
char control = ' ';
enemy[0].setPos(20 + rand()%34, 0);
enemy[1].setPos(20 + rand()%34, 0);
enemy[2].setPos(20 + rand()%34, 0);
enemy[0].exis = true;
bool mulai = false;
int spasi = 8, awal = 0, nMusuh = 0, iJarak = 0;
batangDarah(pemainUtama.darah);
float before = clock();
gambarLatar();
Credit();
while(pemainUtama.darah > 0 && (spk - iJarak / 200) > 0)
{
Speed(spk - iJarak / 200);
iJarak++;
if(awal > 8) awal = 0;
gambarJalan(spasi, awal);
awal++;
if(kbhit())
{
control = getch();
control = toupper(control);
}
switch (control)
{
case 'W' : pemainUtama.keAtas(); break;
case 'S' : pemainUtama.keBawah(); break;
case 'D' : pemainUtama.keKanan(); break;
case 'A' : pemainUtama.keKiri(); break;
}
pemainUtama.buatGambar();

for(int i = 0; i <= 2; i++)
{
if(enemy[i].exis == true)
{
enemy[i].keBawah();
enemy[i].buatGambar();
if(enemy[i].y > 20)
{
enemy[i].hapus();
enemy[i].y = 0;
enemy[i].x = 20 + rand()%34;
enemy[i].exis = false;
nMusuh++;
}
if(enemy[i].cekTabrakan(pemainUtama))
{
if(pemainUtama.kebal == 0)
{
pemainUtama.darah -= 10;
pemainUtama.kebal = 45;
batangDarah(pemainUtama.darah);
}
}
}
else
{
nMusuh = i - 1;
if(nMusuh < 0) nMusuh = 3;
if(enemy[nMusuh].y >= 7)
{
enemy[i].exis = true;
}
}
if(pemainUtama.kebal > 0)
{
pemainUtama.kebal--;
}
jarak(iJarak);
}
if(mulai == false)
{
opening();
mulai = true;
}
control = ' ';
tidur(spk - iJarak / 200);
}
spk -= iJarak / 200;
system("cls");
gotoxy(20, 12); cout << "Game Berakhir Score Anda : " << (iJarak / spk) + pemainUtama.darah * 100;
gotoxy(20, 13); cout << "Total Waktu Bermain : " << (clock() - before) / 1000 << " Detik";
tulisTengah("=========================================", 16);
tulisTengah("Terimakasih telah bermain.", 17);
tulisTengah("Kunjungi tokhimashu.blogspot.com", 18);
tulisTengah("dan follow @thomzgunz untuk game lainnya", 19);
tulisTengah("=========================================", 20);
tidur(5000);
getch();
}


Sekian dulu ya dari oe. Jangan lupa Share & Follow blog oe ya, like fanpage oe juga.

Bikin Game di C / C++


Oiii... oii.. semua, oiya nih kemarin ada yang request program nih. Dia minta dibikinin contoh program cara membuat game dengan bahasa C atau C++ lho. Kalian juga heran kan? program C bisa dibuat jadi bentuk game. Ngga perlu heran kali, nih oe kasih tau caranya.

Ada macam-macam program yang oe udah bikin nih. Misalnya kayak Balapan yang ada di gamebot, puzzle mirip gadgenya yang di windows 7 (picture puzzle), atau snake yang ada di handphone nokia jaman dulu.

Berikut contoh gambarnya.

Balapan.

Puzzle.

Snake.

Nah udah pada makin penasaran kan? :D Kalian bisa pilih game mana yang mau kalian coba dulu.
Balapan.
Puzzle.
Snake.

Atau kalian bisa ikuti postingan blog oe selanjutnya. Sekian dulu ya dari oe. Jangan lupa Share & Follow blog oe ya, Like fanpage oe juga ^-^

Senin, 12 Desember 2016

StartUp Digital


Oii.. semuaaa... Oe mau cerita sedikit nih tentang pengalaman oe waktu ikut Seminar Nasional Bangun Inovasimu Dengan StartUp. Nah waktu oe ikut seminar ini, oe bingung startup apa yang di maksud. StartUp yang di maksud di seminar ini tuh ternyata StartUp Digital. Apa itu StartUp? StartUp adalah Bisnis, kalau StartUp dalam bentuk Digital, berarti bisnis menggunakan cara digital.
Kalian tau ngga? Pasti kalian tanpa sadar ngga tau kan ada contoh StartUp di indonesia. Nih oe kasih tau, contoh StartUp di indonesia antara lain seperti: GOJEK, Jarvis Store, Dll.

Kenapa oe bilang GOJEK? ya karena asal mula ada nya gojek itu dari seorang tukang ojek yang di beri handphone, jadi bisa menghubungi tukang ojek tersebut. Nah lama kelamaan muncullah sebuah ide, yang bisa di gunain ke semua masyarakat. Begitu kita order tukang ojek pun datang, dengan kata lain tukang ojek berubah nama jadi gojek karna ada nya alat digital (handphone). Ngga cuman Gojek doang, ada juga GoFood, GoMessage, GoCar, GoRide, dan masih banyak yang lain nya, yang ikut-ikutan di GO kan semua.

Dari hal kecil ini kita bisa membangun StartUp yang begitu diminati oleh masyarakat. Masyarakat juga kebanyakan lebih sering menggunakan Gadget untuk mencari Informasi-Informasi terupdate, Kita bisa lihat sendiri, berapa banyak orang yang membaca koran, dan orang yang melihat dari Berita Harian di Internet seperti detik.com, kompas.com, dll.

Adakah ide untuk membuat StartUp kalian sendiri? yang dapat digunakan untuk semua masyarakat?
Yah oe sih seneng bisa bertemu dengan R. Frianto Moerdowo (CEO Jarvis Store) dan Andrie Widya (Business Development Director Impala Space) yang akhir nya oe paham tentang StartUp.
Di Impala Space juga ngadain "Program Gerakan Nasional 1000 StartUp Digital" yang didukung langsung oleh Presiden kita Jokowi.

Gerakan Nasional 1000 Startup Digital adalah sebuah gerakan untuk mewujudkan potensi Indonesia menjadi The Digital Energy of Asia di tahun 2020 dengan mencetak 1000 startup yang menjadi solusi atas berbagai masalah dengan memanfaatkan teknologi digital.

Gerakan ini diinisiasi oleh KIBAR dan didukung oleh Kementerian Komunikasi dan Informatika Republik Indonesia. KIBAR adalah sebuah perusahaan yang bertujuan membangun ekosistem teknologi di Indonesia melalui inisiatif-inisiatif pembangunan kapasitas, mentoring, dan inkubasi di berbagai kota.

So, ayo kita bikin StartUp kita. Dan share ke semua masyarakat. Jangan pernah menyerah sebelum mencoba.

Jangan lupa share, dan Like fanpage oe ya... thankyou.. ^-^

Tutorial Belajar Andorid Program Dasar Untuk Pemula (Part II)


•    Android 1.0 Apple pie

Tanggal rilis: 23 September 2008
Fitur dan perbaikan:
Download dan updates via Android Market
Web Browser
Support Camera
Sinkronisasi antara Gmail, Contacts dan Google Agenda
Google Maps
Aplikasi YouTube

•    Android 1.1 Banana bread

Tanggal rilis: 9 Februari 2009
Fitur dan perbaikan:
“Show” & “Hide” numeric keyboard, pada aplikasi telepeon
Kemampuan untuk menyimpan MMS attachments

•    Android 1.5 Cupcake

Tanggal rilis: 30 April 2009
Fitur dan perbaikan:
Support Bluetooth A2DP, AVRCP
Soft-keyboard dengan prediksi text
Record/watch videos

•    Android 1.6 Donut

Tanggal rilis: 15 September 2009
Fitur dan perbaikan:
Gesture framework
Turn-by-turn navigation

•    Android 2.0 Eclair


Tanggal rilis: 26 Oktober 2009
Fitur dan perbaikan:
HTML
Digital zoom
Support Microsoft Exchange
Bluetooth 2.1
Live Wallpapers
Updated UI

Update 2.1
Updated UI

•    Android 2.2 Froyo (Frozen Yogurt)

Tanggal rilis: 20 Mei 2010
Fitur dan perbaikan:
Peningkatan Speed
Implementasi JIT
USB Tethering
Aplikasi instalasi untuk perluasan memori
Support file upload pada the browser
Animated GIFs

•    Android 2.3 Gingerbread

Tanggal rilis: 6 Desembar 2010
Fitur dan perbaikan:
Updated UI
Peningkatan keyboard ease of use
Peningkatan copy/paste
peningkatan power management
Fitur Social networking
Support NFC (Near Field Communication)
Support Native VoIP/SIP
Support Video call

Update 2.3.3
Update penambahan fitur untuk developer
Peningkatan NFC API (komunikasi peer to peer)
Penambahan soket unsecure bluetooth

Update 2.3.4
Fitur Voice atau video chat menggunakan Google Talk

Update 2.3.5
Peningkatan kinerja jaringan untuk Nexus S 4G
Perbaikan isu Bluetooth pada Samsung Galaxy S
Peningkatan aplikasi Gmail

Update 2.3.6
Perbaikan masalah pada Voice search

Update 2.3.7
Support Google Wallet untuk Nexus S 4G

•    Android 3.0 Honeycomb

Tanggal rilis: 22 Februari 2011
Fitur dan perbaikan:
Support Multi core
Support Tablet lebih baik
Updated 3D UI
Layar Utama (homescreens) yang bisa diatur
Melihat aplikasi yang barusan dibuka
Menyempurnakan layout keyboard
Transport protocol untuk Media/Picture
video chat Google Talk
Google eBooks
“Private browsing”
System-wide Clipboard
HTTP Live streaming

Update 3.1
Peningkatan UI
Open Accessory API
USB host API
Support mouse, joysticks dan gamepad
Widget Home screen yang bisa di atur ukurannya
Notificasi MTP
RTP API untuk audio

Update 3.2
Optimise untuk berbagai tablets
Mode kompatibilitas display  (zoom for fixed-sized apps)
Sinkronisasi Media dari SD card

Update 3.2.1
Update Android Market termasuk automatic updates yang lebih mudah
Update Google Books
Peningkatan kinerja Wi-Fi
Perbaikan prediksi tulisan tangan huruf Chinese

Update 3.2.2
Perbaikan kecil

Update 3.2.4
Update tambahan ‘Pay as you go’ untuk tablet

Update 3.2.6
Perbaikan kecil

•    Android 4.0 Ice cream sandwich

Tanggal rilis: 18 Oktober 2011
Fitur dan perbaikan:
Penggunaan sistem lock screen yang baru
Peningkatan text input dan koreksi ejaan
Control over network data
Support aplikasi Email EAS v14
Fitur WI-FI direct
Support BlueTooth Health Device Profile

Update 4.0.1
Terdapat fitur Facial recognition (Face Unlock), fitur pengenal wajah untuk sign in tanpa menggunakan password
UI menggunakan Hardware acceleration
Peningkatan voice recognition (dictating/Voice typing)
Web browser, sampai 16 tab
Updated launcher (customizable)
Aplikasi Android Beam untuk pertukaran data melalui NFC

Update 4.0.2
Perbaikan kecil

Update  4.0.3
Social stream API pada Contacts provider untuk menunjukkan update yang berhubungan dengan kontak pengguna
Akses API stabilisasi Video dan resolusi video QVGA
Perbaikan aksesibilitas API untuk pembaca layar
Update Calendar

Update 4.0.4
Peningkatan stabilitas
Kinerja Camera yang lebih baik
Perputaran layar lebih halus

•    Android 4.1 Jelly Bean

Tanggal rilis: 9 juli 2012
Fitur dan perbaikan:
Support Google Now
Support Voice Search (pencarian dengan perintah suara)
Peningkatan kecepatan
Peningkatan aplikasi Camera
Mengaktifkan sistem akses: mode gesture tubuh dan keyboards huruf braille.

Update 4.1.1
Perbaikan pada orientasi posisi layar

Update 4.1.2
Perbaikan beberapa masalah dan penigkatan kinerja
Mengaktifkan rotasi pada Home Screen

Update 4.2
Meng-ON/Off-kan Wi-Fi dan Bluetooth pada Quick Settings dengan cara menekannya lama-lama
Notifikasi persentase dan estimasi sisa waktu untuk yang sedang di download
Sistem pengecasan battery tanpa kebel dan perubahan peringatan pada low baterry
Update aplikasi Gallery agar loading lebih cepat dengan fitur baru transisi antar gambar
Peningkatan kinerja dan perbaikan pada streaming audio Bluetooth A2DP

Update 4.3
Fitur Dial pad auto-complete
Penyempurnaan aplikasi Photo Sphere
Camera app UI updated
Support resolusi video 4K
Kemampuan membuat profil eksklusif pada tablet
Support penulisan huruf Hebrew and Arabic dari kanan ke kiri
Support Bluetooth Low Energy (BLE)
Support Bluetooth Audio/Video Remote Control Profile (AVRCP) 1.3
Peningkatan kinerja dan sistem keamanan

•    Android 4.4 Kitkat

Tanggal rilis: 31 Oktober 2013
Fitur dan perbaikan:
Terdapat fitur Screen recording, untuk merekam kegiatan yang terjadi pada layar smartphone kita.
New Translucent system UI
Peningkatan akses notifikasi
System-wide settings untuk closed captioning
Peningkatan kinerja

Update 4.4.1
Penyempurnaan pada camera Nexus 5
Perbaikan beberapa masalah

Update 4.4.2
Perbaikan beberapa masalah
Peningkatan sistem keamanan

Update 4.4.3
Perbaikan beberapa masalah
Mengaktifkan Sprint Spark band 26 dan band 41

Update 4.4.4
Perbaikan kerentanan pada Heartbleed / OpenSSL

•    Android 5.0 Lollipop

Tanggal rilis: 17 Oktober 2014
Fitur dan perbaikan:
Desain baru (Material)
Peningkatan kecepatan
Peningkatan daya tahan battery

Update 5.0.1
perbaikan beberapa masalah seperti video playback dan kegagalan password

Update 5.0.2
Perbaikan beberapa masalah dan peningkatan kinerja

Update 5.1
Support Multi SIM cards
Tambahan shortcuts pada Quick settings untuk koneksi Wi-Fi dan control perangkat Bluetooth
Pengamanan jika perangkat hilang atau dicuri
Penggunaan suara High Definition untuk telepon
Peningkatan kinerja dan stabilitas

Update 5.1.1
Perbaikan beberapa masalah
Peningkatan kecepatan

•    Android 6 Marshmallow

Tanggal rilis: 5 Oktober 2015
Fitur-fitur dan perbaikan:
Support USB Type-C
Support autentikasi sidik jari (Fingerprint Authentication)
Daya tahan battery lebih meningkat dengan manajemen konsumsi battery oleh Doze
Permissions dashboard
Akses System UI Tuner
Support sistem pembayaran dengan Android Pay yang berkolaborasi dengan Fingerprint Authentication sehingga terjamin keamanannya.
Tambahan fungsi Google Now yang tidak sekedar melayani perintah suara

Dan masih ada banyak lagi fitur-fitur terbaru nya.

•    Android 7.0 Nougat

Di Android Nougat ini oe masih belum tau kapan rilis nya. Atau bahkan dah ada yang pake.

Nah di android program ini oe cuman bisa ngajarin kalian pakai software Android Studio, Intel xdk, dan ibm-bluemix, Eclipse sih oe belum bisa pake nya, soal nya oe juga belum nyoba, jadi belum bisa buat tutorial bikin aplikasi android pake Eclipse.

Sebelum nya kalian perlu download Java dulu soal nya di Android Studio maupun Intel xdk harus instal Java terlebih dahulu. Sedangkan ibm-bluemix itu pembuatan aplikasi android berbasis web, jadi kita ngga perlu instal software, cuman perlu web browser buat login ke ibm-bluemix.

ini link buat download Java nya. (klik di sini)
ini link buat download Android Studio nya. (klik di sini)
ini link buat download Intel xdk nya. (klik di sini)

Tutorial Belajar Android Program Dasar Untuk Pemula (Part I)


Oii... oii.. di pertemuan ini oe mau bahas nih tentang Android Program. Sebener nya ngga ada nama nya android program sih, maksud oe, oe mau ngajarin cara bikin suatu aplikasi untuk android.
Sebelum itu oe mau cerita sedikit, apa sih android itu? simak baik-baik ya.
Android (/ˈæn.drɔɪd/; an-droyd) adalah sistem operasi berbasis Linux yang dirancang untuk perangkat bergerak layar sentuh seperti telepon pintar dan komputer tablet. Android awalnya dikembangkan oleh Android, Inc., dengan dukungan finansial dari Google, yang kemudian membelinya pada tahun 2005. Sistem operasi ini dirilis secara resmi pada tahun 2007, bersamaan dengan didirikannya Open Handset Alliance, konsorsium dari perusahaan-perusahaan perangkat keras, perangkat lunak, dan telekomunikasi yang bertujuan untuk memajukan standar terbuka perangkat seluler. Ponsel Android pertama mulai dijual pada bulan Oktober 2008.

Antarmuka pengguna Android umumnya berupa manipulasi langsung, menggunakan gerakan sentuh yang serupa dengan tindakan nyata, misalnya menggeser, mengetuk, dan mencubit untuk memanipulasi objek di layar, serta papan ketik virtual untuk menulis teks. Selain perangkat layar sentuh, Google juga telah mengembangkan Android TV untuk televisi, Android Auto untuk mobil, dan Android Wear untuk jam tangan, masing-masingnya memiliki antarmuka pengguna yang berbeda. Varian Android juga digunakan pada komputer jinjing, konsol permainan, kamera digital, dan peralatan elektronik lainnya.

Android adalah sistem operasi dengan sumber terbuka, dan Google merilis kodenya di bawah Lisensi Apache. Kode dengan sumber terbuka dan lisensi perizinan pada Android memungkinkan perangkat lunak untuk dimodifikasi secara bebas dan didistribusikan oleh para pembuat perangkat, operator nirkabel, dan pengembang aplikasi. Selain itu, Android memiliki sejumlah besar komunitas pengembang aplikasi (apps) yang memperluas fungsionalitas perangkat, umumnya ditulis dalam versi kustomisasi bahasa pemrograman Java. Pada bulan Oktober 2013, ada lebih dari satu juta aplikasi yang tersedia untuk Android, dan sekitar 50 miliar aplikasi telah diunduh dari Google Play, toko aplikasi utama Android. Sebuah survei pada bulan April-Mei 2013 menemukan bahwa Android adalah platform paling populer bagi para pengembang, digunakan oleh 71% pengembang aplikasi bergerak. Di Google I/O 2014, Google melaporkan terdapat lebih dari satu miliar pengguna aktif bulanan Android, meningkat dari 583 juta pada bulan Juni 2013.

Faktor-faktor di atas telah memberikan kontribusi terhadap perkembangan Android, menjadikannya sebagai sistem operasi telepon pintar yang paling banyak digunakan di dunia, mengalahkan Symbian pada tahun 2010. Android juga menjadi pilihan bagi perusahaan teknologi yang menginginkan sistem operasi berbiaya rendah, bisa dikustomisasi, dan ringan untuk perangkat berteknologi tinggi tanpa harus mengembangkannya dari awal. Sifat Android yang terbuka juga telah mendorong munculnya sejumlah besar komunitas pengembang aplikasi untuk menggunakan kode sumber terbuka sebagai dasar proyek pembuatan aplikasi, dengan menambahkan fitur-fitur baru bagi pengguna tingkat lanjut atau mengoperasikan Android pada perangkat yang secara resmi dirilis dengan menggunakan sistem operasi lain.

Pada November 2013, Android menguasai pangsa pasar telepon pintar global, yang dipimpin oleh produk-produk Samsung, dengan persentase 64% pada bulan Maret 2013. Pada Juli 2013, terdapat 11.868 perangkat Android berbeda dengan beragam versi. Keberhasilan sistem operasi ini juga menjadikannya sebagai target ligitasi paten "perang telepon pintar" antar perusahaan-perusahaan teknologi. Hingga bulan Mei 2013, total 900 juta perangkat Android telah diaktifkan di seluruh dunia, dan 48 miliar aplikasi telah dipasang dari Google Play.

Android memungkinkan penggunanya untuk memasang aplikasi pihak ketiga, baik yang diperoleh dari toko aplikasi seperti Google Play, Amazon Appstore, ataupun dengan mengunduh dan memasang berkas APK dari situs pihak ketiga. Di Google Play, pengguna bisa menjelajah, mengunduh, dan memperbarui aplikasi yang diterbitkan oleh Google dan pengembang pihak ketiga, sesuai dengan persyaratan kompatibilitas Google. Google Play akan menyaring daftar aplikasi yang tersedia berdasarkan kompatibilitasnya dengan perangkat pengguna, dan pengembang dapat membatasi aplikasi ciptaan mereka bagi operator atau negara tertentu untuk alasan bisnis. Pembelian aplikasi yang tidak sesuai dengan keinginan pengguna dapat dikembalikan dalam waktu 15 menit setelah pengunduhan. Beberapa operator seluler juga menawarkan tagihan langsung untuk pembelian aplikasi di Google Play dengan cara menambahkan harga pembelian aplikasi pada tagihan bulanan pengguna. Pada bulan September 2012, ada lebih dari 675.000 aplikasi yang tersedia untuk Android, dan perkiraan jumlah aplikasi yang diunduh dari Play Store adalah 25 miliar.

Aplikasi Android dikembangkan dalam bahasa pemrograman Java dengan menggunakan kit pengembangan perangkat lunak Android (SDK). SDK ini terdiri dari seperangkat perkakas pengembangan, termasuk debugger, perpustakaan perangkat lunak, emulator handset yang berbasis QEMU, dokumentasi, kode sampel, dan tutorial. Didukung secara resmi oleh lingkungan pengembangan terpadu (IDE) Eclipse, yang menggunakan plugin Android Development Tools (ADT). Perkakas pengembangan lain yang tersedia di antaranya adalah Native Development Kit untuk aplikasi atau ekstensi dalam C atau C++, Google App Inventor, lingkungan visual untuk pemrogram pemula, dan berbagai kerangka kerja aplikasi web seluler lintas platform.

Apa aja yang kalian ketahui dari macam-macam versi android?
Nih macam-macam versi android yang sudah muncul:
•    Android 1.0 Apple pie
•    Android 1.1 Banana bread
•    Android 1.5 Cupcake
•    Android 1.6 Donut
•    Android 2.0 Eclair
•    Android 2.2 Froyo (Frozen Yogurt)
•    Android 2.3 Gingerbread
•    Android 3.0 Honeycomb
•    Android 4.0 Ice cream sandwich
•    Android 4.1 Jelly Bean
•    Android 4.4 Kitkat
•    Android 5.0 Lollipop
•    Android 6 Marshmallow
•    Android 7.0 Nougat

Sebelum nya oe pernah denger-denger ada Android Zombie Art.
•    Android Zombie Art
Android Zombie Art ini sebener nya memang ada, tapi apakah android ini palsu atau asli? setau oe sih OS android itu bebas di kembangkan, karena base nya linux. Jadi semua OS android itu ya asli. Kalau ada yang pernah cek di settingan android keluar gambar android dan zombie dan keluar pesan "zombie art by jack larson" , itu artinya OS tersebut dikembangkan oleh si jack larson.

Minggu, 11 Desember 2016

Tutorial Belajar PHP Program Dasar Untuk Pemula


PHP Program disini... Eh salah, maksud nya oe disini.. Oe mau bahas tentang PHP Program. PHP adalah singkatan dari "PHP: Hypertext Prepocessor", yaitu bahasa pemrograman yang digunakan secara luas untuk penanganan pembuatan dan pengembangan sebuah situs web dan bisa digunakan bersamaan dengan HTML. PHP diciptakan oleh Rasmus Lerdorf pertama kali tahun 1994. Pada awalnya PHP adalah sinngkatan dari "Personal Home Page Tools". Selanjutnya diganti menjadi FI ("Forms Interpreter"). Sejak versi 3.0, nama bahasa ini diubah menjadi "PHP: Hypertext Prepocessor" dengan singkatannya "PHP". PHP versi terbaru adalah versi ke-5. Berdasarkan survey Netcraft pada bulan Desember 1999, lebih dari sejuta site menggunakan PHP, di antaranya adalah NASA, Mitsubishi, dan RedHat.
PHP disebut bahasa pemrograman server side karena PHP diproses pada komputer server. Hal ini berbeda dibandingkan dengan bahasa pemrograman client-side seperti JavaScript yang diproses pada web browser (client).

Pada awalnya PHP merupakan singkatan dari Personal Home Page. Sesuai dengan namanya, PHP digunakan untuk membuat website pribadi. Dalam beberapa tahun perkembangannya, PHP menjelma menjadi bahasa pemrograman web yang powerful dan tidak hanya digunakan untuk membuat halaman web sederhana, tetapi juga website populer yang digunakan oleh jutaan orang seperti wikipedia, wordpress, joomla, dll.

Saat ini PHP adalah singkatan dari PHP: Hypertext Preprocessor, sebuah kepanjangan rekursif, yakni permainan kata dimana kepanjangannya terdiri dari singkatan itu sendiri: PHP: Hypertext Preprocessor.

PHP dapat digunakan dengan gratis (free) dan bersifat Open Source. PHP dirilis dalam lisensi PHP License, sedikit berbeda dengan lisensi GNU General Public License (GPL) yang biasa digunakan untuk proyek Open Source.

Kemudahan dan kepopuleran PHP sudah menjadi standar bagi programmer web di seluruh dunia. Menurut wikipedia pada februari 2014, sekitar 82% dari web server di dunia menggunakan PHP. PHP juga menjadi dasar dari aplikasi CMS (Content Management System) populer seperti Joomla, Drupal, dan WordPress.

Dikutip dari situs w3techs.com, (diakses pada 18 Desember 2014), berikut adalah market share penggunaan bahasa pemrograman server-side untuk mayoritas website di seluruh dunia :
•    PHP = 82.0%
•    ASP.NET = 17.2%
•    Java = 2.8%
•    ColdFusion = 0.7%
•    Ruby = 0.5%
•    Perl = 0.5%
•    Python = 0.2%
•    JavaScript = 0.1%
•    Erlang = 0.1%

Dapat dilihat dari tampilan diatas bahwa mayoritas website modern saat ini menggunakan PHP.

Fungsi PHP Dalam Pemrograman Web
Untuk membuat halaman web, sebenarnya PHP bukanlah bahasa pemrograman yang wajib digunakan. Kita bisa saja membuat website hanya menggunakan HTML saja. Web yang dihasilkan dengan HTML (dan CSS) ini dikenal dengan website statis, dimana konten dan halaman web bersifat tetap.

Sebagai perbandingan, website dinamis yang bisa dibuat menggunakan PHP adalah situs web yang bisa menyesuaikan tampilan konten tergantung situasi. Website dinamis juga bisa menyimpan data ke dalam database, membuat halaman yang berubah-ubah sesuai input dari user, memproses form, dll.

Untuk pembuatan web, kode PHP biasanya di sisipkan kedalam dokumen HTML. Karena fitur inilah PHP disebut juga sebagai Scripting Language atau bahasa pemrograman script.

Sebagai contoh penggunaan PHP, misalkan kita ingin membuat list dari nomor 1 sampai nomor 10. Dengan menggunakan HTML murni, kita bisa membuatnya secara manual seperti kode berikut ini:

 


<!DOCTYPE html>
<html>
   <head>
      <title>Contoh list dengan HTML</title>
   </head>
<body>
<h2>Daftar Absensi Mahasiswa</h2>
   <ol>
      <li>Nama Mahasiswa ke-1</li>
      <li>Nama Mahasiswa ke-2</li>
      <li>Nama Mahasiswa ke-3</li>
      <li>Nama Mahasiswa ke-4</li>
      <li>Nama Mahasiswa ke-5</li>
      <li>Nama Mahasiswa ke-6</li>
      <li>Nama Mahasiswa ke-7</li>
      <li>Nama Mahasiswa ke-8</li>
      <li>Nama Mahasiswa ke-9</li>
      <li>Nama Mahasiswa ke-10</li>
   </ol>
</body>
</html>

Halaman HTML tersebut dapat dibuat dengan mudah dengan cara men-copy-paste tag <li> sebanyak 10 kali dan mengubah sedikit angka-angka no urut di belakangnya. Namun jika yang kita inginkan adalah menambahkan list tersebut menjadi 100 atau 1000 list, cara copy-paste tersebut menjadi tidak efektif.
Jika menggunakan PHP, kita tinggal membuat perulangan for sebanyak 1000 kali dengan perintah yang lebih singkat seperti berikut ini:

 


<!DOCTYPE html>
<html>
   <head>
      <title>Contoh list dengan PHP</title>
   </head>
<body>
<h2>Daftar Absensi Mahasiswa</h2>
   <ol>
      <?php
      for ($i= 1; $i <= 1000; $i++)
         {
            echo "<li>Nama Mahasiswa ke-$i</li>";
         }
      ?>
   </ol
</body>
</html>

#

Dengan menggunakan kode baris yang bahkan lebih sedikit, kita dapat membuat list tersebut menjadi 1000 kali, bahkan 100.000 kali dengan hanya mengubah sebuah variabel $i.

PHP tidak hanya dapat melakukan pengulangan tersebut, masih banyak hal lain yang bisa kita lakukan dengan PHP, seperti menginput data ke database, menghasilkan gambar, menkonversi halaman text menjadi PDF, management cookie dan session, dan hal lainnya yang akan kita pelajari di dalam tutorial belajar PHP di duniailkom.

Tutorial Belajar PHP Program Dasar Untuk Pemula:
•    Menginstall XAMPP
•    Menjalankan Apache
•    Menjalankan File PHP
•    Cara Kerja WebServer
•    Input PHP ke HTML
•    File php.ini
•    Dasar Penulisan PHP
•    Penulisan Komentar
•    Penulisan Variabel
•    Penulisan Konstanta
•    Tipe Data Integer
•    Tipe Data Float
•    Tipe Data String
•    Tipe Data Boolean
•    Tipe Data Array
•    Pengertian Operand
•    Fungsi var_dump()
•    Operator Aritmatika
•    Operator String
•    Operator Logika
•    Perbandingan
•    Operator Increment
•    Assignment PHP
•    Operator Bitwise
•    Operator Assigment
•    Type Casting
•    Struktur Logika IF
•    Struktur ELSE
•    Logika ELSE-IF
•    Struktur Switch
•    Perulangan For
•    Perulangan While
•    Do-While
•    Perintah Break
•    Perintah Continue
•    Perulangan Foreach
•    Pengertian Function
•    Penulisan Function
•    Variabel Scope
•    Argumen Function
•    Default Parameter
•    Variable Parameter

Dan ada juga Versi lengkap nya:
PHP Tutorial
•    PHP HOME
•    PHP Intro
•    PHP Install
•    PHP Syntax
•    PHP Variables
•    PHP Echo / Print
•    PHP Data Types
•    PHP Strings
•    PHP Constants
•    PHP Operators
•    PHP If...Else...Elseif
•    PHP Switch
•    PHP While Loops
•    PHP For Loops
•    PHP Functions
•    PHP Arrays
•    PHP Sorting Arrays
•    PHP Superglobals

PHP Forms
•    PHP Form Handling
•    PHP Form Validation
•    PHP Form Required
•    PHP Form URL/E-mail
•    PHP Form Complete

PHP Advanced
•    PHP Arrays Multi
•    PHP Date and Time
•    PHP Include
•    PHP File Handling
•    PHP File Open/Read
•    PHP File Create/Write
•    PHP File Upload
•    PHP Cookies
•    PHP Sessions
•    PHP Filters
•    PHP Filters Advanced
•    PHP Error Handling
•    PHP Exception

MySQL Database
•    MySQL Database
•    MySQL Connect
•    MySQL Create DB
•    MySQL Create Table
•    MySQL Insert Data
•    MySQL Get Last ID
•    MySQL Insert Multiple
•    MySQL Prepared
•    MySQL Select Data
•    MySQL Delete Data
•    MySQL Update Data
•    MySQL Limit Data

PHP - XML
•    PHP XML Parsers
•    PHP SimpleXML Parser
•    PHP SimpleXML - Get
•    PHP XML Expat
•    PHP XML DOM

PHP - AJAX
•    AJAX Intro
•    AJAX PHP
•    AJAX Database
•    AJAX XML
•    AJAX Live Search
•    AJAX RSS Reader
•    AJAX Poll

PHP Examples
•    PHP Examples
•    PHP Quiz
•    PHP Certificate

PHP Reference
•    PHP Array
•    PHP Calendar
•    PHP Date
•    PHP Directory
•    PHP Error
•    PHP Filesystem
•    PHP Filter
•    PHP FTP
•    PHP HTTP
•    PHP Libxml
•    PHP Mail
•    PHP Math
•    PHP Misc
•    PHP MySQLi
•    PHP SimpleXML
•    PHP String
•    PHP XML
•    PHP Zip
•    PHP Timezones