Minggu, 08 November 2015

Sistem Operasi Kompoter



Sistem Operasi Kompoter (SOK)

A. Open Source
1.    Negation Open Source 
Software atau perangkat lunak merupakan bagian dari inti yang berperan penting pada sebuah komputer atau alat elektronik lainnya yang membutuhkan software untuk mengoperasikannya. Open Source adalah istilah yang digunakan pada sebuah software atau perangkat lunak yang bisa digunakan oleh siapa saja dengan membuka atau membebaskan source codenya (sumber kode program) sehingga dapat mengetahui dengan jelas cara kerja software tersebut, selain itu siapa saja dibebaskan untuk mengubah ataupun memperbaiki jika ditemukan kelemahan-kelemahan pada software tersebut.
Software Open Source merupakan buah dari rapat yang diprakarsai oleh Netscape, penggagas Software Open Source adalah Eric S. Raymond, Crhistine Peterson, Todd Anderson, Larry Augustin, Jon Hall dan Sam Ockman dengan pelopornya Richard Stallman pada tahun 1998. Software berbasis Open Source mulai menanjak popularitasnya setelah tahun 2004 ditandai dengan lahirnya Linux yang tidak lain adalah sebuah terobosan besar sebagai software sistem operasi open source dan gratis di tengah merajainya OS Windows yang mengusung lisensi  close source.
Keberadaan software open source sangat bergantung pada internet, dengan begitu siapa dapat dengan mudah mendapatkan software open source untuk lalu digunakan, diperbaiki dan dikembangkan dan disebarluaskan kembali melalui internet, begitulah seterusnya. Bahkan banyak sekali software open source saat ini yang penggunanya lebih banyak dibanding software berbayar. Sebagai contoh Apache+PHP+MySQL untuk aplikasi web server, WordPress untuk Content Management System dan masih ada lagi yang lainnya.
Software open source identik dengan software gratis, anggapan tersebut tidaklah salah. Namun pada beberapa kasus yang mengharuskan seseorang membayar untuk sebuah software open source. Perlu digarisbawahi open source yang bersifat bebas bukan berarti bebas sebebas-bebasnya, akan tetapi bebas disini adalah bebas untuk digunakan, dikembangkan, disebarkan ulang dengan mempertanggungjawabkan secara bersama dan tidak menghilangkan hak cipta pembuatnya.

2.    Kelebihan Dan Kekurangan Software Open Source
Kelebihan Software Open Source
·         Software Open Source biasanya dikembangkan oleh suatu lembaga atau komunitas yang ahli dibidangnya secara bersama-sama sehingga masalah yang ditemukan bisa dengan cepat diatasi.
·         Fitur yang banyak dan kompleks begitupula dengan kemampuannya.
·         Software Open Source berlisensi GPL (General Public Licence) sehingga pengguna tidak dikenakan biaya untuk software tersebut.
Kekurangan Software Open Source
·         User interface yang cenderung rumit bagi user awam
·         Tidak bisa dipungkiri masih ada beberapa software open source yang tidak bisa menggantikan kinerja software berbayar.
·         User awam sering menemui kesulitan dalam instalasi dan penggunaan software open source.

3.    Contoh dan Perbandingan Software Open Source dan Software Berbayar
·         Sistem Operasi (OS)
Open Source: Linux (debian, ubuntu, mint, slackware, backtrack, open suse)
Software Berbayar: Windows (XP, Vista, Windows 7, Windows 8), MacOS
·       Photo dan Image Editor
Open Source: GIMP, InkScape, Digikam, Abhishek’s GLIMPSE
Software Berbayar: Adobe Photoshop, Corel Draw
·       Office Editor
Open Source: LibreOffice, OpenOffice
Software Berbayar: KingOffice, MsOffice (2003,2007, 2010, 2013)
·       Sistem Operasi Smartphone
Open Source: Android, Firefox OS
Software Berbayar: Windows Phone, iOS



B. Perangkat lunak bebas 
Perangkat lunak bebas adalah perihal kebebasan, bukan harga. Untuk memahami konsep ini, Anda harus berpikir tentang kebebasan berbicara, bukan minuman gratis.
Perangkat lunak bebas adalah tentang kebebasan para pengguna untuk menjalankan, menyalin, mendistribusikan, mempelajari, mengubah dan meningkatkan kinerja perangkat lunak. Hal ini berarti bahwa pengguna program memiliki empat kebebasan yang mendasar:
·         Kebebasan untuk menjalankan program, untuk tujuan apa saja (kebebasan 0).
·         Kebebasan untuk mempelajari bagaimana program itu bekerja, dan mengubahnya sesuai keinginan anda (kebebasan 1). Akses ke kode sumber program merupakan suatu prasyarat untuk poin ini.
·         Kebebasan untuk mengedarkan salinan dari perangkat lunak, sehingga Anda dapat membantu sesama (kebebasan 2).
·         Kebebasan untuk memperbaiki program, dan mempublikasikan versi perbaikan Anda ke khalayak umum sehingga orang lain dapat menikmati keuntungannya (kebebasan 3). Akses pada kode program merupakan suatu prasyarat juga.
Suatu program merupakan perangkat lunak bebas, bila setiap pengguna memiliki semua dari kebebasan tersebut. Dengan demikian, Anda seharusnya bebas untuk menyebarluaskan salinan program, baik dengan atau tanpa modifikasi, secara gratis atau pun dengan memungut biaya penyebarluasan, kepada siapapun dan dimanapun. Kebebasan untuk melakukan hal-hal ini berarti (antara lain) bahwa kita tidak harus meminta atau pun membayar untuk mendapatkan ijin guna melakukan hal hal tersebut. memberitahu orang tertentu, atau dengan cara tertentu.
Kebebasan untuk menjalankan program berarti kebebasan bagi setiap tipe orang atau organisasi untuk menggunakan program tersebut pada sistem komputer jenis apa pun, untuk setiap jenis pekerjaan secara keseluruhan dan tujuan apapun, tanpa perlu untuk mengadakan pembicaraan tentang hal itu dengan pengembang atau pun pihak lainnya secara khusus. Dalam kebebasan ini,tujuan pengguna adalah yang penting, bukan tujuan pengembang; Anda sebagai pengguna dapat bebas untuk menjalankan program untuk tujuan-tujuan Anda, dan jika kemudian Anda membagikan program itu kepada orang lain, maka dia bebas untuk menjalankannya sesuai keperluannya, dan Anda tidak berhak untuk memaksakan tujuan Anda kepadanya.
Kebebasan untuk menyebarluaskan hasil penggandaan, harus termasuk bentuk biner atau executable, serta kode sumber, baik untuk versi modifikasi maupun tidak dimodifikasi.(Mendistribusikan program dalam bentuk dapat dijalankan secara langsung diperlukan agar mudah diinstal pada sistem operasi bebas.) Tidaklah menjadi masalah jika tidak ada cara untuk memproduksi bentuk biner atau executable suatu program tertentu (karena beberapa bahasa tidak mendukung fitur itu), tetapi Anda harus memberikan kebebasan untuk mendistribusikan kembali bentuk tersebut (biner atau executable) yang seharusnya anda temukan atau mengembangkan cara untuk membuat mereka.
Kebebasan 1 mencakup kebebasan untuk menggunakan versi perubahan pada tempat asalnya. Jika program disampaikan dalam sebuah produk yang didesain untuk menjalankan versi perubahan milik seseorang tetapi menolak untuk menjalankan versi perubahan Anda - suatu praktek yang dikenal sebagai “tivoization” atau (melalui daftar hitam) sebagai “secure boot” - kebebasan 1 menjadi fiksi teoretis belaka daripada sebuah praktek kebebasan. Hal ini tidaklah cukup. Dengan kata lain, binari ini bukanlah perangkat lunak bebas meskipun dikompilasi dari kode sumber yang gratis.
Salah satu cara penting untuk memodifikasi sebuah program adalah dengan menggabungkan subrutin subrutin dan modul modul yang tersedia secara bebas. Jika lisensi sebuah program mengatakan bahwa Anda tidak bisa bergabung kedalam sebuah lisensi sesuai modul yang sudah ada, seperti jika lisensi itu mengharuskan anda untuk menjadi pemegang hak cipta kode apapun yang Anda tambahkan, maka lisensi tersebut terlalu ketat untuk memenuhi syarat sebagai lisensi bebas.
Agar kebebasan tersebut menjadi nyata, maka mereka harus bersifat permanen dan tidak dapat dibatalkan selama anda tidak melakukan hal apa pun yang salah, jika pengembang perangkat lunak memiliki kekuatan untuk mencabut lisensi, atau sampai merubah istilah, tanpa anda melakukan sesuatu yang salah yang memberikan sebab untuk pencabutan itu, maka perangkat lunak itu tidak bebas.
Namun demikian, aturan tertentu mengenai tata cara pendistribusian perangkat lunak bebas dapat saja diterima, jika mereka tidak bertentangan dengan hakikat inti dari kebebasan. Sebagai contoh, copyleft adalah aturan bahwa ketika mendistribusikan program, Anda tidak dapat menambahkan larangan untuk menyangkal orang lain dari hakikat inti kebebasan. Aturan ini tidak bertentangan dengan hakikat inti dari kebebasan itu sendiri, justru melindungi mereka.
Perangkat lunak bebas bukan berarti perangkat lunak non-komersial. Sebuah program bebas harus tersedia untuk penggunaan komersial, pengembangan komersial, dan distribusi komersial. Pengembangan komersial dari perangkat lunak bebas bukan lagi hal yang aneh; bebas seperti perangkat lunak komersial adalah sangat penting. Anda mungkin harus membayar untuk mendapatkan salinan perangkat lunak bebas, atau mungkin juga anda mendapatkannya secara cuma-cuma. Tetapi terlepas dari cara Anda mendapatkan salinan, Anda selalu memiliki kebebasan untuk menyalin dan mengubah perangkat lunak, bahkan untuk menjual salinan.
Apakah sebuah modifikasi merupakan suatu perbaikan adalah masalah subjektif. Jika modifikasi yang Anda lakukan terbatas-secara substansi, pada modifikasi yang orang lain menganggapnya sebagai perbaikan. Itu bukanlah kebebasan
Namun, aturan tentang bagaimana mengemas versi modifikasi dapat diterima, jika tidak secara efektif membatasi kebebasan Anda untuk mempublikasikan ulang modifikasinya, atau kebebasan untuk membuat dan menggunakan versi modifikasi pribadi. Aturan bahwa jika Anda membuat versi anda tersedia dalam cara ini, Anda harus membuatnya tersedia dalam cara itu adalah dapat diterima, pada kondisi yang sama. (Perhatikan bahwa aturan tersebut masih meninggalkan anda pilihan apakah akan menerbitkan versi Anda.) Aturan yang memerlukan pelepasan kode sumber kepada para pengguna untuk versi yang Anda masukkan ke dalam penggunaan publik juga dapat diterima. Hal ini juga dapat diterima untuk lisensi yang membutuhkan itu, jika Anda memiliki versi modifikasi yang telah didistribusikan dan pengembang sebelumnya meminta salinannya, Anda harus mengirimkannya salinan dari program itu, atau bahwa Anda mengidentifikasi diri Anda pada versi modifikasi anda.
Dalam proyek GNU, copyleft digunakan untuk melindungi kebebasan tersebut secara legal bagi semua orang. Akan tetapi perangkat lunak non-copyleft juga ada.
Terkadang pemerintah mengeluarkan aturan pembatasan ekspor dan sanksi perdagangan yang dapat membatasi kebebasan Anda untuk menyebarkan salinan program secara internasional. Pengembang perangkat lunak memang tidak memiliki kekuatan untuk meniadakan atau mengesampingkan pembatasan ini, tapi apa yang mereka dapat dan harus lakukan ialah menolak untuk menetapkan mereka (aturan pembatasan) sebagai prasyarat dari program. Dengan cara ini, pembatasan tidak akan mempengaruhi kegiatan dan orang-orang di luar wilayah hukum pemerintah tersebut. Jadi, lisensi perangkat lunak bebas tidak boleh mengharuskan mentaati peraturan ekspor sebagai salah satu syarat penting kebebasan.
Ketika berbicara tentang perangkat lunak bebas, sebaiknya jangan menggunakan istilah sepertimembagi-bagikan atau gratis, karena istilah tersebut menyiratkan soal harga, dan bukannya kebebasan.
Akhirnya, perhatikan bahwa kriteria seperti yang dinyatakan dalam definisi perangkat lunak bebas ini memerlukan pemikiran yang cermat untuk interpretasi mereka. Jika sebuah lisensi perangkat lunak menetapkan pembatasan, maka ia bukanlah lisensi perangkat lunak bebas.
Di Indonesia, HaKI PL termasuk ke dalam kategori Hak Cipta (Copyright). Beberapa negara, mengizinkan pematenan perangkat lunak. Pada industri perangkat lunak, sangat umum perusahaan besar memiliki portfolio paten yang berjumlah ratusan, bahkan ribuan. Sebagian besar perusahaan-perusahaan ini memiliki perjanjian cross-licensing, artinya ''Saya izinkan anda menggunakan paten saya asalkan saya boleh menggunakan paten anda''. Akibatnya hukum paten pada industri perangkat lunak sangat merugikan perusahaan-perusahaan kecil yang cenderung tidak memiliki paten. Tetapi ada juga perusahaan kecil yang menyalahgunakan hal ini.
Banyak pihak tidak setuju terhadap paten perangkat lunak karena sangat merugikan industri perangkat lunak. Sebuah paten berlaku di sebuah negara. Jika sebuah perusahaan ingin patennya berlaku di negara lain, maka perusahaan tersebut harus mendaftarkan patennya di negara lain tersebut. Tidak seperti hak cipta, paten harus didaftarkan terlebih dahulu sebelum berlaku.
Perangkat lunak berpemilik ( propriety) ialah perangkat lunak yang tidak bebas atau pun semi-bebas. Seseorang dapat dilarang, atau harus meminta izin, atau akan dikenakan pembatasan lainnya jika menggunakan, mengedarkan, atau memodifikasinya.
Perangkat lunak komersial adalah perangkat lunak yang dikembangkan oleh kalangan bisnis untuk memperoleh keuntungan dari penggunaannya. ``Komersial'' dan ``kepemilikan'' adalah dua hal yang berbeda! Kebanyakan perangkat lunak komersial adalah berpemilik, tapi ada perangkat lunak bebas komersial, dan ada perangkat lunak tidak bebas dan tidak komersial. Sebaiknya, istilah ini tidak digunakan.
Perangkat lunak semibebas adalah perangkat lunak yang tidak bebas, tapi mengizinkan setiap orang untuk menggunakan, menyalin, mendistribusikan, dan memodifikasinya (termasuk distribusi dari versi yang telah dimodifikasi) untuk tujuan tertentu (Umpama nirlaba). PGP adalah salah satu contoh dari program semibebas. Perangkat lunak semibebas jauh lebih baik dari perangkat lunak berpemilik, namun masih ada masalah, dan seseorang tidak dapat menggunakannya pada sistem operasi yang bebas.
Perangkat lunak public domain ialah perangkat lunak yang tanpa hak cipta. Ini merupakan kasus khusus dari perangkat lunak bebas non- copyleft, yang berarti bahwa beberapa salinan atau versi yang telah dimodifikasi bisa jadi tidak bebas sama sekali. Terkadang ada yang menggunakan istilah `` public domain'' secara bebas yang berarti ``cuma-cuma'' atau ``tersedia gratis". Namun ``public domain'' merupakan istilah hukum yang artinya ``tidak memiliki hak cipta''. Untuk jelasnya, kami menganjurkan untuk menggunakan istilah ``public domain'' dalam arti tersebut, serta menggunakan istilah lain untuk mengartikan pengertian yang lain.
Sebuah karya adalah public domain jika pemilik hak ciptanya menghendaki demikian. Selain itu, hak cipta memiliki waktu kadaluwarsa. Sebagai contoh, lagulagu klasik sebagian besar adalah public domain karena sudah melewati jangka waktu kadaluwarsa hak cipta.
Istilah `` freeware'' tidak terdefinisi dengan jelas, tapi biasanya digunakan untuk paket-paket yang mengizinkan redistribusi tetapi bukan pemodifikasian (dan kode programnya tidak tersedia). Paket-paket ini bukan perangkat lunak bebas.
Shareware ialah perangkat lunak yang mengizinkan orang-orang untuk meredistribusikan salinannya, tetapi mereka yang terus menggunakannya diminta untuk membayar biaya lisensi. Dalam prakteknya, orang-orang sering tidak mempedulikan perjanjian distribusi dan tetap melakukan hal tersebut, tapi sebenarnya perjanjian tidak mengizinkannya.
GNU/GPL merupakan sebuah kumpulan ketentuan pendistribusian tertentu untuk meng-copyleft-kan sebuah program. Proyek GNU menggunakannya sebagai perjanjian distribusi untuk sebagian besar perangkat lunak GNU. Sebagai contoh adalah lisensi GPL yang umum digunakan pada perangkat lunak Open Source. GPL memberikan hak kepada orang lain untuk menggunakan sebuah ciptaan asalkan modifikasi atau produk derivasi dari ciptaan tersebut memiliki lisensi yang sama. Kebalikan dari hak cipta adalah public domain. Ciptaan dalam public domain dapat digunakan sekehendaknya oleh pihak lain.






Jumat, 16 Januari 2015

TURBO PASCAL



program pilihan_sederhana;
uses wincrt;
label awal, akhir;
var nilai : integer;
pil : char;
begin
awal:
clrscr;
write('Input Nilai Anda : ');readln(nilai);
clrscr;
if (nilai <= 100) and (nilai >= 70) then writeln('Anda Pintar')
Else if (nilai < 70) and (nilai > 0) then writeln('Anda Belum Beruntung ')else goto awal;
write('Apakah Anda Ingin Mengulang Lagi (Y/T) ? ');pil:=readkey;
if upcase(pil)='Y' then goto awal
else if upcase(pil)='T' then goto akhir;akhir:
end.




 program pilihan_sederhana;


uses wincrt;
label awal, akhir;
var
pil, jawab : char;
begin
awal:
writeln('Aplikasi Yang Digunakan Untuk Membuat Program Adalah ? ');
writeln('A. Microsoft Word');
writeln('B. Microsoft Excel');
writeln('C. Microsoft Power Point');
writeln('D. Turbo Pascal');
writeln('Jawaban Anda : ');jawab := readkey;
if upcase(jawab)='D' then writeln('Benar')
Else writeln('Salah');
write('Apakah Anda Ingin Mengulang Lagi (Y/T) ? ');pil:=readkey;
if upcase(pil)='Y' then goto awal
else if upcase(pil)='T' then goto akhir;akhir:
end.
 


 








Program Seleksi_IF_3;
uses wincrt;
var
Nilai : real;
Grade : char;
Begin
write('Berapa Nilai Yang Di Dapat = ');readln(Nilai);
If Nilai>90 then grade := 'A'
Else If Nilai>75 then grade := 'B'
Else If Nilai>60 then grade := 'C'
Else If Nilai>40 then grade := 'D'
Else grade := 'E';
write('Grade Anda : ',grade);read;
end.
 
 
 





Program Seleksi_IF_3;
uses wincrt;
label awal, akhir;
var
Nilai : integer;
Grade : char;
pil : char;
Begin
awal:
write('Berapa Nilai Yang Di Dapat = ');readln(Nilai);
case nilai of
91..100 : grade := 'A';
76..90 : grade := 'B';
61..75 : grade := 'C';
41..60 : grade := 'D';
else grade := 'E';
  end;
writeln('Grade Anda : ',grade);read;
writeln('Ingin Mengulang Lagi (Y/T) : ');
pil := readkey;
if upcase(pil)='Y' then goto awal
else goto akhir;akhir:
end.








Program tampilan;
uses wincrt;
label awal, akhir;
var
x,y : integer;
pil : char;
Begin
awal:
clrscr;
write('Input x = ');readln(x);
write('Input y = ');readln(y);
gotoxy(x,y);writeln('Halloooo...!!!');
writeln('Ingin Mengulang Lagi (Y/T) : ');
pil := readkey;
if upcase(pil)='Y' then goto awal
else goto akhir;akhir:
end.
 






Program Tampilan;
uses wincrt;
label awal, akhir;
var
i,n : integer;
pil : char;
Begin
awal:
clrscr;
write('Input Banyaknya Pengulangan  : ');readln(n);
for i:=1 to n do writeln(i);
writeln('Ingin Mengulang Lagi (Y/T) : ');
pil := readkey;
if upcase(pil)='Y' then goto awal
else goto akhir;akhir:
end.
 











Program Tampilan;
uses wincrt;
label awal, akhir;
var
i,n : integer;
pil : char;
Begin
awal:
clrscr;
write('Input Banyaknya Pengulangan  : ');readln(n);
i:=1;
while i <= n do
begin
writeln(i);
i:=i+1;
end;
writeln('Ingin Mengulang Lagi (Y/T) : ');
pil := readkey;
if upcase(pil)='Y' then goto awal
else goto akhir;akhir:
end.












Program Tampilan;
uses wincrt;
label awal, akhir;
var
i,n : integer;
pil : char;
Begin
awal:
clrscr;
write('Input Banyaknya Pengulangan  : ');readln(n);
i:=0;
repeat
inc(i);
writeln(i);
until i=n;

writeln('Ingin Mengulang Lagi (Y/T) : ');
pil := readkey;
if upcase(pil)='Y' then goto awal
else goto akhir;akhir:
end.
 











Program coba_for;
uses wincrt;
var i, j : integer;
begin
clrscr;
i:=5;
repeat
for j:=i to 5 do
if (i=2) and (j=3) then write('$')
else write('*');
dec(i);
writeln;
until i <1;;readln;
end.













program array_satu;
uses WinCrt;
var i: integer;
x: array[1..5] of integer;
begin
clrscr;
for i:=1 to 5 do
begin
write('Masukkan Data Ke-',i,' = ');
readln(x[i]);
end;
clrscr;
writeln('Data Keseluruhan Adalah : ');
for i:=1 to 5 do
begin
writeln('Data Ke-',i,' = ',x[i]);
end;
readln;
end.


 








program array_2_dimensi;
uses WinCrt;
var
Matrik : array[1..3,1..2] of string;
I, J : integer;
begin
clrscr;
Matrik[1,1] := 'A';
Matrik[2,1] := 'STMIK';
Matrik[3,1] := 'KSHF';
Matrik[1,2] := 'HH';
Matrik[2,2] := 'COBA';
Matrik[3,2] := 'SSS';
for I := 1 to 3 do
begin
for J := 1 to 2 do
write(Matrik[I,J]:8);
writeln;
end;
readln;
end.












program penampil_hari;
uses wincrt;
var
hari: array[1..7] of string;
i :integer;
begin
clrscr;
hari [1] :='senin';
hari [2] :='selasa';
hari [3] :='rabu';
hari [4] :='kamis';
hari [5] :='jumat';
hari [6] :='sabtu';
hari [7] :='minggu';
for i :=1 to 7 do
begin                     

write(hari[i]);
writeln;
end;
readln;
end.
 
















Program coba_procedure;
uses wincrt;
var x,y,z : integer;
procedure kali(var a,b,hasil : integer);
begin
write('Input A : ');readln(a);
write('Input B : ');readln(b);
hasil :=a*b;
end;
begin
clrscr;
kali(x,y,z);
writeln('Hasil ',x,'*',y,' adalah ',z);
readkey;
end.










Program coba_procedure;
uses wincrt;
var x,y,z : integer;
procedure kali(var a,b:integer; var hasil : integer);
begin
hasil :=a*b;
end;
begin
clrscr;
for x:=2 to 3 do
for y:=1 to 10 do
begin
kali(x,y,z);
writeln(x, '*',y,'=',z);
end;
writeln;
readkey;
end
 


















Program coba_procedure;
uses wincrt;
var x,y,z : integer;
procedure kali(var a,b:integer; var hasil : integer);
begin
hasil :=a*b;
end;
begin
clrscr;
for x:=13 to 14 do
for y:=10 downto 1 do
begin
kali(x,y,z);
writeln(x, '*',y,'=',z);
end;
writeln;
readkey;
end.




















Program coba_procedure;
uses wincrt;
var x,y,z : integer;
procedure kali(var a,b:integer; var hasil : integer);
begin
hasil :=a*b;
end;
begin
clrscr;
x:=13;
repeat
y:=10;
while y>=1 do
begin
kali(x,y,z);
writeln(x, '*',y,'=',z);
dec(y);
end;
writeln;
inc(x);
until x>14;
readkey;
end.
 






















uses wincrt;
var i, j, k, l, m, n :integer;
begin
clrscr;
k:=10;m:=1;
for i:=10 downto 1 do
begin
n :=1;gotoxy(k,m);
for j:=i to 10 do
begin
if n=m then
begin
for n:=m downto 1 do
write(n);
end else
begin
write(n);inc(n);
end;end;
dec(k);inc(m);
end;readkey;
end.
















program login;
uses wincrt;
label x, y;
var user, pass : string;
c : char;
i, j : integer;
procedure bingkai;
begin
for j := 10 to 40 do
begin
gotoxy (j, 2);
write('#');
end;
for j := 10 to 40 do
begin
gotoxy (j, 7);
write('#');
end;
for j := 3 to 7 do
begin
gotoxy (10, j);
write('#');
end;
for j := 3 to 7 do
begin
gotoxy (40, j);
write('#');
end;
gotoxy (15, 4);
write('User      : ');
gotoxy (15, 5);
write('Password  : ');
end;
procedure cek_user;
begin
i := 1;
user :='';
gotoxy (26, 4);
repeat
c := readkey;
if (c = #08) and (length(user)<=11) then
begin
if i > 1 then
begin
delete (user, length(user), 1);
gotoxy (25 + i, 4);
write (c);
write (#32);
write (c);
dec (i);
end
end else
if ((c<>#13) and (c<>#08)) and (length (user) < 11) then
begin
user := user + c;
gotoxy (25 + i, 4);
write (c);
inc (i);
end;
until c = #13;
end;
procedure cek_pass;
begin
i := 1;
pass :='';
gotoxy (26, 4);
repeat
c := readkey;
if (c = #08) and (length(pass)<=11) then
begin
if i > 1 then
begin
delete (pass, length(pass), 1);
gotoxy (25 + i, 5);
write (c);
write (#32);
write (c);
dec (i);
end
end else
if ((c<>#13) and (c<>#08)) and (length (pass) < 11) then
begin
pass := pass + c;
gotoxy (25 + i, 5);
write ('*');
inc (i);
end;
until c = #13;
end;
procedure cek_login;
begin
if ( user ='admin') and (pass ='admin') then
begin
gotoxy (10, 10);
write ('LOGIN SUKSES');
end
else
begin
gotoxy (10, 10);
write ('LOGIN GAGAL');
end;
end;
begin
x :
clrscr;
bingkai;
cek_user;
cek_pass;
cek_login;
gotoxy (10, 12);
write ('Apakah ingin mengulag lagi (y/t) : ');
c := readkey;
if upcase (c)='Y' then goto x
else goto y;
y :
end.
 


















uses wincrt;
var i, j, k, l, m, n,z :integer;
begin
clrscr;
k:=1;m:=1;z:=5;
for i:=1 to 5 do
begin
n :=1;
gotoxy(k,m); for j:=i to 5 do
begin
if n=z then
begin
for n:=z downto 1 do
write(n);
end else
begin
write(n);
inc(n);
end;end;
inc(k);inc(m);dec(z);end;readkey;end.

















uses wincrt;
var
i,j: integer;
Begin
clrscr;
j:=25;
for i:=1 to 25 do
begin
gotoxy(20,i);write(i);
gotoxy(40,i);write(j);
gotoxy(60,i);write(i);
dec(j)
end;
end.