<?xml version="1.0" encoding="UTF-8" standalone="no"?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><rss xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd" version="2.0"><channel><title>backtracking</title><description></description><managingEditor>noreply@blogger.com (cavarotech)</managingEditor><pubDate>Sun, 6 Oct 2024 23:44:58 -0700</pubDate><generator>Blogger http://www.blogger.com</generator><openSearch:totalResults xmlns:openSearch="http://a9.com/-/spec/opensearchrss/1.0/">22</openSearch:totalResults><openSearch:startIndex xmlns:openSearch="http://a9.com/-/spec/opensearchrss/1.0/">1</openSearch:startIndex><openSearch:itemsPerPage xmlns:openSearch="http://a9.com/-/spec/opensearchrss/1.0/">25</openSearch:itemsPerPage><link>http://backtracing.blogspot.com/</link><language>en-us</language><itunes:explicit>no</itunes:explicit><itunes:subtitle/><itunes:owner><itunes:email>noreply@blogger.com</itunes:email></itunes:owner><item><title>perceptron</title><link>http://backtracing.blogspot.com/2011/04/perceptron.html</link><author>noreply@blogger.com (cavarotech)</author><pubDate>Wed, 27 Apr 2011 02:25:00 -0700</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-4623774382190419200.post-1830347252097787441</guid><description>&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgIcglEa6Xyklx9ypJF-jE1wH7rn8tLo4a7DP5HlRqRbI-yQSgjYV1yT1w3CZNccov-dcz3zJoj5vowE06DbAZtJ5r1H6OaejddWXRvyxb9qZutDsNbjchEN45vqfXnNIHZaCTsdbm67jhG/s1600/perceptron.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgIcglEa6Xyklx9ypJF-jE1wH7rn8tLo4a7DP5HlRqRbI-yQSgjYV1yT1w3CZNccov-dcz3zJoj5vowE06DbAZtJ5r1H6OaejddWXRvyxb9qZutDsNbjchEN45vqfXnNIHZaCTsdbm67jhG/s320/perceptron.JPG" width="226" /&gt;&lt;/a&gt;&lt;/div&gt;</description><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" height="72" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgIcglEa6Xyklx9ypJF-jE1wH7rn8tLo4a7DP5HlRqRbI-yQSgjYV1yT1w3CZNccov-dcz3zJoj5vowE06DbAZtJ5r1H6OaejddWXRvyxb9qZutDsNbjchEN45vqfXnNIHZaCTsdbm67jhG/s72-c/perceptron.JPG" width="72"/><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>Hebian Learning</title><link>http://backtracing.blogspot.com/2011/04/hebian-learning.html</link><author>noreply@blogger.com (cavarotech)</author><pubDate>Wed, 27 Apr 2011 02:24:00 -0700</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-4623774382190419200.post-3634977454453018808</guid><description>&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhbEuc6yXiEkLIr_XPEMJTyLgA40ZVeUe7dJUqmboXR_-OHYxhEmsNy4sFuqIYcyIrTGnWwFNumf1Le0KeN9fGX-tcJ50OWIf5AWDqKgeSZ05atspruaKZUuMdOj4nlJ52tVvlh03t3R6fX/s1600/hebian+learning.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhbEuc6yXiEkLIr_XPEMJTyLgA40ZVeUe7dJUqmboXR_-OHYxhEmsNy4sFuqIYcyIrTGnWwFNumf1Le0KeN9fGX-tcJ50OWIf5AWDqKgeSZ05atspruaKZUuMdOj4nlJ52tVvlh03t3R6fX/s320/hebian+learning.JPG" width="226" /&gt;&lt;/a&gt;&lt;/div&gt;</description><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" height="72" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhbEuc6yXiEkLIr_XPEMJTyLgA40ZVeUe7dJUqmboXR_-OHYxhEmsNy4sFuqIYcyIrTGnWwFNumf1Le0KeN9fGX-tcJ50OWIf5AWDqKgeSZ05atspruaKZUuMdOj4nlJ52tVvlh03t3R6fX/s72-c/hebian+learning.JPG" width="72"/><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>gerbang logika</title><link>http://backtracing.blogspot.com/2011/04/gerbang-logika.html</link><author>noreply@blogger.com (cavarotech)</author><pubDate>Wed, 27 Apr 2011 00:17:00 -0700</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-4623774382190419200.post-851494893645176394</guid><description>&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgGZJvcTeNicH92HKax4eL_76N0anLqXLWZXWi6XnqVA4PuP9umqSWC3eOlkh8SMUCQPb4_ZJxGWiVJKGvJ455e2zOOlefVX00IOu4FgeyFkimeYVjno6gc49rSbHA83LWNQcK94XoQ7Bpt/s1600/gerbang+logika.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgGZJvcTeNicH92HKax4eL_76N0anLqXLWZXWi6XnqVA4PuP9umqSWC3eOlkh8SMUCQPb4_ZJxGWiVJKGvJ455e2zOOlefVX00IOu4FgeyFkimeYVjno6gc49rSbHA83LWNQcK94XoQ7Bpt/s320/gerbang+logika.JPG" width="238" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh06lWYI2uVj9fbY6H-EhPFBDo_rBrKpW9a4Io4BkAer4LirPbj8JrbTdsy3CxSm3xSD5_MROl0ghukHgGBTQ4yIZ7yromJ5OlolvVe8lczwRivFyiGEc1iyDXzbZ7fVw1-6pdM0uOgapeI/s1600/gerbang+logika+2.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="175" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh06lWYI2uVj9fbY6H-EhPFBDo_rBrKpW9a4Io4BkAer4LirPbj8JrbTdsy3CxSm3xSD5_MROl0ghukHgGBTQ4yIZ7yromJ5OlolvVe8lczwRivFyiGEc1iyDXzbZ7fVw1-6pdM0uOgapeI/s320/gerbang+logika+2.JPG" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhPowswXQRt_Bpci58hY_nEZoerHjM2Km2cmwCrCFgu3nTZX2NCTnaf42D4KCRPM5cYc_YkiamBpNbVppy19N7313YUPYenpeKYgCNAAs_BonWuSNqLxtadf1aZaiUqZ4scBvcRglbPxXly/s1600/gerbang+logika.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;br /&gt;
&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjqDpNIpC5t7tw78cZUdk0srTcnNE6KvuGiQvYzHp0GkT7S3U3GFllDaRuZKVTzRPrDMcH1gCKWiL-oij55SOe7X-A75s__FGlBOIzxdybbAbgPyYhT3HvHJEr7nhSKw4kms8xg_HoPtRwf/s1600/gerbang+logika.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;br /&gt;
&lt;/a&gt;&lt;/div&gt;</description><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" height="72" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgGZJvcTeNicH92HKax4eL_76N0anLqXLWZXWi6XnqVA4PuP9umqSWC3eOlkh8SMUCQPb4_ZJxGWiVJKGvJ455e2zOOlefVX00IOu4FgeyFkimeYVjno6gc49rSbHA83LWNQcK94XoQ7Bpt/s72-c/gerbang+logika.JPG" width="72"/><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>backpropagation</title><link>http://backtracing.blogspot.com/2011/04/backpropagation.html</link><author>noreply@blogger.com (cavarotech)</author><pubDate>Tue, 26 Apr 2011 22:49:00 -0700</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-4623774382190419200.post-9043984722868187443</guid><description>&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEihtKN0sL6v4xH2Jto6bggkid9VuL6gIq1GkA_Qgf-uBG1YZQI7q7LfE1GjFl-UR69snfOs57Iyv_UnMri-QiUcsgeYIoc_KFxT9oFzVSTelbNkxl0QRwsuLTMz5MV7Ej7hl83vSwRlndBL/s1600/stage1.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEihtKN0sL6v4xH2Jto6bggkid9VuL6gIq1GkA_Qgf-uBG1YZQI7q7LfE1GjFl-UR69snfOs57Iyv_UnMri-QiUcsgeYIoc_KFxT9oFzVSTelbNkxl0QRwsuLTMz5MV7Ej7hl83vSwRlndBL/s320/stage1.JPG" width="226" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi4rz0WGJ3Nzi8QZ9RB3RAYd0ALgeNK_3jhKgiAZYDy7DpzVB-bQi4rvMHYtFpdOaqf86dFLh-Hgb86VQJUy6K_SrKFEEwZEIH9qAhodADHetS7aft-95CGCabA51AcC8XBd0p_Z4OvNzUZ/s1600/stage2.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi4rz0WGJ3Nzi8QZ9RB3RAYd0ALgeNK_3jhKgiAZYDy7DpzVB-bQi4rvMHYtFpdOaqf86dFLh-Hgb86VQJUy6K_SrKFEEwZEIH9qAhodADHetS7aft-95CGCabA51AcC8XBd0p_Z4OvNzUZ/s320/stage2.JPG" width="226" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi7v995eO4mX8PYzqv_gpPFf3kEsnl0SR_hyp2CybokWXbJcXm3PoXhOMfzlM-2t5J5z8Y9Ddi9cltttB93MiWdEcGQl2Jml8wpdH9D2YLfgKE9SmFhqCnQvOHC0x8HHqjatrn-wZfcQ0th/s1600/stage3.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi7v995eO4mX8PYzqv_gpPFf3kEsnl0SR_hyp2CybokWXbJcXm3PoXhOMfzlM-2t5J5z8Y9Ddi9cltttB93MiWdEcGQl2Jml8wpdH9D2YLfgKE9SmFhqCnQvOHC0x8HHqjatrn-wZfcQ0th/s320/stage3.JPG" width="226" /&gt;&lt;/a&gt;&lt;/div&gt;</description><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" height="72" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEihtKN0sL6v4xH2Jto6bggkid9VuL6gIq1GkA_Qgf-uBG1YZQI7q7LfE1GjFl-UR69snfOs57Iyv_UnMri-QiUcsgeYIoc_KFxT9oFzVSTelbNkxl0QRwsuLTMz5MV7Ej7hl83vSwRlndBL/s72-c/stage1.JPG" width="72"/><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>stable mariage</title><link>http://backtracing.blogspot.com/2011/01/stable-mariage.html</link><author>noreply@blogger.com (cavarotech)</author><pubDate>Thu, 20 Jan 2011 00:30:00 -0800</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-4623774382190419200.post-8602662700736672661</guid><description>The Stable Marriage Problem&lt;br /&gt;
&lt;br /&gt;
Ada 8 pasang pria (man) dan wanita (woman), maka array yang terbentuk adalah sebagai berikut :&lt;br /&gt;
1. man = 8 &lt;br /&gt;
2. woman = 8 &lt;br /&gt;
3. rank = 8 &lt;br /&gt;
4. mP(man, rank) = mP (8, 8) &lt;br /&gt;
contoh:&lt;br /&gt;
&lt;br /&gt;
Man\ Rank 1 2 3 4 5 6 7 8&lt;br /&gt;
Man 1 select woman 3 6 7 1 8 4 5 2&lt;br /&gt;
2 6 3 1 3 5 8 2 7&lt;br /&gt;
3 8 4 1 5 6 3 7 2&lt;br /&gt;
4 3 8 4 2 5 6 7 1&lt;br /&gt;
5 8 3 4 5 6 1 7 2&lt;br /&gt;
6 8 7 5 2 4 3 1 6&lt;br /&gt;
7 2 4 6 3 1 7 5 8&lt;br /&gt;
8 6 1 4 2 7 5 3 8&lt;br /&gt;
&lt;br /&gt;
5. wP(woman, rank) = wP(8, 8) &lt;br /&gt;
6. m(man) = m(8) &lt;br /&gt;
7. w(woman) = w(8) &lt;br /&gt;
8. single(woman) = single(8) = (T, T, T, T, T, T, T, T)  merupakan array Boolean&lt;br /&gt;
ABSTRAKSI&lt;br /&gt;
PROCEDURE try(man,sukses)&lt;br /&gt;
r = ranking&lt;br /&gt;
FOR r = 1  sampai 8&lt;br /&gt;
Pemilihan woman oleh man berdasarkan ranking&lt;br /&gt;
IF woman tsb single ?&lt;br /&gt;
THEN Pasangkan man dengan woman single dan woman tsb tidak single&lt;br /&gt;
IF man&lt;8
THEN CALL try(man+1, sukses_berikut
ELSE cetak pasangan
Batalkan Pasangan
RETURN
ANALISA
1. Level = 8
2. Prioritas = 8 
3. Ambil tindakan = Pasangkan man dengan woman single dan single = false
for (int i = 0; i &lt; m.length; i++) {
     System.out.println(i + " + " + m[i]); 
}
4. if tindakan dapat dilakukan = Apakah Wanita tsb single ?

int[] single = new int[n];
final int TRUE = -1;
for (int i = 0; i &lt; single.length; i++)
     single[i] = TRUE;

for (int i = 0; i &lt; single.length; i++)
     PriaFree.add(i);

int[] next = new int[n];

while (!PriaFree.isEmpty()) {
     int m = PriaFree.remove();
     int w = mP[m][next[m]];
     next[m]++;
     System.out.println("m=" + m + " w=" + w);
            if (single[w] == TRUE) {
  single[w] = m; 


5. batalkan tindakan = Batalkan Pernikahan(Pilih wanita/pria lain)
int m1 = single[w];
if (prefers(w, m, m1)) {
single[w] = m;
PriaFree.add(m1);
} else {
PriaFree.add(m);
}

private boolean prefers(int w, int x, int y) {
 for (int i = 0; i &lt; 8; i++) {
     int pref = wP[w][i];
     if (pref == x)
  return true;
     if (pref == y)
  return false;     
 }
 // This should never happen.
 System.out.println("Error in wP list " + w);
 return false;
    }




Program

import java.util.*;
import java.io.*;

public class StableMarriage
{
    private int n ;
    private int[][] mP;
    private int[][] wP;

    private static final boolean DEBUGGING = false;
    private Random rand = new Random();
    public static void main(String[] args) {
 if (args.length != 1) {
                int n = 8;
            StableMarriage sm = new StableMarriage(n);
    if (n &lt;= 10)
           sm.printPrefTables();
    int[] marriage = sm.stable();
    if (n &lt;= 10)
     sm.printMarriage(marriage);
            return;
 }
    }
    public StableMarriage(int n) {
 this.n = n;
 mP = new int[n][];
 wP = new int[n][];
 for (int i = 0; i &lt; n; i++) {
     mP[i] = new int[n];
     createRandomPrefs(mP[i]);
     wP[i] = new int[n];
     createRandomPrefs(wP[i]);
 }
    }
    private void createRandomPrefs(int[] v) {
 for (int i = 0; i &lt; v.length; i++)
     v[i] = i;
 
 for (int i = v.length - 1; i &gt; 0; i--) {&lt;br /&gt;
int j = rand.nextInt(i+1);&lt;br /&gt;
int temp = v[i];&lt;br /&gt;
v[i] = v[j];&lt;br /&gt;
v[j] = temp;&lt;br /&gt;
}&lt;br /&gt;
}&lt;br /&gt;
public int[] stable() {&lt;br /&gt;
int[] single = new int[n];&lt;br /&gt;
final int TRUE = -1;&lt;br /&gt;
for (int i = 0; i &lt; single.length; i++)
     single[i] = TRUE;
 LinkedList&lt;Integer&gt; PriaFree = new LinkedList&lt;integer&gt;();&lt;br /&gt;
for (int i = 0; i &lt; single.length; i++)
     PriaFree.add(i);
 int[] next = new int[n];

 while (!PriaFree.isEmpty()) {
     int m = PriaFree.remove();
     int w = mP[m][next[m]];
     next[m]++;
System.out.println("Pasangan”);

 System.out.println("m=" + m + " w=" + w);
            if (single[w] == TRUE) {
  single[w] = m;
     } else {
  int m1 = single[w];
  if (prefers(w, m, m1)) {
      single[w] = m;
      PriaFree.add(m1);
  } else {
      PriaFree.add(m);
  }
     }     
 }
 return single; 
    }
    private boolean prefers(int w, int x, int y) {
 for (int i = 0; i &lt; 4; i++) {
     int pref = wP[w][i];
     if (pref == x)
  return true;
     if (pref == y)
  return false;     
 }
 System.out.println("Error in wP list " + w);
 return false;
    }

    public void printPrefTables() {
 System.out.println("Man  List:");
 printMatrix(mP);
 System.out.println("Woman List:");
 printMatrix(wP);
    }

    private void printMarriage(int[] m) {
 System.out.println("Pernikahan: ");
 for (int i = 0; i &lt; m.length; i++)
     System.out.println(‘(’ + i + " + " + m[i] + ‘)’);
    }

    private void printDebug(String s) {
 if (DEBUGGING) {
     System.out.println(s);
 }
    }

    private void printMatrix(int[][] v) {
 if (v == null) {
     System.out.println("&lt;null&gt;");&lt;br /&gt;
return;&lt;br /&gt;
}&lt;br /&gt;
for (int i = 0; i &lt; v.length; i++) {&lt;br /&gt;
for (int j = 0; j &lt; v[i].length; j++)&lt;br /&gt;
System.out.print(v[i][j] + " ");&lt;br /&gt;
System.out.println();&lt;br /&gt;
}&lt;br /&gt;
}&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
HASIL :&lt;br /&gt;
&lt;br /&gt;
Man List&lt;br /&gt;
&lt;br /&gt;
Woman List&lt;br /&gt;
&lt;br /&gt;
Pasangan&lt;br /&gt;
&lt;br /&gt;
Pernikahan :&lt;br /&gt;
(0,4)&lt;br /&gt;
(1,5)&lt;br /&gt;
(2,7)&lt;br /&gt;
(3,6)&lt;br /&gt;
(4,1)&lt;br /&gt;
(5,0)&lt;br /&gt;
(6,3)&lt;br /&gt;
(7,2)</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>Urut data array dengan metode insertion Sort</title><link>http://backtracing.blogspot.com/2011/01/urut-data-array-dengan-metode-insertion.html</link><author>noreply@blogger.com (cavarotech)</author><pubDate>Thu, 20 Jan 2011 00:26:00 -0800</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-4623774382190419200.post-6807837483045163206</guid><description>CALL InputVectorDariRandom(X,N)&lt;br /&gt;
document.write" &lt;U&gt;Metode pengurutan data dengan Insertion Sort &lt;/U&gt; &lt;BR&gt;"&lt;br /&gt;
document.write "&lt;BR&gt;"&lt;br /&gt;
CALL Cetak(x,n," Sebelum Sorting :")&lt;br /&gt;
CALL insertionSort(x,n)&lt;br /&gt;
CALL Cetak(x,n," Setelah Sorting :")&lt;br /&gt;
 &lt;br /&gt;
SUB InputVectorDariRandom(byRef v(), byRef N)&lt;br /&gt;
 RANDOMIZE&lt;br /&gt;
 N = cint(InputBox("Masukkan Jumlah Elemen Array"))&lt;br /&gt;
 REDIM v(N)&lt;br /&gt;
 FOR c=1 TO N&lt;br /&gt;
  v(c)=10+int(rnd*90)&lt;br /&gt;
 NEXT&lt;br /&gt;
END SUB&lt;br /&gt;
 &lt;br /&gt;
SUB insertionSort(byRef v(), byVal N)&lt;br /&gt;
 FOR i=1 TO N&lt;br /&gt;
  temp=v(i)&lt;br /&gt;
  j=i-1&lt;br /&gt;
  do while (j&gt;=0) and (v(j)&gt;temp)&lt;br /&gt;
   v(j+1)=v(j)&lt;br /&gt;
   j=j-1&lt;br /&gt;
  loop&lt;br /&gt;
  v(j+1)=temp&lt;br /&gt;
 NEXT&lt;br /&gt;
END SUB&lt;br /&gt;
 &lt;br /&gt;
SUB Cetak(byVal v(), byVal N, message)&lt;br /&gt;
 document.write "Isi Vektor " &amp; message &amp; "&lt;BR&gt;"&lt;br /&gt;
 FOR c=1 TO N&lt;br /&gt;
  document.write v(c) &amp; ", "&lt;br /&gt;
 NEXT&lt;br /&gt;
 document.write "&lt;BR&gt;"&lt;br /&gt;
 document.write "&lt;BR&gt;"&lt;br /&gt;
END SUB</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>Urut data array dengan metode Selection Sort</title><link>http://backtracing.blogspot.com/2011/01/urut-data-array-dengan-metode-selection.html</link><author>noreply@blogger.com (cavarotech)</author><pubDate>Thu, 20 Jan 2011 00:26:00 -0800</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-4623774382190419200.post-8117233080810741733</guid><description>CALL InputVectorDariRandom(X,N)&lt;br /&gt;
document.write" &lt;U&gt;Metode pengurutan data dengan Selection Sort &lt;/U&gt; &lt;BR&gt;"&lt;br /&gt;
document.write "&lt;BR&gt;"&lt;br /&gt;
CALL Cetak(x,n," Sebelum Sorting :")&lt;br /&gt;
CALL SelectionSort(x,n)&lt;br /&gt;
CALL Cetak(x,n," Setelah Sorting :")&lt;br /&gt;
 &lt;br /&gt;
SUB InputVectorDariRandom(byRef v(), byRef N)&lt;br /&gt;
 RANDOMIZE&lt;br /&gt;
 N = cint(InputBox("Masukkan Jumlah Elemen Array"))&lt;br /&gt;
 REDIM v(N)&lt;br /&gt;
 FOR c=1 TO N&lt;br /&gt;
  v(c)=10+int(rnd*90)&lt;br /&gt;
 NEXT&lt;br /&gt;
END SUB&lt;br /&gt;
 &lt;br /&gt;
SUB SelectionSort(byRef v(), byVal jumlah)&lt;br /&gt;
 FOR i=1 TO jumlah-1&lt;br /&gt;
  MIN = i&lt;br /&gt;
  FOR j=I+1 TO jumlah&lt;br /&gt;
   IF v(j)&lt; v ( MIN ) THEN MIN=j
  NEXT
  IF i&lt;&gt;MIN THEN&lt;br /&gt;
   temp=v(i)&lt;br /&gt;
   v(i)=v(MIN)&lt;br /&gt;
   v(MIN)=temp&lt;br /&gt;
  END IF&lt;br /&gt;
 NEXT&lt;br /&gt;
END SUB&lt;br /&gt;
 &lt;br /&gt;
SUB Cetak(byVal v(), byVal N, message)&lt;br /&gt;
 document.write "Isi Vektor " &amp; message &amp; "&lt;BR&gt;"&lt;br /&gt;
 FOR c=1 TO N&lt;br /&gt;
  document.write v(c) &amp; ", "&lt;br /&gt;
 NEXT&lt;br /&gt;
 document.write "&lt;BR&gt;"&lt;br /&gt;
 document.write "&lt;BR&gt;"&lt;br /&gt;
END SUB</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>Urut data array dengan metode Bubble Sort</title><link>http://backtracing.blogspot.com/2011/01/urut-data-array-dengan-metode-bubble.html</link><author>noreply@blogger.com (cavarotech)</author><pubDate>Thu, 20 Jan 2011 00:25:00 -0800</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-4623774382190419200.post-5332726822988166499</guid><description>CALL InputVectorDariRandom(X,N)&lt;br /&gt;
document.write" &lt;U&gt;Metode pengurutan data dengan Bubble Sort &lt;/U&gt; &lt;BR&gt;"&lt;br /&gt;
document.write "&lt;BR&gt;"&lt;br /&gt;
CALL Cetak(x,n," Sebelum Sorting :")&lt;br /&gt;
CALL StandardBubbleSort(x,n)&lt;br /&gt;
CALL Cetak(x,n," Setelah Sorting :")&lt;br /&gt;
 &lt;br /&gt;
SUB InputVectorDariRandom(byRef v(), byRef N)&lt;br /&gt;
 RANDOMIZE&lt;br /&gt;
 N = cint(InputBox("Masukkan Jumlah Elemen Array"))&lt;br /&gt;
 REDIM v(N)&lt;br /&gt;
 FOR c=1 TO N&lt;br /&gt;
  v(c)=10+int(rnd*90)&lt;br /&gt;
 NEXT&lt;br /&gt;
END SUB&lt;br /&gt;
 &lt;br /&gt;
SUB StandardBubbleSort(byRef v(), byVal jumlah)&lt;br /&gt;
 FOR i=1 TO jumlah-1&lt;br /&gt;
  FOR j=1 TO jumlah-I&lt;br /&gt;
   IF v(j)&gt;v(j+1) THEN&lt;br /&gt;
    temp=v(j)&lt;br /&gt;
    v(j)=v(j+1)&lt;br /&gt;
    v(j+1)=temp&lt;br /&gt;
   END IF&lt;br /&gt;
  NEXT&lt;br /&gt;
 NEXT&lt;br /&gt;
END SUB&lt;br /&gt;
 &lt;br /&gt;
SUB Cetak(byVal v(), byVal N, message)&lt;br /&gt;
 document.write "Isi Vektor " &amp; message &amp; "&lt;BR&gt;"&lt;br /&gt;
 FOR c=1 TO N&lt;br /&gt;
  document.write v(c) &amp; ", "&lt;br /&gt;
 NEXT&lt;br /&gt;
 document.write "&lt;BR&gt;"&lt;br /&gt;
 document.write "&lt;BR&gt;"&lt;br /&gt;
END SUB</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>Urut data array dengan metode Straight Selection Sort</title><link>http://backtracing.blogspot.com/2011/01/urut-data-array-dengan-metode-straight.html</link><author>noreply@blogger.com (cavarotech)</author><pubDate>Thu, 20 Jan 2011 00:24:00 -0800</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-4623774382190419200.post-1100046773770845280</guid><description>CALL InputVectorDariRandom(X,N)&lt;br /&gt;
document.write" &lt;U&gt;Metode pengurutan data dengan straight selection sort&lt;/U&gt; &lt;BR&gt;"&lt;br /&gt;
document.write "&lt;BR&gt;"&lt;br /&gt;
CALL Cetak(x,n," Sebelum Sorting :")&lt;br /&gt;
CALL StraightSelectionSort(x,n)&lt;br /&gt;
CALL Cetak(x,n," Setelah Sorting :")&lt;br /&gt;
 &lt;br /&gt;
SUB InputVectorDariRandom(byRef v(), byRef N)&lt;br /&gt;
 RANDOMIZE&lt;br /&gt;
 N = cint(InputBox("Masukkan Jumlah Elemen Array"))&lt;br /&gt;
 REDIM v(N)&lt;br /&gt;
 FOR c=1 TO N&lt;br /&gt;
  v(c)=10+int(rnd*90)&lt;br /&gt;
 NEXT&lt;br /&gt;
END SUB&lt;br /&gt;
 &lt;br /&gt;
SUB StraightSelectionSort(byRef v(), byVal N)&lt;br /&gt;
 FOR i=1 TO N-1&lt;br /&gt;
  FOR j=i+1 TO N&lt;br /&gt;
   IF v(i)&gt;v(j) THEN&lt;br /&gt;
    temp=v(i)&lt;br /&gt;
    v(i)=v(j)&lt;br /&gt;
    v(j)=temp&lt;br /&gt;
   END IF&lt;br /&gt;
  NEXT&lt;br /&gt;
 NEXT&lt;br /&gt;
END SUB&lt;br /&gt;
 &lt;br /&gt;
SUB Cetak(byVal v(), byVal N, message)&lt;br /&gt;
 document.write "Isi Vektor " &amp; message &amp; "&lt;BR&gt;"&lt;br /&gt;
 FOR c=1 TO N&lt;br /&gt;
  document.write v(c) &amp; ", "&lt;br /&gt;
 NEXT&lt;br /&gt;
 document.write "&lt;BR&gt;"&lt;br /&gt;
 document.write "&lt;BR&gt;"&lt;br /&gt;
END SUB</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>KNIGHT TOUR TRACE</title><link>http://backtracing.blogspot.com/2011/01/knight-tour-trace.html</link><author>noreply@blogger.com (cavarotech)</author><pubDate>Thu, 20 Jan 2011 00:21:00 -0800</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-4623774382190419200.post-1058226834448853946</guid><description>DO&lt;br /&gt;
N = cint(InputBox("Masukkan Ukuran Papan Catur"))&lt;br /&gt;
LOOP UNTIL N&gt;=3 AND N&lt;=30
REDIM Papan(N+4,N+4)

FOR i=1 TO N+4
 FOR j=1 TO N+4
  IF i&lt;3 OR j&lt;3 OR i&gt;N+2 OR j&gt;N+2 THEN&lt;br /&gt;
Papan(i,j)=99&lt;br /&gt;
ELSE&lt;br /&gt;
Papan(i,j)=0&lt;br /&gt;
END IF&lt;br /&gt;
NEXT&lt;br /&gt;
NEXT&lt;br /&gt;
&lt;br /&gt;
V = Array(,-2,-1,1,2,2,1,-1,-2)&lt;br /&gt;
H = Array(,1,2,2,1,-1,-2,-2,-1)&lt;br /&gt;
&lt;br /&gt;
DO&lt;br /&gt;
yAw = cint(InputBox("Masukkan Nomor Baris Awal Kuda"))&lt;br /&gt;
xAw = cint(InputBox("Masukkan Nomor Kolom Awal Kuda"))&lt;br /&gt;
LOOP UNTIL xAw&lt;=N AND xAw&gt;=1 AND yAw&lt;=N AND yAw&gt;=1&lt;br /&gt;
y = yAw+2&lt;br /&gt;
x = xAw+2&lt;br /&gt;
NoStep=1&lt;br /&gt;
Papan(y,x)=NoStep&lt;br /&gt;
NoStep=NoStep+1&lt;br /&gt;
&lt;br /&gt;
sukses = false&lt;br /&gt;
CALL Try(NoStep, y, x, sukses)&lt;br /&gt;
IF sukses=TRUE THEN&lt;br /&gt;
CALL CetakPapan()&lt;br /&gt;
ELSE&lt;br /&gt;
document.write "Tidak Ada Solusinya!!!&lt;br /&gt;
"&lt;br /&gt;
END IF&lt;br /&gt;
&lt;br /&gt;
SUB Try(byVal i, byVal y, byVal x, byRef sukses)&lt;br /&gt;
document.write "Coba Langkah " &amp; i &amp; "&lt;br /&gt;
"&lt;br /&gt;
p = 0&lt;br /&gt;
DO&lt;br /&gt;
p = p + 1&lt;br /&gt;
document.write "&lt;dd&gt;Coba Prioritas " &amp; p &amp; " "&lt;br /&gt;
suksesBerikut = FALSE&lt;br /&gt;
IF Papan(y+v(p),x+h(p))=0 THEN&lt;br /&gt;
document.write " ---&gt; SUKSES&lt;br /&gt;
"&lt;br /&gt;
yNext = y+v(p)&lt;br /&gt;
xNext = x+h(p)&lt;br /&gt;
Papan(yNext,xNext) = i&lt;br /&gt;
IF i&lt; n ^ 2 THEN
        CALL Try(i+1, yNext, xNext, suksesBerikut)
        IF suksesBerikut = FALSE THEN
          Papan(yNext,xNext) = 0
        END IF
     ELSE
        suksesBerikut = TRUE
     END IF
  END IF
 LOOP UNTIL suksesBerikut = TRUE OR p = 8
 IF p=8 THEN document.write "Langkah " &amp; i &amp; " Backtrack, karena semua gagal
"
sukses = suksesBerikut
END SUB


SUB CetakPapan()
document.write "&lt;u&gt;Papan Catur :&lt;/U&gt;&lt;br /&gt;
"&lt;br /&gt;
document.write "&lt;table BORDER=10&gt;"  FOR i=3 TO N+2   document.write "
&lt;tr&gt;"   FOR j=3 TO N+2    document.write "&lt;td&gt;" &amp; Papan(i,j) &amp; "&lt;/TD&gt;"   NEXT   document.write "&lt;/TR&gt;
"  NEXT  document.write "&lt;/TABLE&gt;"&lt;br /&gt;
END SUB</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>RECURSIVE ARRAY 5</title><link>http://backtracing.blogspot.com/2011/01/recursive-array-5.html</link><author>noreply@blogger.com (cavarotech)</author><pubDate>Thu, 20 Jan 2011 00:18:00 -0800</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-4623774382190419200.post-3033225546855487983</guid><description>'----- Program Utama -----&lt;br /&gt;
CALL InputVectorDariRandom(x,N)&lt;br /&gt;
CALL CetakVectorKeSamping(x,N,"x","Isi Vektor :")&lt;br /&gt;
cari = cint(InputBox("Masukkan Bilangan yang Dicari"))&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
'----- Koleksi Modul -----&lt;br /&gt;
SUB InputVectorDariKeyboard(byRef v(), byRef N)&lt;br /&gt;
 N = cint(InputBox("Masukkan Jumlah Elemen Array"))&lt;br /&gt;
 REDIM v(N)&lt;br /&gt;
 FOR i=1 TO N&lt;br /&gt;
  v(i) = cint(InputBox("Masukkan Isi Elemen ke-" &amp; i))&lt;br /&gt;
 NEXT&lt;br /&gt;
END SUB&lt;br /&gt;
 &lt;br /&gt;
SUB InputVectorDariRandom(byRef v(), byRef N)&lt;br /&gt;
 N = cint(InputBox("Masukkan Jumlah Elemen Array"))&lt;br /&gt;
 REDIM v(N)&lt;br /&gt;
 FOR i=1 TO N&lt;br /&gt;
  v(i) = 10 + int(rnd*90)&lt;br /&gt;
 NEXT&lt;br /&gt;
END SUB&lt;br /&gt;
 &lt;br /&gt;
SUB CetakVector(byVal v(), byVal N, byVal nama, byVal message)&lt;br /&gt;
 document.write "&lt;BR&gt;" &amp; message &amp; "&lt;BR&gt;"&lt;br /&gt;
 FOR i=1 TO N&lt;br /&gt;
  document.write nama &amp; "(" &amp; i &amp; ") = " &amp; v(i) &amp; "&lt;BR&gt;"&lt;br /&gt;
 NEXT&lt;br /&gt;
END SUB&lt;br /&gt;
 &lt;br /&gt;
SUB CetakVectorKeSamping(byVal v(), byVal N, byVal nama, byVal message)&lt;br /&gt;
 document.write "&lt;BR&gt;" &amp; message &amp; "&lt;BR&gt;"&lt;br /&gt;
 FOR i=1 TO N&lt;br /&gt;
  document.write v(i) &amp; ", "&lt;br /&gt;
 NEXT&lt;br /&gt;
 document.write "&lt;BR&gt;"&lt;br /&gt;
END SUB</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>RECURSIVE ARRAY 4</title><link>http://backtracing.blogspot.com/2011/01/recursive-array-4.html</link><author>noreply@blogger.com (cavarotech)</author><pubDate>Thu, 20 Jan 2011 00:18:00 -0800</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-4623774382190419200.post-7896328443767948315</guid><description>'----- Program Utama -----&lt;br /&gt;
CALL InputVectorDariRandom(x,N)&lt;br /&gt;
CALL CetakVectorKeSamping(x,N,"x","Isi Vektor :")&lt;br /&gt;
document.write "Nilai Maximal = " &amp; maxR(x,1,N) &amp; "&lt;BR&gt;"&lt;br /&gt;
document.write "Total = " &amp; totR(x,1,N) &amp; "&lt;BR&gt;"&lt;br /&gt;
 &lt;br /&gt;
'----- Koleksi Modul -----&lt;br /&gt;
SUB InputVectorDariKeyboard(byRef v(), byRef N)&lt;br /&gt;
 N = cint(InputBox("Masukkan Jumlah Elemen Array"))&lt;br /&gt;
 REDIM v(N)&lt;br /&gt;
 FOR i=1 TO N&lt;br /&gt;
  v(i) = cint(InputBox("Masukkan Isi Elemen ke-" &amp; i))&lt;br /&gt;
 NEXT&lt;br /&gt;
END SUB&lt;br /&gt;
 &lt;br /&gt;
SUB InputVectorDariRandom(byRef v(), byRef N)&lt;br /&gt;
 N = cint(InputBox("Masukkan Jumlah Elemen Array"))&lt;br /&gt;
 REDIM v(N)&lt;br /&gt;
 FOR i=1 TO N&lt;br /&gt;
  v(i) = 10 + int(rnd*10)&lt;br /&gt;
 NEXT&lt;br /&gt;
END SUB&lt;br /&gt;
 &lt;br /&gt;
SUB CetakVector(byVal v(), byVal N, byVal nama, byVal message)&lt;br /&gt;
 document.write "&lt;BR&gt;" &amp; message &amp; "&lt;BR&gt;"&lt;br /&gt;
 FOR i=1 TO N&lt;br /&gt;
  document.write nama &amp; "(" &amp; i &amp; ") = " &amp; v(i) &amp; "&lt;BR&gt;"&lt;br /&gt;
 NEXT&lt;br /&gt;
END SUB&lt;br /&gt;
 &lt;br /&gt;
SUB CetakVectorKeSamping(byVal v(), byVal N, byVal nama, byVal message)&lt;br /&gt;
 document.write "&lt;BR&gt;" &amp; message &amp; "&lt;BR&gt;"&lt;br /&gt;
 FOR i=1 TO N&lt;br /&gt;
  document.write v(i) &amp; ", "&lt;br /&gt;
 NEXT&lt;br /&gt;
 document.write "&lt;BR&gt;"&lt;br /&gt;
END SUB&lt;br /&gt;
 &lt;br /&gt;
FUNCTION maxR(byVal v(), byVal aw, byVal ak)&lt;br /&gt;
 IF aw=ak THEN&lt;br /&gt;
  maxR = v(aw)&lt;br /&gt;
 ELSE&lt;br /&gt;
  maxKanan = maxR(v,aw+1,ak)&lt;br /&gt;
  IF v(aw)&gt;maxKanan THEN maxR = v(aw) ELSE maxR=maxKanan&lt;br /&gt;
 END IF&lt;br /&gt;
END FUNCTION&lt;br /&gt;
 &lt;br /&gt;
FUNCTION totR(byVal v(), byVal aw, byVal ak)&lt;br /&gt;
 IF aw=ak THEN&lt;br /&gt;
  totR = v(aw)&lt;br /&gt;
 ELSE&lt;br /&gt;
  tgh = (aw+ak)\2&lt;br /&gt;
  totKiri = totR(v,aw,tgh)&lt;br /&gt;
  totKanan = totR(v,tgh+1,ak)&lt;br /&gt;
  totR = totKiri + totKanan&lt;br /&gt;
 END IF&lt;br /&gt;
END FUNCTION</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>RECURSIVE ARRAY 3</title><link>http://backtracing.blogspot.com/2011/01/recursive-array-3.html</link><author>noreply@blogger.com (cavarotech)</author><pubDate>Thu, 20 Jan 2011 00:17:00 -0800</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-4623774382190419200.post-7053723854363483642</guid><description>'----- Program Utama -----&lt;br /&gt;
CALL InputVectorDariRandom(x,N)&lt;br /&gt;
CALL CetakVectorKeSamping(x,N,"x","Isi Vektor :")&lt;br /&gt;
document.write "Nilai Maximal = " &amp; maxR(x,1,N) &amp; "&lt;BR&gt;"&lt;br /&gt;
document.write "Total = " &amp; totR(x,1,N) &amp; "&lt;BR&gt;"&lt;br /&gt;
 &lt;br /&gt;
'----- Koleksi Modul -----&lt;br /&gt;
SUB InputVectorDariKeyboard(byRef v(), byRef N)&lt;br /&gt;
 N = cint(InputBox("Masukkan Jumlah Elemen Array"))&lt;br /&gt;
 REDIM v(N)&lt;br /&gt;
 FOR i=1 TO N&lt;br /&gt;
  v(i) = cint(InputBox("Masukkan Isi Elemen ke-" &amp; i))&lt;br /&gt;
 NEXT&lt;br /&gt;
END SUB&lt;br /&gt;
 &lt;br /&gt;
SUB InputVectorDariRandom(byRef v(), byRef N)&lt;br /&gt;
 N = cint(InputBox("Masukkan Jumlah Elemen Array"))&lt;br /&gt;
 REDIM v(N)&lt;br /&gt;
 FOR i=1 TO N&lt;br /&gt;
  v(i) = 10 + int(rnd*10)&lt;br /&gt;
 NEXT&lt;br /&gt;
END SUB&lt;br /&gt;
 &lt;br /&gt;
SUB CetakVector(byVal v(), byVal N, byVal nama, byVal message)&lt;br /&gt;
 document.write "&lt;BR&gt;" &amp; message &amp; "&lt;BR&gt;"&lt;br /&gt;
 FOR i=1 TO N&lt;br /&gt;
  document.write nama &amp; "(" &amp; i &amp; ") = " &amp; v(i) &amp; "&lt;BR&gt;"&lt;br /&gt;
 NEXT&lt;br /&gt;
END SUB&lt;br /&gt;
 &lt;br /&gt;
SUB CetakVectorKeSamping(byVal v(), byVal N, byVal nama, byVal message)&lt;br /&gt;
 document.write "&lt;BR&gt;" &amp; message &amp; "&lt;BR&gt;"&lt;br /&gt;
 FOR i=1 TO N&lt;br /&gt;
  document.write v(i) &amp; ", "&lt;br /&gt;
 NEXT&lt;br /&gt;
 document.write "&lt;BR&gt;"&lt;br /&gt;
END SUB&lt;br /&gt;
 &lt;br /&gt;
FUNCTION maxR(byVal v(), byVal aw, byVal ak)&lt;br /&gt;
 IF aw=ak THEN&lt;br /&gt;
  maxR = v(aw)&lt;br /&gt;
 ELSE&lt;br /&gt;
  tgh = (aw+ak)\2&lt;br /&gt;
  maxKiri = maxR(v,aw,tgh)&lt;br /&gt;
  maxKanan = maxR(v,tgh+1,ak)&lt;br /&gt;
  IF maxKiri&gt;maxKanan THEN maxR = maxKiri ELSE maxR=maxKanan&lt;br /&gt;
 END IF&lt;br /&gt;
END FUNCTION&lt;br /&gt;
 &lt;br /&gt;
FUNCTION totR(byVal v(), byVal aw, byVal ak)&lt;br /&gt;
 IF aw=ak THEN&lt;br /&gt;
  totR = v(aw)&lt;br /&gt;
 ELSE&lt;br /&gt;
  tgh = (aw+ak)\2&lt;br /&gt;
  totKiri = totR(v,aw,tgh)&lt;br /&gt;
  totKanan = totR(v,tgh+1,ak)&lt;br /&gt;
  totR = totKiri + totKanan&lt;br /&gt;
 END IF&lt;br /&gt;
END FUNCTION</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>RECURSIVE ARRAY 2</title><link>http://backtracing.blogspot.com/2011/01/recursive-array-2.html</link><author>noreply@blogger.com (cavarotech)</author><pubDate>Thu, 20 Jan 2011 00:17:00 -0800</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-4623774382190419200.post-4660444898789662589</guid><description>'----- Program Utama -----&lt;br /&gt;
CALL InputVectorDariRandom(x,N)&lt;br /&gt;
CALL CetakVectorKeSamping(x,N,"x","Isi Vektor :")&lt;br /&gt;
document.write "Nilai Maximal = " &amp; maxHC(x,N) &amp; "&lt;BR&gt;"&lt;br /&gt;
document.write "Nilai Maximal = " &amp; maxR(x,1,N) &amp; "&lt;BR&gt;"&lt;br /&gt;
 &lt;br /&gt;
'----- Koleksi Modul -----&lt;br /&gt;
SUB InputVectorDariKeyboard(byRef v(), byRef N)&lt;br /&gt;
 N = cint(InputBox("Masukkan Jumlah Elemen Array"))&lt;br /&gt;
 REDIM v(N)&lt;br /&gt;
 FOR i=1 TO N&lt;br /&gt;
  v(i) = cint(InputBox("Masukkan Isi Elemen ke-" &amp; i))&lt;br /&gt;
 NEXT&lt;br /&gt;
END SUB&lt;br /&gt;
 &lt;br /&gt;
SUB InputVectorDariRandom(byRef v(), byRef N)&lt;br /&gt;
 N = cint(InputBox("Masukkan Jumlah Elemen Array"))&lt;br /&gt;
 REDIM v(N)&lt;br /&gt;
 FOR i=1 TO N&lt;br /&gt;
  v(i) = 100 + int(rnd*900)&lt;br /&gt;
 NEXT&lt;br /&gt;
END SUB&lt;br /&gt;
 &lt;br /&gt;
SUB CetakVector(byVal v(), byVal N, byVal nama, byVal message)&lt;br /&gt;
 document.write "&lt;BR&gt;" &amp; message &amp; "&lt;BR&gt;"&lt;br /&gt;
 FOR i=1 TO N&lt;br /&gt;
  document.write nama &amp; "(" &amp; i &amp; ") = " &amp; v(i) &amp; "&lt;BR&gt;"&lt;br /&gt;
 NEXT&lt;br /&gt;
END SUB&lt;br /&gt;
 &lt;br /&gt;
SUB CetakVectorKeSamping(byVal v(), byVal N, byVal nama, byVal message)&lt;br /&gt;
 document.write "&lt;BR&gt;" &amp; message &amp; "&lt;BR&gt;"&lt;br /&gt;
 FOR i=1 TO N&lt;br /&gt;
  document.write v(i) &amp; ", "&lt;br /&gt;
 NEXT&lt;br /&gt;
 document.write "&lt;BR&gt;"&lt;br /&gt;
END SUB&lt;br /&gt;
 &lt;br /&gt;
FUNCTION maxHC(byVal v(), byVal N)&lt;br /&gt;
 maxHC =  -1&lt;br /&gt;
 FOR c=1 TO N&lt;br /&gt;
  IF v(c)&gt;maxHC THEN maxHC=v(c)&lt;br /&gt;
 NEXT&lt;br /&gt;
END FUNCTION&lt;br /&gt;
 &lt;br /&gt;
FUNCTION maxR(byVal v(), byVal aw, byVal ak)&lt;br /&gt;
 IF aw=ak THEN&lt;br /&gt;
  maxR = v(aw)&lt;br /&gt;
 ELSE&lt;br /&gt;
  tgh = (aw+ak)\2&lt;br /&gt;
  maxKiri = maxR(v,aw,tgh)&lt;br /&gt;
  maxKanan = maxR(v,tgh+1,ak)&lt;br /&gt;
  IF maxKiri&gt;maxKanan THEN maxR = maxKiri ELSE maxR=maxKanan&lt;br /&gt;
 END IF&lt;br /&gt;
END FUNCTION</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>RECURSIVE ARRAY 1</title><link>http://backtracing.blogspot.com/2011/01/recursive-array-1.html</link><author>noreply@blogger.com (cavarotech)</author><pubDate>Thu, 20 Jan 2011 00:16:00 -0800</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-4623774382190419200.post-8961689752607686857</guid><description>'----- Program Utama -----&lt;br /&gt;
CALL InputVectorDariRandom(x,N)&lt;br /&gt;
CALL CetakVectorKeSamping(x,N,"x","Isi Vektor :")&lt;br /&gt;
document.write "Nilai Maximal = " &amp; maxHC(x,N) &amp; "&lt;BR&gt;"&lt;br /&gt;
 &lt;br /&gt;
'----- Koleksi Modul -----&lt;br /&gt;
SUB InputVectorDariKeyboard(byRef v(), byRef N)&lt;br /&gt;
 N = cint(InputBox("Masukkan Jumlah Elemen Array"))&lt;br /&gt;
 REDIM v(N)&lt;br /&gt;
 FOR i=1 TO N&lt;br /&gt;
  v(i) = cint(InputBox("Masukkan Isi Elemen ke-" &amp; i))&lt;br /&gt;
 NEXT&lt;br /&gt;
END SUB&lt;br /&gt;
 &lt;br /&gt;
SUB InputVectorDariRandom(byRef v(), byRef N)&lt;br /&gt;
 N = cint(InputBox("Masukkan Jumlah Elemen Array"))&lt;br /&gt;
 REDIM v(N)&lt;br /&gt;
 FOR i=1 TO N&lt;br /&gt;
  v(i) = 100 + int(rnd*900)&lt;br /&gt;
 NEXT&lt;br /&gt;
END SUB&lt;br /&gt;
 &lt;br /&gt;
SUB CetakVector(byVal v(), byVal N, byVal nama, byVal message)&lt;br /&gt;
 document.write "&lt;BR&gt;" &amp; message &amp; "&lt;BR&gt;"&lt;br /&gt;
 FOR i=1 TO N&lt;br /&gt;
  document.write nama &amp; "(" &amp; i &amp; ") = " &amp; v(i) &amp; "&lt;BR&gt;"&lt;br /&gt;
 NEXT&lt;br /&gt;
END SUB&lt;br /&gt;
 &lt;br /&gt;
SUB CetakVectorKeSamping(byVal v(), byVal N, byVal nama, byVal message)&lt;br /&gt;
 document.write "&lt;BR&gt;" &amp; message &amp; "&lt;BR&gt;"&lt;br /&gt;
 FOR i=1 TO N&lt;br /&gt;
  document.write v(i) &amp; ", "&lt;br /&gt;
 NEXT&lt;br /&gt;
 document.write "&lt;BR&gt;"&lt;br /&gt;
END SUB&lt;br /&gt;
 &lt;br /&gt;
FUNCTION maxHC(byVal v(), byVal N)&lt;br /&gt;
 maxHC =  -1&lt;br /&gt;
 FOR c=1 TO N&lt;br /&gt;
  IF v(c)&gt;maxHC THEN maxHC=v(c)&lt;br /&gt;
 NEXT&lt;br /&gt;
END FUNCTION</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>RECURSIVE 6</title><link>http://backtracing.blogspot.com/2011/01/recursive-6.html</link><author>noreply@blogger.com (cavarotech)</author><pubDate>Thu, 20 Jan 2011 00:16:00 -0800</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-4623774382190419200.post-409088022649035226</guid><description>B = cint(InputBox("Mencari Bilangan Fibonacci ke berapa?"))&lt;br /&gt;
document.write "Bilangan Fibonacci ke-" &amp; B &amp; " adalah " &amp; Fibo(B) &amp; "&lt;BR&gt;"&lt;br /&gt;
 &lt;br /&gt;
FUNCTION Fibo(byVal N)&lt;br /&gt;
 IF N=1 THEN&lt;br /&gt;
  Fibo = 0&lt;br /&gt;
 ELSEIF N=2 THEN&lt;br /&gt;
  Fibo = 1&lt;br /&gt;
 ELSE&lt;br /&gt;
  Fibo = Fibo(N-2) + Fibo(N-1)&lt;br /&gt;
 END IF&lt;br /&gt;
END FUNCTION</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>RECURSIVE 5</title><link>http://backtracing.blogspot.com/2011/01/recursive-5.html</link><author>noreply@blogger.com (cavarotech)</author><pubDate>Thu, 20 Jan 2011 00:15:00 -0800</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-4623774382190419200.post-707162305564407944</guid><description>B = cint(InputBox("Masukkan Bilangan"))&lt;br /&gt;
document.write "Factorial dari " &amp; B &amp; " adalah " &amp; Fact(B) &amp; "&lt;BR&gt;"&lt;br /&gt;
CALL CalcFact(B,H)&lt;br /&gt;
document.write "Factorial dari " &amp; B &amp; " adalah " &amp; H &amp; "&lt;BR&gt;"&lt;br /&gt;
 &lt;br /&gt;
FUNCTION Fact(byVal N)&lt;br /&gt;
 IF N&gt;0 THEN&lt;br /&gt;
  Fact = N * Fact(N-1)&lt;br /&gt;
 ELSE&lt;br /&gt;
  Fact = 1&lt;br /&gt;
 END IF&lt;br /&gt;
END FUNCTION&lt;br /&gt;
 &lt;br /&gt;
SUB CalcFact(byVal N, byRef F)&lt;br /&gt;
 IF N&gt;0 THEN&lt;br /&gt;
  CALL CalcFact(N-1, temp)&lt;br /&gt;
  F = N * temp&lt;br /&gt;
 ELSE&lt;br /&gt;
  F = 1&lt;br /&gt;
 END IF&lt;br /&gt;
END SUB</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>RECURSIVE 4</title><link>http://backtracing.blogspot.com/2011/01/recursive-4.html</link><author>noreply@blogger.com (cavarotech)</author><pubDate>Thu, 20 Jan 2011 00:15:00 -0800</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-4623774382190419200.post-5185927744589692700</guid><description>B = cint(InputBox("Masukkan Bilangan"))&lt;br /&gt;
document.write "Factorial dari " &amp; B &amp; " adalah " &amp; Fact(B)&lt;br /&gt;
 &lt;br /&gt;
FUNCTION Fact(byVal N)&lt;br /&gt;
 IF N&gt;0 THEN&lt;br /&gt;
  Fact = N * Fact(N-1)&lt;br /&gt;
 ELSE&lt;br /&gt;
  Fact = 1&lt;br /&gt;
 END IF&lt;br /&gt;
END FUNCTION</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>habis di bagi tidak boleh kembar</title><link>http://backtracing.blogspot.com/2011/01/habis-di-bagi-tidak-boleh-kembar.html</link><author>noreply@blogger.com (cavarotech)</author><pubDate>Thu, 20 Jan 2011 00:10:00 -0800</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-4623774382190419200.post-2987937274887373752</guid><description>dim unused(9)&lt;br /&gt;
FOR i=1 TO 9&lt;br /&gt;
 unused(i)=TRUE&lt;br /&gt;
NEXT&lt;br /&gt;
sukses = false&lt;br /&gt;
bil = 0&lt;br /&gt;
CALL Try(1, sukses)&lt;br /&gt;
IF sukses=TRUE THEN&lt;br /&gt;
 document.write "Bilangan yang Dicari adalah " &amp; bil &amp; "&lt;BR&gt;"&lt;br /&gt;
ELSE&lt;br /&gt;
 document.write "Tidak Ada Bilangan dengan Sifat Tersebut!!!&lt;BR&gt;"&lt;br /&gt;
END IF&lt;br /&gt;
&lt;br /&gt;
SUB Try(byVal i, byRef sukses)&lt;br /&gt;
 p = 0&lt;br /&gt;
 DO&lt;br /&gt;
  p = p + 1&lt;br /&gt;
  suksesBerikut = FALSE&lt;br /&gt;
  IF unused(p) = TRUE AND ((bil*10+p) MOD i = 0) THEN&lt;br /&gt;
     bil = bil * 10 + p&lt;br /&gt;
     unused(p) = FALSE&lt;br /&gt;
     IF i&lt;9 THEN&lt;br /&gt;
        CALL Try(i+1, suksesBerikut)&lt;br /&gt;
        IF suksesBerikut = FALSE THEN&lt;br /&gt;
        bil = bil \ 10&lt;br /&gt;
        unused(p) = TRUE&lt;br /&gt;
        END IF&lt;br /&gt;
     ELSE&lt;br /&gt;
        suksesBerikut = TRUE&lt;br /&gt;
     END IF&lt;br /&gt;
  END IF&lt;br /&gt;
 LOOP UNTIL suksesBerikut = TRUE OR p = 9&lt;br /&gt;
    sukses = suksesBerikut&lt;br /&gt;
END SUB</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>habis di bagi</title><link>http://backtracing.blogspot.com/2011/01/habis-di-bagi.html</link><author>noreply@blogger.com (cavarotech)</author><pubDate>Thu, 20 Jan 2011 00:10:00 -0800</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-4623774382190419200.post-8184110612522615890</guid><description>sukses = false&lt;br /&gt;
bil = 0&lt;br /&gt;
CALL Try(1, sukses)&lt;br /&gt;
IF sukses=TRUE THEN&lt;br /&gt;
 document.write "Bilangan yang Dicari adalah " &amp; bil &amp; "&lt;BR&gt;"&lt;br /&gt;
ELSE&lt;br /&gt;
 document.write "Tidak Ada Bilangan dengan Sifat Tersebut!!!&lt;BR&gt;"&lt;br /&gt;
END IF&lt;br /&gt;
&lt;br /&gt;
SUB Try(byVal i, byRef sukses)&lt;br /&gt;
 p = 0&lt;br /&gt;
 DO&lt;br /&gt;
  p = p + 1&lt;br /&gt;
  suksesBerikut = FALSE&lt;br /&gt;
  IF (bil*10+p) MOD i = 0 THEN&lt;br /&gt;
     bil = bil * 10 + p&lt;br /&gt;
     IF i&lt;9 THEN&lt;br /&gt;
        CALL Try(i+1, suksesBerikut)&lt;br /&gt;
        IF suksesBerikut = FALSE THEN&lt;br /&gt;
        bil = bil \ 10&lt;br /&gt;
        END IF&lt;br /&gt;
     ELSE&lt;br /&gt;
        suksesBerikut = TRUE&lt;br /&gt;
     END IF&lt;br /&gt;
  END IF&lt;br /&gt;
 LOOP UNTIL suksesBerikut = TRUE OR p = 9&lt;br /&gt;
    sukses = suksesBerikut&lt;br /&gt;
END SUB</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>eight queen papan</title><link>http://backtracing.blogspot.com/2011/01/eight-queen-papan.html</link><author>noreply@blogger.com (cavarotech)</author><pubDate>Thu, 20 Jan 2011 00:06:00 -0800</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-4623774382190419200.post-6205379720448473725</guid><description>DIM x(8),a(8),b(15),c(15)&lt;br /&gt;
&lt;br /&gt;
FOR i=1 TO 8&lt;br /&gt;
 x(i)=0&lt;br /&gt;
 a(i)=TRUE&lt;br /&gt;
NEXT&lt;br /&gt;
&lt;br /&gt;
FOR i=1 TO 15&lt;br /&gt;
 b(i)=TRUE&lt;br /&gt;
 c(i)=TRUE&lt;br /&gt;
NEXT&lt;br /&gt;
&lt;br /&gt;
sukses = false&lt;br /&gt;
CALL Try(1, sukses)&lt;br /&gt;
IF sukses=TRUE THEN&lt;br /&gt;
 CALL CetakPapan()&lt;br /&gt;
ELSE&lt;br /&gt;
 document.write "Tidak Ada Solusinya!!!&lt;BR&gt;"&lt;br /&gt;
END IF&lt;br /&gt;
&lt;br /&gt;
SUB Try(byVal baris, byRef sukses)&lt;br /&gt;
 kolom = 0&lt;br /&gt;
 DO&lt;br /&gt;
  kolom = kolom + 1&lt;br /&gt;
  suksesBerikut = FALSE&lt;br /&gt;
  IF a(kolom) AND b(baris+kolom-1) AND c(kolom-baris+8) THEN&lt;br /&gt;
     x(baris)=kolom&lt;br /&gt;
     a(kolom)=FALSE&lt;br /&gt;
     b(baris+kolom-1)=FALSE&lt;br /&gt;
     c(kolom-baris+8)=FALSE&lt;br /&gt;
     IF baris&lt;8 THEN
        CALL Try(baris+1, suksesBerikut)
        IF suksesBerikut = FALSE THEN
        x(baris)=0
        a(kolom)=TRUE
        b(baris+kolom-1)=TRUE
        c(kolom-baris+8)=TRUE
        END IF
     ELSE
        suksesBerikut = TRUE
     END IF
  END IF
 LOOP UNTIL suksesBerikut = TRUE OR kolom = 8
    sukses = suksesBerikut
END SUB

SUB CetakPapan()
 document.write "&lt;u&gt;Papan Catur :&lt;/U&gt;&lt;BR&gt;"&lt;br /&gt;
 document.write "&lt;TABLE BORDER=10&gt;"
 FOR i=1 TO 8
  document.write "&lt;TR&gt;"
  FOR j=1 TO 8
   IF j=x(i) THEN
    document.write "&lt;TD&gt; Q &lt;/TD&gt;"
   ELSE
    document.write "&lt;TD&gt; &amp;nbsp; &lt;/TD&gt;"
   END IF
  NEXT
  document.write "&lt;/TR&gt;"
 NEXT
 document.write "&lt;/TABLE&gt;"&lt;br /&gt;
END SUB</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>backtracking</title><link>http://backtracing.blogspot.com/2011/01/backtracking.html</link><author>noreply@blogger.com (cavarotech)</author><pubDate>Thu, 20 Jan 2011 00:05:00 -0800</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-4623774382190419200.post-5088087494256046036</guid><description>DIM x(8),a(8),b(15),c(15)&lt;br /&gt;
&lt;br /&gt;
FOR i=1 TO 8&lt;br /&gt;
 x(i)=0&lt;br /&gt;
 a(i)=TRUE&lt;br /&gt;
NEXT&lt;br /&gt;
&lt;br /&gt;
FOR i=1 TO 15&lt;br /&gt;
 b(i)=TRUE&lt;br /&gt;
 c(i)=TRUE&lt;br /&gt;
NEXT&lt;br /&gt;
&lt;br /&gt;
sukses = false&lt;br /&gt;
CALL Try(1, sukses)&lt;br /&gt;
IF sukses=TRUE THEN&lt;br /&gt;
 CALL CetakPapan()&lt;br /&gt;
ELSE&lt;br /&gt;
 document.write "Tidak Ada Solusinya!!!&lt;BR&gt;"&lt;br /&gt;
END IF&lt;br /&gt;
&lt;br /&gt;
SUB Try(byVal baris, byRef sukses)&lt;br /&gt;
 kolom = 0&lt;br /&gt;
 DO&lt;br /&gt;
  kolom = kolom + 1&lt;br /&gt;
  suksesBerikut = FALSE&lt;br /&gt;
  IF a(kolom) AND b(baris+kolom-1) AND c(kolom-baris+8) THEN&lt;br /&gt;
     x(baris)=kolom&lt;br /&gt;
     a(kolom)=FALSE&lt;br /&gt;
     b(baris+kolom-1)=FALSE&lt;br /&gt;
     c(kolom-baris+8)=FALSE&lt;br /&gt;
     IF baris&lt;8 THEN
        CALL Try(baris+1, suksesBerikut)
        IF suksesBerikut = FALSE THEN
        x(baris)=0
        a(kolom)=TRUE
        b(baris+kolom-1)=TRUE
        c(kolom-baris+8)=TRUE
        END IF
     ELSE
        suksesBerikut = TRUE
     END IF
  END IF
 LOOP UNTIL suksesBerikut = TRUE OR kolom = 8
    sukses = suksesBerikut
END SUB

SUB CetakPapan()
 document.write "&lt;u&gt;Papan Catur :&lt;/U&gt;&lt;BR&gt;"&lt;br /&gt;
 FOR i=1 TO 8&lt;br /&gt;
  document.write x(i) &amp; ", "&lt;br /&gt;
 NEXT&lt;br /&gt;
 document.write "&lt;BR&gt;"&lt;br /&gt;
END SUB</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item></channel></rss>