Blog yang menyediakan pelajaran, source code, dan artikel-artikel seputar pemrograman dan komputer.

Wednesday, May 16, 2012

Segitiga Huruf A ABA ABCBA ABCDCBA in C++

3:34 AM Posted by Vyn 1 comment
Well, pembaca blog VynProgram yang cerdas-cerdas. Kali ini Author akan mencoba membahas program untuk menampilkan segitiga huruf sebanyak N baris. Sebagai contoh, jika user input 5, maka akan ditampil:
Photobucket
pada program ini, kita menggunakan fungsi untuk mengubah tipe data integer menjadi character.  syntax-nya:
(char) angka
berikut codenya:

pada baris:
{char huruf = (char) j + 64;cout<<huruf;}
dimaksudkan untuk mengubah angka j+46 menjadi huruf dalam character ASCII. huruf A di dalam karakter urutan karakter ASCII ada pada decimal 65. Lebih jelas bisa dilihat pada:
http://www.asciitable.com/

happy coding :)

Tuesday, May 15, 2012

sekilas HTML 5

8:15 AM Posted by Vyn , No comments
HTML5 merupakan hasil proyek dari   W3C (World Wide Web Consortium) dan WHATWG (Web Hypertext Application Technology Working Group). WHATWG bekerja dengan bentuk situs dan aplikasi, sedangkan W3C merupakan pengembang dari XHTM L 2.0 pada tahun 2006, kemudian mereka memutuskan untuk bekerja sama dan membentuk versi baru dari HTML.

Meskipun HTML5 telah dikenal luas oleh para pengembang web sejak lama, HTML5 baru mencuat pada April 2010 setelah CEO Apple Inc., Steve Jobs, mengatakan bahwa dengan pengembangan HTML5, "Adobe Flash sudah tidak dibutuhkan lagi untuk menyaksikan video atau menyaksikan konten apapun di web".


Tujuan dibuatnya HTML5 antara lain:


  1. Fitur baru harus didasarkan pada HTML, CSS, DOM , dan JavaScript. 
  2. Mengurangi kebutuhan untuk plugin eksternal (seperti Flash).
  3. Penanganan kesalahan yang lebih baik.
  4. Lebih banyak markup untuk menggantikan scripting.
  5. HTML5 merupakan perangkat mandiri.
Fitur baru dalam HTML5:

  • Unsur kanvas untuk menggambar.
  • Video dan elemen audio untuk media pemutaran.
  • Dukungan yang lebih baik untuk penyimpanan secara offline.
  • Elemen  konten yang  lebih  spesifik, seperti  artikel, footer, header,
    navigation, section.
  • Bentuk kontrol form seperti kalender, tanggal, waktu, e-mail, URL, search.

Beberapa kelebihan yang dijanjikan pada HTML5:

  • Dapat ditulis dalam sintaks HTML (dengan tipe media text/HTML) danXML.
  • Integrasi yang lebih baik dengan aplikasi situs dan pemrosesannya.
  • Integrasi ('inline') dengan doctype yang lebih sederhana.
  • Penulisan kode yang lebih efisien.
  • Konten yang ada di situs lebih mudah terindeks oleh search engine. 
Saat ini HTML5 masih dalam pengembangan, namun hanya beberapa browser sudah mendukung HTML5. Beberapa browser tersebut seperti Safari, Chrome, Firefox, dan Opera. Kabarnya IE9 (Internet Explorer) akan mendukung beberapa fitur dari HTML5.

Mari belajar HTML5 dan CSS3 bersama :)
 

Sumber:  http://jeanotnahasan.blogspot.com/2012/02/pengertian-tujuan-fitur-baru-dan.html

Tuesday, April 17, 2012

4 – kontrol program

10:07 AM Posted by Vyn , No comments
Photobucket
Pelajaran kali ini akan membahas:
  • Statement if
    • if ... then ... else
    • if bersarang
  • Perulangan Repeat – Until
  • Perulangan For
    • for bersarang
  • Perulangan While – do
Sekarang, saatnya mempelajari hal yang paling penting di dalam pemrograman: statement if (pembuat keputusan), perulangan for dan perulangan repeat – until. Tiga hal umum inilah yang biasanya mmembangun sebuah program di semua bahasa pemrograman, dan anda harus memastikan bahwa setelah anda mempelajari bagian ini, anda sudah cukup mempraktikannya berulang-ulang sebelum melanjutkan ke pelajaran berikutnya karena bagian ini adalah yang paling penting. Jika anda masih tidak yakin dengan pemahaman anda, cobalah pergi ke forum-forum untuk mencari jawaban atas masalah anda.

Statement if
statement if mengeksekusi sebuah pengkondisian. Maksudnya adalah jika sebuah aksi bernilai true, maka instruksi-instruksi yang ada di dalam badan if akan dieksekusi, jika tidak maka instruksi-instruksi akan dilewatkan saja. Untuk lebih jelasnya perhatikan yang dibawah ini:

if ini terjadi (aksi), then lakukan ini (reaksi, jika kondisi bernilai true/ benar).

Atau:

if ini terjadi  (aksi), then lakukan ini (reaksi, jika kondisi true/ benar), else lakukan yang ini (reaksi, jika kondisi false/ salah).

di dalam pascal, 'statement if' harus ditulis seperti berikut:

If ekspresi kondisional then kode ..... ; {jika satu aksi}

Atau:

If ekspresi kondisional then Begin instruksi-instruksi ... end; (jika ada lebih dari satu aksi)

Sebagai catatan bahwa anda tidak boleh menggunakan operator assignment ('=') di dalam ekspresi kondisional, jika iya maka compiler akan menampilkan pesan error. Contoh:

Salah:
If
x := 20 then x := x + 1; {karakter yang digarisbawahi adalah yang salah.}

Benar:
If
x = 20 then x:= x + 1; {tanda sama dengan hanya dipakai pada kondisi}

Program dibawah ini adalah contoh bagaimana statement if bekerja:

  1. Program lesson4_Program1;
  2. Uses  Crt;
  3. Label 1{digunakan bersama statement goto}
  4. Var Sel: String;
  5.     N1,N2, Total : Real;
  6.     YN : Char{variabel dengan tipe karakter,
  7.                  yang HANYA akan menampung satu huruf/angka saja}
  8. Begin
  9.  1:Clrscr;
  10. Total := 0{biasakan untuk menginisialisasi variabel integer / real}
  11. GotoXy(4,3);
  12.  Writeln('1.Penjumlahan');
  13. GotoXy(4,4);
  14.  Writeln('2.Pengurangan');
  15. GotoXy(4,5);
  16.  Writeln('3.Exit');
  17. GotoXy(6,8);
  18.  Write('Pilih: ');
  19. Sel := Readkey;
  20.  If Sel = '1' {aksi} then
  21.   Begin  {lebih dari satu aksi}
  22.    ClrScr;              
  23.    Write('Input No.1:');
  24.    Readln(N1);          
  25.    Write('Input No.2:');
  26.    Readln(N2);          
  27.    Total := N1 + N2;   
  28.    Writeln('Penjumlahan: ',N1:2:3,' + ',N2:2:3,' = ',Total:2:3);
  29.    Write('Tekan tombol mana saja untuk melanjutkan...');
  30.    Readkey;
  31.    Goto 1;{ini akan membawa kembali ke awal program,
  32.            jika tidak maka program akan berhenti}
  33.   End{menutup if statement(begin)}
  34.  If Sel = '2' then
  35.   {perhatikan bahwa operator assignment
  36.    tidak digunakan di dalam statement if}
  37.   Begin
  38.    ClrScr;
  39.    Write('Input No.1:');
  40.    Readln(N1);
  41.    Write('Input No.2:');
  42.    Readln(N2);
  43.    Total := N1 - N2;
  44.    Write('Pengurangan: ');
  45.    Write(N1:2:3,' - ',N2:2:3,' = ',Total:2:3);
  46.    Write('Tekan tombol mana saja untuk melanjutkan...');
  47.    Readkey;
  48.    Goto 1;
  49.   End{Menutup if statement}
  50.  If Sel = '3' then
  51.   Begin
  52.    ClrScr;
  53.    Write('Anda yakin untuk keluar?(Y/N)');
  54.    YN := Readkey;
  55.    If YN = 'y' then Halt; {1 aksi jadi tidak memerlukan Begin..End}
  56.    If YN = 'n' then Goto 1; {statement goto tidak direkomendasikan
  57.                              untuk program yang kompleks}
  58.   End;
  59. End.


Pada program diatas, statement 'goto' digunakan. Sejauh ini, ini adalah sebuah kerusakan yang nyata pada program dan ini membuat kebingungan yang tak diinginkan. Saya menganjurkan anda untuk tidak menggunakannya berulang-ulang.

>>If ... Then ... Else
Di dalam statement normal, 'reaksi' tidak bisa dilakukan jika kondisi tidak bernilai true. Tapi di dalam sebuah statement if ... then ... else, setidaknya ada satu statement yang dikerjakan. Mari lihat contoh di bawah ini:

writeln('Siapa yang menjadi presiden pertama indonesia?');
readln(ans);
if (ans = 'Soekarno') then
score := score + 1 {jika benar}
ELSE
writeln('maaf, jawaban anda salah');      {jika salah}

Perhatikan bahwa 'else' termasuk di dalam statement if, sehingga tidak ada tanda semi-colon (';') sebelum else; lihat saja pada contoh di atas

>>Statement if bersarang
Program diatas sudah menunjukkan sebuah contoh statement if bersarang.
if sel = '3' then
 Begin
  
clrscr;
   write('Anda Yakin? (Y/N)');
   YN := readkey;
   if YN = 'y' then HALT; {pernyataan if bersarang}
   if YN = 'n' then goto 1; {pernyataan if bersarang yang lain}
End.

Sebuah pernyataan if bersrang ada pada form:
if (ini terjadi) then {if 1}
  if (ini terjadi) then {if 2}
    (lakukan ini) dll...
  Else (lakukan ini) {if 2}
Else (lakukan ini) dll.. {if 1}

Sebuah pernyataan if bersarang adalah pernyataan if di dalam pernyataan if yang lain seperti tulisan diatas.

Pengulangan Repeat – Until

Perulangan ini digunakan untuk mengulang-ulang eksekusi dari satu set instruksi, minimal satu kali. Set Instruksi diulangi sampai kondisi ekspresi salah. Contoh dibawah ini menunjukkan model perulangan 'repeat-until':

Repeat
... (code)
... (code)
... (code)
Until pernyataan kondisi;

berikut contohnya:


Sangat mudah kan! Dalam program di atas, ada Ekspresi Boolean di baris ke-sepuluh (or) akan dijelaskan pada pelajaran berikutnya.

Perulangan For
Perulangan for mengulang satu set instruksi sebanyak jumlah yang ditentukan. Bentuk penulisan perulangan for:

- Jika untuk satu aksi/ instruksi:
for {variable}*:={nilai awal} to/downto {nilai akhir} do
  
{code.. (untuk satu aksi)}

- Jika untuk lebih dari satu aksi
for {variable}* := {nilai awal} to/downto {nilai akhir} do begin
  
{code..}
   {code..}
End;

*
Biasanya, variabel ini disebut 'loop counter'

Sekarang, sebagai contoh dari perulangan for, diperlihatkan dibawah ini, tapi pertama kali, anda harus mengerti penggunaan for loop yang efektif. Seperti contoh dibawah ini:

Tanpa for loop:


Dengan for loop:


Perhatikan bahwa kedua program diatas menghasilkan fungsi yang sama, tapi gaya pemrograman mana yang lebih luar biasa?

- For loop bersarang

Sebuah perulangan for bersarang mirip dengan pernyataan if bersarang. Penulisan for loop bersarang:

for {loop counter} := {nilai awal} to {nilai akhir} do {Begin-if required}
{code jika banyak, perlu menggunakan begin (i.e lebih dari satu aksi)}
for {loop counter} := {nilai awal} to {nilai akhir} do {Begin-if required}
{code..jika lebih dari satu aksi, gunakan begin pada for loop kedua}
{End; – jika begin digunakan pada for loop kedua)}
     {code if any..begin should be included in the first for loop} 
{End; - if begin is included in the first for loop)}



While-Do loop
Loop tipe ini dieksekusi ketika kondisi bernilai benar. ini berbeda dari 'Repeat-Until' loop yang dieksekusi minimal satu kali. Code bekerja seperti ini:

While <kondisi benar> lakukan berikut ini:
instruksi 1;
Instruksi 2;
Instruksi 3;
dll..
End; {jika While-do loops dimulai dengan pernyataan begin}

Contoh program While-do loop:


Friday, April 6, 2012

Algoritma dan contoh program mencari KPK atau LCM (English) dalam C++

10:51 AM Posted by Vyn No comments
Photobucket

Setelah sekian lama tidak posting karena jadwal kuliah semester 4-nya mahasiswa S1 Ilmu komputer USU yang terkenal super sibuk-sibuknya. Akhirnya saya memutuskan untuk menahan rasa kantuk sedikit lagi untuk menyempatkan diri memposting sebuah artikel mengenai pemrograman.

Kali ini saya akan berbicara mengenai algoritma pencarian KPK (Kelipatan Persekutuan terKecil) atau LCM (Least Commont Multiple) dari sejumlah bilangan. Jika pencarian KPK hanya melibatkan 2 bilangan, sepertinya cukup mudah. Namun ketika jumlah bilangan yang diminta lebih dari 2, algoritmanya menjadi sedikit bertambah ribet. Baik kita ulas saja langsung ya:

KPK dari 2 bilangan:
-> input a, b
-> a1 = a, b1 = b
-> selama a != b, lakukan:
    -> selama a < b, lakukan:
         -> a = a + a1
    -> selama a > b, lakukan:
        -> b = b + b1
contoh kode:

KPK untuk lebih dari 2 bilangan (menggunakan array):
-> input banyak bilangan (n)
-> input seluruh bilangan (a[0] .... a[0-1])
-> array dengan panjang n
-> ulangi selama i < n: 
    -> x = a[i], y = a[i+1] 
    -> selama a [i]= a[i+1], lakukan:
         -> selama a[i] < a[i+1], lakukan:
              -> a[i] = a[i] + x
         -> selama a[i] > a[i+1], lakukan: 
              -> a[i+1] = a[i+1] + y
-> hasil = a[n-1]

agar lebih jelas, dalam kodenya saya perlihatkan perubahan isi dari array di setiap kali ada pengubahan.


contoh kode:


Happy programming :)

Tuesday, February 21, 2012

solusi Cartridge cannot recognized printer epson stylus t13 infus

8:40 AM Posted by Vyn 10 comments
Photobucket21 februari 2012.
Lagi asik ngeprint, tiba-tiba printer berhenti dan dilayar muncul dialog box dengan tulisan "Cartridge cannot recognized" dengan 4 tinta di layar ada tanda silangnya. Sempet puyeng juga, padahal ni printer baru dibeli, belom seminggu. Kalo ngikutin petunjuk, dibilang di sono mesti ganti cartridge baru.. yang bener aja, belum seminggu mesti beli cartridge baru, mana gak ada garansinya lagi. udah dicoba dimatiin trus diidupin lagi, tetep gak bisa.. browsing sana-sini gak ada yang saya ngerti.. udah download software resetter, tapi ternyata printer saya baru kepake 3%. gak pantes banget di reset. Akhirnya saya buka penutup printernya, trus saya tekan aja tombol resume di printer sehingga cartridge pindah ke tengah-tengah.. siap untuk dicabut. Saya yang gak ngerti apa-apa tentang printer, mencoba mencabut itu cartridge, berniat memasangnya lagi. Tapi kok keras amat yak  -_- . saya nyerah.. tapi kemudian saya peratiin,, itu cartridge kok ada tombol yang nongol di atasnya. Saya teken aja tu tombol,, kok gak ada perubahan,, saya teken lagi agak lama,, gak ada perubahan juga. saya nyerah.. (untuk yang kedua kalinya).

ketika kepala semakin pusing dan emosi semakin tinggi membayangkan printer yang harus dibawa ke tukang servis padahal baru 5 hari dipake semenjak beli baru. saya memutuskan untuk mematikan printer dan laptop, takut kalau-kalau emosi tak terkendali jadi "terbanting" semua itu barang-barang.

Tapi karena otak ini emang blom puas kalo belom ketemu caranya, saya kembali memutuskan untuk menghidupkan printernya lagi, pas dihidupkan.. keluar suara-suara brisik puteran roller2 yang ada di dalem brisik banget, CTAK,,CTAK,, DRRDD DRRDD,, (APA YANG TERJADI?) aku cemas...

kemudian diam, lampu hijau menyala normal, lampu oranye tidak menyala apalagi kedip-kedip. (lho? kok tiba-tiba damai?). saya buka lagi laptop saya, saya coba print. TARAAAAAAAAAAAAAAAAAAA....... Printer saya jadi bisa lagi. hahahaha..
dan indikator isi tinta pada yang tertampil di laptop saya kembali penuh seperti semula.

saya fikir ini karena tombol diatas cartridge yang saya tekan tadi, mengembalikan nilai tinta yang ada di printer ke awal. (entah apa lah itu sebutannya). dan setelah browsing-browsing, ternyata ada juga yang mengalami hal sama. hahaha.. ternyata semudah itu.
INTINYA CUKUP TEKAN ITU TOMBOL YANG NONGOL DI CARTRIDGE (bagi yang di cartridgenya ada tombol itu)

dan terakhir,, gak pernah rusak, gak pernah memperbaiki.. gak berani jatuh, gak bisa-bisa jalan, :D

semoga artikel ini bermanfaat.

Saturday, February 11, 2012

Saturday, February 4, 2012

Tentang .net framework

5:58 AM Posted by Vyn 1 comment
Photobucket

Kali ini saya akan sedikit mengulas tentang .net Framework. mungkin di antara kita para programmer dan para pengguna komputer sering menemui beberapa aplikasi terbaru yang kita install dikomputer menampilkan message box yang menyatakan .net Framework tidak terinstall, atau versi .net Framework yang ada di komputer kita "ketinggalan zaman". Atau setidaknya anda pernah mendengar sedikit banyak kata-kata .net Framework. Berikut ulasannya:

.Net Framewok merupakan sebuah perangkat lunak kerangka kerja yang diproduksi oleh microsoft untuk Operating Sistem Windows, Yang menyediakan sejumlah besar pustaka pemrograman komputer untuk dijalankan pada aplikasi-aplikasi yang dibangun diatasnya. Jadi bahasa mudahnya, aplikasi/ software yang dibangun di atas .net framework, akan memiliki size memory yang lebih kecil daripada aplikasi yang tidak dibuat di atas .net framework. Karena aplikasi yang dibangun diatasnya tersebut tinggal memanggil perintah-perintah yang sudah ada pada library .net framework. Sebagai contoh: pada hampir setiap aplikasi, mulai dari microsoft office sampa IDE bahasa pemrograman, selalu ada menu save, open, copy, cut, dll. Nah, jika perintah-perintah tersebut harus ditulis manual dalam setiap aplikasi yang dibangun, tentunya akan memakan waktu yang lama dan memory yang lebih banyak. Anggap saja jika perintah "open" punya 120 baris instruksi yang harus dikerjakan, dan di dalam 120 baris itu memakan memory komputer sebanyak 100kb Maka berarti jika ada 10 aplikasi yang berjalan di komputer kita, komputer akan menggunakan 1Mb memory hanya untuk instruksi yang sebenarnya sama. Nah, dengan .net Framework ini, aplikasi yang dibangun hanya tinggal menuliskan (contoh:) "panggil perintah open dari .net framework". Sehingga pembangunan aplikasi akan lebih memakan waktu singkat dan memory yang sedikit. Microsoft visual studio yang dijual microsoft juga menyertakan .net Framework secara otomatis di dalam penginstallannya.

Itulah mengapa aplikasi-aplikasi terbaru yang dibangun diatas .net framework yang terbaru juga tidak bisa di eksekusi di dalam komputer jika .net framework yang ter-install di komputer kita tidak sesuai dengan yang dibutuhkan.

Untuk mendownload .net Framework terbaru, klik link dibawah ini:

DOWNLOAD .NET FRAMEWORK