Postingan

Menampilkan postingan dari April, 2013
ironman3

menu kalkulator

program menu_kalkulator; {membuat menu kalkulator} uses wincrt; var pilih, A, B : longint; begin clrscr;        writeln ('Menu Kalkulator');        writeln ('1. Penjumlahan');        writeln ('2. Pengurangan');        writeln ('3. Perkalian');        writeln ('4. Pembagian');        write ('Pilih (1 sampai 4) = ');        read (pilih); case pilih of 1 : writeln ('Anda memilih penjumlahan'); 2 : writeln ('Anda memilih pengurangan'); 3 : writeln ('Anda memilih perkalian'); 4 : writeln ('Anda memilih pembagian'); else writeln ('Silakan coba lagi, Nomor yang anda pilih tidak ada dalam pilihan diatas'); end;                write ('Masukkan nilai = ');                read (A);                write ('Masukkan nilai kedua = ');                read (B);                                case pilih of                1 : writeln ('Hasil = ' ,A + B);                2 : writeln ('Hasil =

bubble pas

uses wincrt; const max=100; var data:array [0..max] of integer;     i,j,n:integer; procedure input; begin      write('Masukkan banyak data yang anda inginkan = ');readln(n);      for j:=1 to n do      begin           write('Data[',j,'] = ');           readln(data[j]);      end; end; procedure tukar(var a,b:integer); var temp:integer; begin      temp:=a;      a:=b;      b:=temp; end; procedure bubble_sort_ascending; begin      for i:=1 to n-1do           for j:=1 to n-i do               if data[j]>data[j+1] then                  tukar(data[j],data[j+1]);   end; procedure bubble_sort_descending; begin      for i:=1 to n-1do           for j:=1 to n-i do               if data[j]<data[j+1] then                  tukar(data[j],data[j+1]);   end; procedure option; var pilih:byte; begin      repeat            write('Pilih (Ascending=1)/(Descending=2)/(Exit=3) = ');            readln(pilih);            if pil

program antrian

Uses winCrt; Type      Point =  ^Rec;      Rec   =  record                   isi : char;                   next: Point;               end;      queue = record                   Head : Point;                   Tail : Point;              end; var      Q   : queue;      i,k : byte;        { i = tinggi_stack } Procedure GambarPipa; Var y  : byte;  begin      GotoXY(39,8);write('\       /');      For y:=1 to 10 do       begin            GotoXY(40,y+8);write('³');            GotoXY(46,y+8);write('³');       end;      GotoXY(40,19);write('À³   ³Ù');      GotoXY(61,21);write('\');      GotoXY(61,23);write('/');  end; Function Empty: boolean;  begin      if Q.Head = nil then          Empty:= True  else          Empty:= False;  end; Function Full: boolean;  begin      if i = 10 then          Full:= True else          Full:= False;  end; Procedure Enqueue;

matrik kali

uses wincrt; const max=50; var mbA,mkA,mbB,mkB,a,b,c:integer;     matrix1,matrix2,matrix3:array[1..max,1..max]of integer; begin      writeln('perkalian matrix');      repeat      write('masukkan jumlah baris matrixA : ');readln(mbA);      write('masukkan jumlah kolom matrixA : ');readln(mkA);      write('masukkan jumlah baris matrixB : ');readln(mbB);      write('masukkan jumlah kolom matrixB : ');readln(mkB);      if mkA<>mbB then      writeln('masukan anda salah');      until mkA=mbB;      for a:=1 to mbA do      begin       for b:=1 to mkA do       begin        write('A[',a,',',b,']','=');        readln(matrix1[a,b]);       end;      end;      for a:=1 to mbB do      begin       for b:=1 to mkB do       begin        write('B[',a,',',b,']','=');        readln(matrix2[a,b]);       end;      end;      for a:=1 to mbA do      begin