Minggu, 13 Januari 2013

GAME PADA PASCAL


Program Game Pada Pascal

uses crt;

label
  habis, lanjut;

const
  max_panjang = 100;
  batas_x = 80;
  batas_y = 25;
  speed   = 200;

type
  tempat = record
    x, y : integer;
  end;

var
  ekor : array[1..max_panjang] of tempat;
  ujung, makanan : tempat;
  tkn : char;
  i,pjg,skor,spd  : integer;
  mati : boolean;

procedure atur_posisi;
begin
  ujung.x := ekor[pjg].x;
  ujung.y := ekor[pjg].y;
  for i:=pjg downto 2 do begin
    ekor[i].x := ekor[i-1].x;
    ekor[i].y := ekor[i-1].y;
  end;
  gotoxy(ekor[2].x, ekor[2].y); write('@');
  gotoxy(ekor[3].x, ekor[3].y); write('&');
  gotoxy(ekor[pjg-1].x, ekor[pjg-1].y); write('#');
  gotoxy(ujung.x, ujung.y); write(' ');
  for i:=3 to pjg do if((ekor[2].x=ekor[i].x) and (ekor[2].y=ekor[i].y)) then mati:=true;
  delay(speed-spd);
end;

procedure makan;
var beda : boolean;
begin
  inc(skor,5);
  gotoxy(10,26); write('Skor = ',skor);
  repeat
    beda := true;
    makanan.x := random(batas_x-2)+2;
    makanan.y := random(batas_y-2)+2;
    for i:=1 to pjg do
      if((makanan.x=ekor[i].x) and (makanan.y=ekor[i].y)) then beda:=false;
  until beda;
  gotoxy(makanan.x, makanan.y); write('o');
  inc(pjg);
  inc(spd,2);
end;

procedure bergerak(c : char);
begin
  if c = 'd' then begin
    repeat
      if((ekor[1].x = makanan.x) and (ekor[1].y = makanan.y)) then makan;
      ekor[1].x := ekor[1].x+1;
      atur_posisi;
      if (ekor[1].x = batas_x) or (ekor[1].y = batas_y) or (ekor[1].x = 1) or (ekor[1].y = 1) then mati := true;
    until keypressed or mati;
    if mati then exit;
    tkn:=readkey;
    if tkn = 'a' then tkn:='d';
  end
  else if c = 's' then begin
    repeat
      if((ekor[1].x = makanan.x) and (ekor[1].y = makanan.y)) then makan;
      ekor[1].y := ekor[1].y+1;
      atur_posisi;
      if (ekor[1].x = batas_x) or (ekor[1].y = batas_y) or (ekor[1].x = 1) or (ekor[1].y = 1) then mati := true;
    until keypressed or mati;
    if mati then exit;
    tkn:=readkey;
    if tkn = 'w' then tkn:='s';
  end
  else if c = 'w' then begin
    repeat
      if((ekor[1].x = makanan.x) and (ekor[1].y = makanan.y)) then makan;
      ekor[1].y := ekor[1].y-1;
      atur_posisi;
      if (ekor[1].x = batas_x) or (ekor[1].y = batas_y) or (ekor[1].x = 1) or (ekor[1].y = 1) then mati := true;
    until keypressed or mati;
    if mati then exit;
    tkn:=readkey;
    if tkn = 's' then tkn:='w';
  end
  else if c = 'a' then begin
    repeat
      if((ekor[1].x = makanan.x) and (ekor[1].y = makanan.y)) then makan;
      ekor[1].x := ekor[1].x-1;
      atur_posisi;
      if (ekor[1].x = batas_x) or (ekor[1].y = batas_y) or (ekor[1].x = 1) or (ekor[1].y = 1) then mati := true;
    until keypressed or mati;
    if mati then exit;
    tkn:=readkey;
    if tkn = 'd' then tkn:='a';
  end;
end;

begin
  tkn:='d';
  mati := false;
  randomize;
  pjg := 10; spd := 0;
  makanan.x := random(batas_x-2)+2;
  makanan.y := random(batas_y-2)+2;
  ekor[1].x := 40;
  ekor[1].y := 3;
  for i:=2 to pjg do begin
    ekor[i].x := ekor[i-1].x;
    ekor[i].y := 3;
  end;
lanjut:
  clrscr;
  gotoxy(10,26); write('Skor = ',skor);
  for i:=1 to 80 do begin
    gotoxy(i,1); write('-');
    gotoxy(i,25); write('-');
  end;
  for i:=2 to 24 do begin
    gotoxy(1,i); write('|');
    gotoxy(80,i); write('|');
  end;
  for i:=1 to pjg do begin
    gotoxy(ekor[i].x, ekor[i].y);
    write('&');
  end;
  gotoxy(makanan.x, makanan.y); write('o');
  repeat
    if((tkn='w') or (tkn='a') or (tkn='s') or (tkn='d')) then bergerak(tkn)
    else begin
      repeat
        gotoxy(20,10); write('           Lagi Galau..??');
        gotoxy(20,11); write('          ..Paused Game..');
        repeat
          gotoxy(20,13); write('..Press w, a, s or d to lanjut..'); delay(200);
          gotoxy(20,13); write('                                '); delay(200);
        until keypressed;
        tkn:=readkey;
    until((tkn='w') or (tkn='a') or (tkn='s') or (tkn='d')); goto lanjut;
    end;
    if mati then goto habis;
  until (tkn = #27) or mati;

habis:
  gotoxy(20,10); write('    Lagi Galau..??');
  gotoxy(20,11); write(' ..Paramex obatnya..');
  gotoxy(20,12); write('   ..wkwkwkwkwk..');
  readln;
end.
Penjelasan
 Program ini akan bergerak dengan menekan tombol w,a,s,d, sebagai penun juk arah ular. Program akan berkahir jika ular mencapai panjang 100,dengan kecepatan 200 delay, dengan tipe data x dan y.  jika ular gagal maka akan muncul kalimat “lagi galau, paramex obatnya, wkwkwkwk, dank an muncul tampilan huruf W,A,S,D, unutk lanjut atau berhenti. Sekiranya itulah jalannya program game ini secara sederhananya.





Program Pointer Pada C++


Program pointer pada C++

Listing program
#include <iostream.h>
      int main()
       {
       int *a;
       int b=10;
       a=&b;

      cout<<"alamat a : "<<a<<endl;
       cout<<"nilai b : "<<b<<endl;
       cout<<"nilai a : "<<*a<<endl;

      return 0;
       }
Output Dan Input


PROGRAM POINTER PADA PASCAL

Program Pointer Pada Pascal


PROGRAM POINTER PADA PASCAL

Uses crt;                             
Type ptr = ^string;          
Var        
ptrnama, ptrkls, ptrnpm : ptr;
nama,kls,npm : string; 
x,n : integer;                     
begin                                                    
clrscr;                                                   
writeln(‘data mahasiswa : ‘);      
writeln(‘ ‘);                        
writeln(‘masukan angka : ‘);       
readln (n);                                          
for x := 1 to n do                              

begin                                                    
writeln(‘data ke ‘,x);                                      
write(‘nama = ‘); readln(nama);                  
write(‘kelas = ‘);readln(kls);                                  
write(‘npm = ‘); readln(npm);   
                                 
ptrnama := @nama;                                       
ptrkls := @kls;                   
ptrnpm := @npm;           
writeln(‘nama = ‘,ptrnama^);    
writeln(‘kelas = ‘,ptrkls^);                           
writeln(‘npm = ‘,ptrnpm^);        
end; 
readln;                      
end.

Output Dan Input







Program String Pada C++


Program String Pada C++

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


int main(){
             char nama_buah_1[20];
             char nama_buah_2[20];
             
             cout<<"Masukan nama buah pertama : ";
             cin.getline(nama_buah_1,sizeof(nama_buah_1));
             cout<<"Masukan nama buah kedua   : ";
             cin.getline(nama_buah_2,sizeof(nama_buah_2));
             cout<<"Nama buah pertama         : "<<nama_buah_1<<endl;
             cout<<"Nama buah kedua           : "<<nama_buah_2<<endl<<endl;

             getch ();
}

INPUT DAN OUTPUT



















Program String Pada Pascal

Program String Pada Pascal

uses crt;
Var
   S : String;

begin
clrscr;
writeln('----------------------------------');
 S := 'Hey Rika !';
 Write('     SUKSES SELALU RIKA ');
 Writeln(Pos('hey',S));
 If Pos('hey',S) <= 0 then
  Writeln(' "BELAJAR YANG RAJIN YAA !!!" ');

readln;
end.

Output Input