PENGERTIAN DASAR LOGIKA DAN ALGORITMA
PENGERTIAN DASAR
LOGIKA
Diperkenalkan pertama kali oleh Aristoteles (384-322 SM)
Diperkenalkan pertama kali oleh Aristoteles (384-322 SM)
ALGORITMA
Diperkenalkan Oleh Ahli Matematika : Abu Ja’far Muhammad Ibnu Musa Al Khawarizmi. Seorang ilmuan Persia yang menulis kitab al jabr w’al muqabala (rules of restoration and reduction) sekitar tahun 825 M
Diperkenalkan Oleh Ahli Matematika : Abu Ja’far Muhammad Ibnu Musa Al Khawarizmi. Seorang ilmuan Persia yang menulis kitab al jabr w’al muqabala (rules of restoration and reduction) sekitar tahun 825 M
Definisi Logika
1. penalaran atau bentuk pemikiran.
2. ilmu yang memberikan prinsip-prinsip yang harus diikuti agar dapat berfikir valid menurut aturan yang berlaku.
1. penalaran atau bentuk pemikiran.
2. ilmu yang memberikan prinsip-prinsip yang harus diikuti agar dapat berfikir valid menurut aturan yang berlaku.
Definisi Algoritma
1. Langkah – langkah yang dilakukan agar solusi masalah dapat diperoleh.
2. Suatu prosedur yang merupakan urutan langkah-langkah yg berintegrasi.
3. Suatu m etode khusus yang digunakan untuk menyelesaikan suatu masalah yang nyata.(Webster Dictionary)
TAHAP PENYELESAIAN MASALAH
1. Langkah – langkah yang dilakukan agar solusi masalah dapat diperoleh.
2. Suatu prosedur yang merupakan urutan langkah-langkah yg berintegrasi.
3. Suatu m etode khusus yang digunakan untuk menyelesaikan suatu masalah yang nyata.(Webster Dictionary)
TAHAP PENYELESAIAN MASALAH
Kriteria Pemilihan Algoritma.
1. Ada Output,
2. Efektifitas dan Efesiensi,
3. Jumlah Langkahnya Berhingga,
4. Berakhir, ( SEMI ALGORITMA )
5. Terstruktur,
2. Efektifitas dan Efesiensi,
3. Jumlah Langkahnya Berhingga,
4. Berakhir, ( SEMI ALGORITMA )
5. Terstruktur,
Suatu Algoritma yg terbaik (The Best) : “ Suatu algoritma harus menghasilkan output yg tepat guna (efektif) dlm waktu yg relatif singkat & penggunaan memori yg relatif sedikit (efesien) dgn langkah yg berhingga & prosedurnya berakhir baik dlm keadaan dip’oleh suatu solusi ataupun tdk ada solusinya. “
Contoh :
Sebuah prosedur ketika akan mengirim kan surat kepada teman:
1. Tulis surat pada secarik kertas surat
2. Ambil sampul surat atau amplop
3. Masukkan surat ke dalam amplop
4. Tutup amplop surat dengan lem perekat
5. Tulis alamat surat yg dituju, jika tdk ingat, lebih dahulu ambil buku alamat & cari alamat yg dituju, lalu tulis alamat tsb pd amplop surat.
6. Tempelkan perangko pada am plop surat
7. Bawa surat ke kantor pos utk diserahkan pd pegawai pos atau menuju ke bis surat untuk memasukkan surat ke dlm kotak/bis surat.
Sebuah prosedur ketika akan mengirim kan surat kepada teman:
1. Tulis surat pada secarik kertas surat
2. Ambil sampul surat atau amplop
3. Masukkan surat ke dalam amplop
4. Tutup amplop surat dengan lem perekat
5. Tulis alamat surat yg dituju, jika tdk ingat, lebih dahulu ambil buku alamat & cari alamat yg dituju, lalu tulis alamat tsb pd amplop surat.
6. Tempelkan perangko pada am plop surat
7. Bawa surat ke kantor pos utk diserahkan pd pegawai pos atau menuju ke bis surat untuk memasukkan surat ke dlm kotak/bis surat.
Sebuah prosedur untuk masalah menentukan akar kuadrat dari suatu bilangan Bulat Positif yg di Input :
Baca bilangan Bulat Positif yg diinput, sebut saja sebagai A
1. Dinyatakan Nilai B adalah 0
2. Hitung Nilai C yg berisikan Nilai B dikalikan Nilai B
3. Jika Nilai C sama dengan Nilai A, maka Nilai B adalah Akar dari Nilai A, lalu stop.
4. Jika tidak, maka Nilai B akan bertambah 1
5. Kembali ke langkah pada No. 3
Baca bilangan Bulat Positif yg diinput, sebut saja sebagai A
1. Dinyatakan Nilai B adalah 0
2. Hitung Nilai C yg berisikan Nilai B dikalikan Nilai B
3. Jika Nilai C sama dengan Nilai A, maka Nilai B adalah Akar dari Nilai A, lalu stop.
4. Jika tidak, maka Nilai B akan bertambah 1
5. Kembali ke langkah pada No. 3
TAHAPAN ANALISA ALGORITMA
1. Bagaimana merencanakan suatu algoritma.
2. Bagaimana menyatakan suatu algoritma
1. Bagaimana merencanakan suatu algoritma.
2. Bagaimana menyatakan suatu algoritma
a. Dengan bahasa semu (pseudocode).
Contoh :
Untuk menghitung Luas Segi tiga :
1. Masukan Nilai Alas
2. Masukan Nilai Tinggi
3. Hitung Luas =( Alas * Tinggi ) / 2
4. Cetak Luas
Contoh :
Untuk menghitung Luas Segi tiga :
1. Masukan Nilai Alas
2. Masukan Nilai Tinggi
3. Hitung Luas =( Alas * Tinggi ) / 2
4. Cetak Luas
b. Dengan diagram alur atau flowchart,
Contoh :
Contoh :
c. Dengan Statement program / penggalan
Program
Program
Contoh (menggunakan C++):
cin >> Alas ; //untuk input data
cin >> Tinggi;
Luas = (Alas * Tinggi)/2 ; // proses
cout << Luas; //untuk output data
cin >> Alas ; //untuk input data
cin >> Tinggi;
Luas = (Alas * Tinggi)/2 ; // proses
cout << Luas; //untuk output data
3. Bagaimana validitas suatu algoritma.
4. Bagaimana Menganalisa suatu Algoritma.
5. Bagaimana Menguji Program dari suatu Algoritma.
4. Bagaimana Menganalisa suatu Algoritma.
5. Bagaimana Menguji Program dari suatu Algoritma.
Tahap Proses uji Algoritma :
a. Fase Debugging
yaitu fase dari proses program eksekusi yang akan melakukan koreksi terhadap kesalahan.
b. Fase Profilling
yaitu fase yang akan bekerja jika program tersebut sudah benar (telah melewati fase debugging).
a. Fase Debugging
yaitu fase dari proses program eksekusi yang akan melakukan koreksi terhadap kesalahan.
b. Fase Profilling
yaitu fase yang akan bekerja jika program tersebut sudah benar (telah melewati fase debugging).
Analisis Suatu Algoritma
(Untuk melihat faktor efesiensi & efektifitas dari algoritma tersebut), Dapat dilakukan terhadap suatu algoritma dengan melihat pada :
(Untuk melihat faktor efesiensi & efektifitas dari algoritma tersebut), Dapat dilakukan terhadap suatu algoritma dengan melihat pada :
a. Waktu Tempuh (Running Time) dr suatu Algortima.
Hal-hal yg dpt m empengaruhi drpd waktu tempuh adalah :
1. Banyaknya langkah.
2. Besar dan jenis input data.
3. Jenis Operasi.
4. Komputer dan kompilator
Hal-hal yg dpt m empengaruhi drpd waktu tempuh adalah :
1. Banyaknya langkah.
2. Besar dan jenis input data.
3. Jenis Operasi.
4. Komputer dan kompilator
b. Jumlah Memori Yang Digunakan.
Sifat – Sifat Algoritma
• Banyaknya Langkah Instruksi Harus Berhingga,
• Langkah atau Instruksi harus Jelas,
• Proses harus Jelas dan mempunyai batasan,
• Input dan Output harus mempunyai Batasan,
• Efektifitas,
• Adanya Batasan Ruang Lingkup,
• Langkah atau Instruksi harus Jelas,
• Proses harus Jelas dan mempunyai batasan,
• Input dan Output harus mempunyai Batasan,
• Efektifitas,
• Adanya Batasan Ruang Lingkup,
4.1
Menggunakan
Fungsi - Fungsi Perintah (COMMAND).
CMD (Command Promt atau CMD) juga bisa digunakan untuk mengping jaringan, sehingga Anda bisa mengetahui ip address perangkat yang di ping dan mengetahui informasi yang ada pada jaringan tersebut. Masih banyak lagi hal - hal yang bisa dikerjakan oleh CMD maka dari itu pada kesempatan ini saya akan bagikan kode - kode CMD berikut fungsinya, namun sebelum itu kita akan membahas apa itu CMD ?
Pengertian CMD (Command Prompt)
CMD adalah singkatan Command Prompt yaitu sebuah command line interfaces (baris perintah) pada sistem operasi windows yang digunakan untuk mengeksekusi file dengan cara memasukan perintah-perintah menggunakan keyboard melalui jendela cmd. Untuk membuka Command Prompt di Windows dapat dilakukan dengan cara :
1. Klik Start => Run => ketikan "cmd" (tanpa tanda kutip) => ENTER
2. Tekan tombol berlambang Windows + R ketikan "cmd" (tanpa tanda kutip) => ENTER
Fungsi CMD (Command Prompt)
CMD (Command Prompt) yang ada pada sistem operasi windows mempunyai banyak fungsi, berikut ini adalah beberapa fungsi dari CMD (Command Prompt) di windows :
- Dapat mengatasi masalah saat GUI (Grafik User Interface) pada Windows mengalami masalah yang diakibatkan oleh virus seperti hilangnya folder options pada explorer, task manager yang di-disable, tidak bisa membuka msconfig dan sebagainya.
- "Prompt" mempunyai arti cepat, jadi CMD bisa mengeksekusi perintah dengan cepat seperti melakukan perintah masuk pada direktori tertentu, atau mencari file tertentu.
- Fungsi dari CMD (Command Prompt) dapat membiasakan kita menggunakan command line (baris perintah) agar nantinya terbiasa dengan server core yang menggunakan OS berbasis text.
Secara umum fungsi dari CMD adalah untuk mengeksekusi file dengan menggunakan perintah di keyboard. Misal kita ingin menampilkan file yang di hidden virus kita menggunakan attrib, untuk menghapus file kita menggunakan peritah del dan lain sebagainya. Selanjutnya kita akan membahas perintah - perintah yang ada pada CMD berikut fungsinya.
Perintah dan fungsi CMD (Command Prompt)
Ada banyak perintah yang dimiliki oleh CMD yang dapat digunakan untuk mengeksekusi file atau menjalankan program. Berikut ini adalah perintah dan fungsi CMD (Command Pormp) yang saya urutkan sesuai abjad, silahkan disimak :
[A]
- ADDUSERS = Berfungsi untuk memasukkan atau menambah user dari atau ke file CSV.
- ARP = Address Resolution Protocol.
- ASSOC Change = Untuk mengubah file extension associations.
- ASSOCIAT = salah satu langkah untuk asosiasi file.
- AT Schedule = Perintah untuk membuat shedule program atau menjadwalkan perintah yang akan dijalankan lain waktu.
- ATTRIB = Berfungsi untuk mengganti atribut file.
[B]
- BOOTCFG = Digunakan untuk mengedit boot setting windows.
- BROWSTAT = Digunakan untuk mencari informasi domain, browser dan PDC (Primary Domain Controller).
[C]
- CACLS = Digunakan untuk mengganti atau merubah file permissions.
- CALL = Digunakan untuk memanggil sebuah program batch.
- CD = Digunakan untuk pindah menuju folder tertentu.
- CHANGE = Digunakan untuk merubah properties pada terminal server.
- CHKDSK = Digunakan untuk memeriksa dan memperbaiki file system komputer.
- CHKNTFS = Digunakan untuk memeriksa NTFS file system komputer.
- CHOICE = Untuk menerima input keyboard ke dalam sebuah batch file.
- CIPHER = Encrypt-Decrypt files/folders
- CleanMgr = Digunakan untuk membersihkan temporary files dan recycle bin secara otomatis.
- CLEARMEM = Digunakan untuk membersihkan memory komputer.
- CLIP = Untuk meng-copy STDIN (standart input) ke Windows clipboard.
- CLS = Perintah Untuk membersihkan layar CMD.
- CLUSTER = Windows Clustering
- CMD = Perintah untuk membuka layar CMD (Command Prompt).
- COLOR = Perintah untuk mengganti warna pada layar CMD.
- COMP = Digunakan untuk membandingkan isi dari 2 atau lebih file.
- COMPACT = Digunakan untuk mengompres file atau folder dalam partisi NTFS.
- COMPRESS = Digunakan untuk mengompres file individu di dalam partisi NTFS.
- CON2PRT = Connect atau disconnect sebuah Printer.
- CONVERT = Convert FAT drive menjadi NTFS.
- COPY = Perintah untuk mengcopy satu atau lebih file ke lokasi tertentu.
- CSVDE = Import/Export Active Directory data.
[D]
- DATE = Digunakan untuk menampilkan atau mengatur tanggal.
- Dcomcnfg = DCOM Configuration Utility.
- DEFRAG = Defragment hard drive.
- DEL = Menghapus 1 atau lebih file.
- DELTREE = Menghapus sebuah folder beserta subfolder.
- DevCon = Device Manager Command Line Utility.
- DIR = Untuk menampilkan daftar file/folder dari sebuah drive.
- DIRUSE = Untuk menampilkan disk usage/kapasitas disk.
- DISKCOMP = Digunakan untuk membandingkan isi dari 2 buah floppy disk.
- DISKCOPY = Digunanakan untuk mengcopy isi dari sebuah floppy disk ke floppy disk lainnya.
- DNSSTAT = DNS Statistics.
- DOSKEY = Untuk mengedit command line, commands dan create macros.
- DSADD = Digunakan untuk menambah user (computer, group..) ke dalam active directory.
- DSQUERY = Digunakan untuk menambah item ke dalam active directory.
- DSMOD = Digunakan untuk memodifikasi user (computer, group..) di dalam active directory.
[E]
- ECHO = Berfungsi untuk menampilkan message pada monitor.
- ERASE = Berfungsi untuk menghapus satu atau lebih file.
- EXIT = Digunakan untuk keluar dari window CMD.
- EXPAND = Uncompress file.
- EXTRACT = Uncompress CAB files.
[F]
- FC = Digunakana untuk membandingkan 2 buah file.
- FDISK = Digunakan untuk memformat dan partisi (Disk Format dan partition).
- FIND = Digunakan untuk mencari sebuah text string di dalam sebuah file.
- FINDSTR = Untuk mencari strings di dalam files.
- FOR /F = Digunakan untuk perulangan file sekaligus (Loop command).
- FOR = Loop command: all options Files, Directory, List.
- FORFILES = Batch process multiple files.
- FORMAT = Berfungsi memformat sebuah disk komputer.
- FREEDISK = Untuk menampilkan free disk space (dalam bytes) / melihat ruang kosong pada disk komputer.
- FSUTIL = File and Volume utilities.
- FTP = File Transfer Protocol.
- FTYPE = Digunakan untuk menampilkan atau mengubah file types yg digunakan dalam file extension.
[G]
- GLOBAL = Digunakan untuk menampilkan daftar anggota dalam global groups.
- GOTO = Digunakan untuk mengarahkan sebuah program batch untuk melompat ke labelled line.
[H]
- HELP = Berfungsi untuk bantuan (Online Help).
- HFNETCHK = Network Security Hotfix Checker.
[I]
- IF = Conditionally perform a command (perintah bersyarat).
- IPCONFIG = Configure IP.
[K]
- KILL = Digunakan untuk menghapus program dari memory.
[L]
- LABEL = Digunakan untuk memberi atau mengubah label disk komputer.
- LOCAL = Digunakan untuk menampilkan daftar anggota local groups.
- LOGEVENT = Digunakan untuk menulis text ke dalam NT event viewer.
- LOGOFF = Digunakan untuk keluar dari system atau mengeluarkan user dari system.
- LOGTIME = Digunakan untuk mencatat tanggal dan waktu dalam sebuah file.
[M]
- MAPISEND = Digunakan untuk mengirim e-mail dari command line.
- MEM = Untuk menampilkan memory usage.
- MD = Digunakan untuk membuat folder baru.
- MODE = Configure a system device.
- MOUNTVOL = Digunakan untuk mengatur Mount point dalam sebuah volume.
- MOVE = Untuk memindahkan file dari sebuah folder ke folder lain.
- MOVEUSER = Digunakan untuk memindahkan user dari sebuah domain ke domain lain.
- MSG = Digunakan untuk mengirim message.
- MSIEXEC = Microsoft Windows Installer.
- MSINFO = Windows NT diagnostics.
- MSTSC = Terminal Server Connection (Remote Desktop Protocol).
- MUNGE = Digunakan untuk mencari dan menganti text di dalam sebuah file (find & replace) .
- MV = Digunakan untuk mengcopy file yang sedang digunakan.
[N]
- NET = Digunakan untuk mengatur network resources.
- NETDOM = Domain Manager.
- NETSH = Configure network protocols.
- NETSVC = Command-line Service Controller.
- NBTSTAT = Berfungsi untuk menampilkan networking statistics (NetBIOS over TCP/IP).
- NETSTAT = Berfungsi untuk menampilkan networking statistics (TCP/IP).
- NOW = Berfungsi menampilkan current Date and Time.
- NSLOOKUP = Name server lookup.
- NTBACKUP = Digunakan untuk membackup folders.
- NTRIGHTS = Digunakan untuk mengedit user account rights (wilayah akses yg diizinkan oleh admin).
[P]
- PATH = Digunakan untuk menampilkan atau mengatur search path untuk executable files.
- PATHPING = Melacak route plus network latency dan packet loss.
- PAUSE = Menahan proses sebuah batch file and menampilkan message
- PERMS = Menampilkan permissions (wilayah akses) user
- PERFMON = Performance Monitor
- PING = Menguji (test) network connection
- POPD = Restore previous value dari sebuah directory yang di-save oleh PUSHD
- PORTQRY = Menampilkan status ports dan service
- PRINT = Print text file
- PRNCNFG = Menampilkan, mengatur, atau mengubah nama printer
- PRNMNGR = Menampilkan, menghapus, atau menambah daftar printer; set default printer
- PROMPT = Mengubah command prompt
- PsExec = Menjalankan proses jarak jauh (remote)
- PsFile = Menunjukkan file2 yang dibuka dari jarak jauh
- PsGetSid = Menampilkan SID sebuah computer atau user
- PsInfo = Menampilkan informasi dari sebuah system
- PsKill = Menghentikan proses melalui process ID
- PsList = Menampilkan detail informasi dari sebuah proses
- PsLoggedOn = Who’s logged on (mengecek secara lokal atau melalui resource sharing)
- PsLogList = Event log records
- PsPasswd = Mengubah account password
- PsService = Menampilkan dan mengubah services
- PsShutdown = Shutdown atau reboot computer
- PsSuspend = Suspend/menahan proces
- PUSHD = Menyimpan/Save dan mengganti current directory
- QGREP = Mencari kata/kalimat di dalam file yg sesuai dgn pola/line yg ditentukan.
[R]
- RASDIAL = Mengatur atau mengelola RAS connections.
- RASPHONE = Mengatur atau mengelola RAS connections.
- RECOVER = Digunakan untuk memulihkan atau recover damaged file dari sebuah disk defective (rusak).
- REG = Berfungsi untuk membaca, mengatur, atau menghapus registry keys dan values.
- REGEDIT = Berfungsi untuk mengimport atau mengeksport registry settings.
- REGSVR32 = Register/unregister file DLL atau ocx.
- REGINI = Digunakan untuk mengubah Registry Permissions.
- REM = Digunakan untuk merekam/mencatat comments (remarks) di dalam sebuah batch file.
- REN = Berfungsi untuk merubah nama file.
- REPLACE = Berfungsi untuk mengganti atau meng-update sebuah file dengan file line.
- RD = Berfungsi untuk mendelete folder.
- RDISK = Create Recovery Disk.
- RMTSHARE = Digunakan untuk share folder atau printer.
- ROUTE = Digunakan untuk memanipulasi network routing tables.
- RUNAS = Untuk menjalankan sebuah program dgn menggunakan user account lain.
- RUNDLL32 = Untuk menjalankan sebuah DLL command (add/remove print connections).
[S]
- SC = Service Control digunkaan untuk mengotrol service pada komputer.
- SCHTASKS = Create or Edit Scheduled Tasks.
- SCLIST = Display NT Services.
- ScriptIt = Control GUI applications.
- SET = Display, set, atau remove environment variables.
- SETX = Set environment variables secara permanent.
- SHARE = Digunakan untuk mendaftar atau edit sebuah file share atau print share.
- SHORTCUT = Create windows shortcut (.LNK file) .
- SHOWGRPS = Digunakan untuk menampilkan daftar NT Workgroups atau user yang telah joined.
- SHOWMBRS = Digunakan untuk menampilkan daftar Users yg merupakan member dari sebuah Workgroup.
- SHUTDOWN = Shutdown computer digunakan untuk mematikan komputer.
- SLEEP = Digunakan untuk mode menunggu selama beberapa saat pada komputer.
- SOON = Menjadwal(schedule) sebuah command untuk beberapa waktu kemudian.
- SORT = Sort input
- START = Digunakan untuk membuka sebuah window baru, untuk menjalankan program atau command tertentu.
- SU = Switch User.
- SUBINACL = Edit file & folder Permissions, Ownership serta Domain.
- SUBST : Associate jalan dengan huruf drive.
- SYSTEMINFO = Menampilkan daftar system configuration.
[T]
- TASKLIST = Berfungsi menampilkan daftar aplikasi dan service yang sedang berjalan di windows.
- TIME = Digunakan untuk menampilkan atau mengubah waktu pada system.
- TIMEOUT = Digunakan untuk memproses delay processing sebuah batch file.
- TITLE = Berfungsi untuk mengatur judul window untuk sebuah session CMD.EXE .
- TOUCH = Digunakan untuk merubah timestamps sebuah file.
- TRACERT = Berfungsi untuk melacak route ke sebuah remote host.
- TREE = Digunakan untuk mengatur tampilan grafis dari struktur folder.
- TYPE = Berfungsi untuk menampilkan isi dari sebuah text file.
[U]
- USRSTAT = Untuk menampilkan daftar domain usernames dan last login.
[V]
- VER = Digunakan untuk menampilkan version information.
- VERIFY = Untuk memeriksa apakah files telah ter-save.
- VOL = Berfungsi untuk menampilkan disk label.
[W]
- WHERE = Berfungsi mencari dan menampilkan files di dalam sebuah directory tree (susunan folder).
- WHOAMI = Untuk menampilkan current UserName dan current domain.
- WINDIFF = Digunakan untuk membandingkan isi dari dua atau lebih file.
- WINMSD = Windows system diagnostics.
- WINMSDP = Windows system diagnostics II.
- WMIC = WMI Commands.
[X]
- XCACLS = Digunakan untuk mengubah file permissions (hak akses user).
- XCOPY = Berfungsi untuk mencopy files atau folder.
Contoh Penggunaan kode CMD (Command Prompt)
Sebagai contoh disini kita akan menampilkan file yang disembuyikan virus pada flashdisk, nah cara ini berguna bagi Anda yang kebingungan karena file - file yang ada di flashdisk menghilang, padahal jika dilihat kapsitas flashdisk kita tidak kosong alias terisi namun filenya gak ada.
- Colokan flasdisk di komputer atau laptop
- Jika falshdisk terdeteksi di G maka di CMD ketikan G:
- Selanjutnya ketikan perintah : attrib -s -h -r *.* /s /d Kemudian tekan enter.
- attrib adalah membuka suatu perintah pada cmd
- -s adalah perintah menghilangkan attribut pada system file
- -h adalah perintah untuk menghilangkan attribut pada hidden file (File yang tersembunyi)
- -r adalah perintah untuk menghilangkan attribut pada Read Only File(File yang hanya bisa dibaca)
- *.* adalah ekstensi untuk semua file (.mp4.mp3.jpg.png,dll)
- /s adalah sub directory
- /d adalah directory
Materi menerapkan logika dan algoritma pemrograman komputer ini sangat menarik. Jika ada kelanjutannya akan saya tunggu..terimakasih
BalasHapusmohon maaf, seperti nya tidak nyambung antara KD 3.1 dengan 4.1 , bukankah 4.1 belajar tentang membuat program sederhana, bisa menggunakan HP dengan aplikasi CPPdroid.
BalasHapus