<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-6390047005201701735</id><updated>2012-02-02T18:37:12.534+07:00</updated><title type='text'>PROGRAMMING STUDIES</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://programstudies.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://programstudies.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>It's Gonna Be Me</name><uri>http://www.blogger.com/profile/07321805699767978812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>76</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-6390047005201701735.post-7690572215417124832</id><published>2012-01-20T18:47:00.001+07:00</published><updated>2012-01-20T19:49:40.601+07:00</updated><title type='text'>Wireless security</title><content type='html'>Wireless security is the prevention of unauthorized access or damage to computers using wireless networks.&lt;br /&gt;&lt;br /&gt;&lt;!-- In-Text customization --&gt;&lt;br /&gt;&lt;script type='text/javascript'&gt;     var _phLinkColor = '#0000EE'; // Link Color&lt;/script&gt;&lt;br /&gt;               &lt;br /&gt;Without properly setting up, a user sets themselves up for certain risks that could be prevented or at least halted. Using even the most basic form of protection is better than nothing. The most common types of wireless security are Wired Equivalent Privacy (WEP) and Wi-Fi Protected Access (WPA). WEP is one of the least secure forms of security. A network that is secured with WEP has been cracked in 3 minutes by the FBI. WEP is an old IEEE 802.11 standard from 1999 which was outdated in 2003 by WPA or Wi-Fi Protected Access. WPA was a quick alternative for those wishing to get away from the problematic WEP security. There are some pieces of hardware that cannot support WPA2 without being replaced or having the firmware upgraded. WPA2 uses a encryption device which encrypts the network with a 256 bit key. This adds a multitude of security more than WEP does to the wireless network.&lt;br /&gt;&lt;br /&gt;Many laptop computers have wireless cards pre-installed. The ability to enter a network while mobile has great benefits. However, wireless networking is prone to some security issues. Crackers have found wireless networks relatively easy to break into, and even use wireless technology to crack into wired networks. As a result, it's very important that enterprises define effective wireless security policies that guard against unauthorized access to important resources. Wireless Intrusion Prevention Systems (WIPS) or Wireless Intrusion Detection Systems (WIDS) are commonly used to enforce wireless security policies.&lt;br /&gt;&lt;br /&gt;The risks to users of wireless technology have increased as the service has become more popular. There were relatively few dangers when wireless technology was first introduced. Crackers had not yet had time to latch on to the new technology and wireless was not commonly found in the work place. However, there are a great number of security risks associated with the current wireless protocols and encryption methods, and in the carelessness and ignorance that exists at the user and corporate IT level. Cracking methods have become much more sophisticated and innovative with wireless. Cracking has also become much easier and more accessible with easy-to-use Windows or Linux-based tools being made available on the web at no charge.&lt;br /&gt;&lt;br /&gt;Some organizations that have no wireless access points installed do not feel that they need to address wireless security concerns. In-Stat MDR and META Group have estimated that 95% of all corporate laptop computers that were planned to be purchased in 2005 were equipped with wireless. Issues can arise in a supposedly non-wireless organization when a wireless laptop is plugged into the corporate network. A cracker could sit out in the parking lot and gather info from it through laptops and/or other devices as handhelds, or even break in through this wireless card-equipped laptop and gain access to the wired network.&lt;br /&gt;(wikipedia.org)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6390047005201701735-7690572215417124832?l=programstudies.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programstudies.blogspot.com/feeds/7690572215417124832/comments/default' title='Poskan Komentar'/><link rel='replies' type='text/html' href='http://programstudies.blogspot.com/2012/01/wireless-security.html#comment-form' title='1 Komentar'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/7690572215417124832'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/7690572215417124832'/><link rel='alternate' type='text/html' href='http://programstudies.blogspot.com/2012/01/wireless-security.html' title='Wireless security'/><author><name>It's Gonna Be Me</name><uri>http://www.blogger.com/profile/07321805699767978812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6390047005201701735.post-6393715172342590931</id><published>2012-01-20T18:42:00.003+07:00</published><updated>2012-01-20T19:51:05.922+07:00</updated><title type='text'>Network Security Concepts</title><content type='html'>&lt;!-- Affinity Primary Site Code (Required) --&gt;&lt;br /&gt;&lt;script type='text/javascript'&gt;     var _phPubId = 'oed12';     var url = 'http://ph.affinity.com/i/ph-i.js?' + 'h='+escape(location.hostname) + '&amp;amp;pb=' + escape(_phPubId);     document.write(unescape("%3Cscript src='" + url + "' type='text/javascript'%3E%3C/script%3E"));&lt;/script&gt;&lt;br /&gt;Network security starts with authenticating the user, commonly with a username and a password. Since this requires just one detail authenticating the user name —i.e. the password, which is something the user 'knows'— this is sometimes termed one-factor authentication. With two-factor authentication, something the user 'has' is also used (e.g. a security token or 'dongle', an ATM card, or a mobile phone); and with three-factor authentication, something the user 'is' is also used (e.g. a fingerprint or retinal scan).&lt;br /&gt;&lt;br /&gt;Once authenticated, a firewall enforces access policies such as what services are allowed to be accessed by the network users. Though effective to prevent unauthorized access, this component may fail to check potentially harmful content such as computer worms or Trojans being transmitted over the network. Anti-virus software or an intrusion prevention system (IPS) help detect and inhibit the action of such malware. An anomaly-based intrusion detection system may also monitor the network and traffic for unexpected (i.e. suspicious) content or behavior and other anomalies to protect resources, e.g. from denial of service attacks or an employee accessing files at strange times. Individual events occurring on the network may be logged for audit purposes and for later high-level analysis.&lt;br /&gt;&lt;br /&gt;Communication between two hosts using a network may be encrypted to maintain privacy.&lt;br /&gt;&lt;br /&gt;Honeypots, essentially decoy network-accessible resources, may be deployed in a network as surveillance and early-warning tools, as the honeypots are not normally accessed for legitimate purposes. Techniques used by the attackers that attempt to compromise these decoy resources are studied during and after an attack to keep an eye on new exploitation techniques. Such analysis may be used to further tighten security of the actual network being protected by the honeypot.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6390047005201701735-6393715172342590931?l=programstudies.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programstudies.blogspot.com/feeds/6393715172342590931/comments/default' title='Poskan Komentar'/><link rel='replies' type='text/html' href='http://programstudies.blogspot.com/2012/01/network-security-concepts.html#comment-form' title='0 Komentar'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/6393715172342590931'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/6393715172342590931'/><link rel='alternate' type='text/html' href='http://programstudies.blogspot.com/2012/01/network-security-concepts.html' title='Network Security Concepts'/><author><name>It's Gonna Be Me</name><uri>http://www.blogger.com/profile/07321805699767978812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6390047005201701735.post-7020402172797644807</id><published>2012-01-07T19:43:00.001+07:00</published><updated>2012-01-10T12:07:25.944+07:00</updated><title type='text'>Communications protocols and network programming</title><content type='html'>A communications protocol defines the formats and rules for exchanging information via a network and typically comprises a complete protocol suite which describes the protocols used at various usage levels. An interesting feature of communications protocols is that they may be – and in fact very often are – stacked above each other, which means that one is used to carry the other. The example for this is HTTP running over TCP over IP over IEEE 802.11, where the second and third are members of the Internet Protocol Suite, while the last is a member of the Ethernet protocol suite. This is the stacking which exists between the wireless router and the home user's personal computer when surfing the World Wide Web.&lt;br /&gt;&lt;br /&gt;Communication protocols have themselves various properties, such as whether they are connection-oriented versus connectionless, whether they use circuit mode or packet switching, or whether they use hierarchical or flat addressing.&lt;br /&gt;&lt;br /&gt;There exist a multitude of communication protocols, a few of which are described below.&lt;br /&gt;Ethernet is a family of connectionless protocols used in LANs, described by a set of standards together called IEEE 802 published by the Institute of Electrical and Electronics Engineers. It has a flat addressing scheme and is mostly situated at levels 1 and 2 of the OSI model. For home users today, the most well-known member of this protocol family is IEEE 802.11, otherwise known as Wireless LAN (WLAN). However, the complete protocol suite deals with a multitude of networking aspects not only for home use, but especially when the technology is deployed to support a diverse range of business needs. MAC bridging (IEEE 802.1D) deals with the routing of Ethernet packets using a Spanning Tree Protocol, IEEE 802.1Q describes VLANs, and IEEE 802.1X defines a port-based Network Access Control protocol which forms the basis for the authentication mechanisms used in VLANs, but also found in WLANs – it is what the home user sees when they have to enter a "wireless access key".&lt;br /&gt;&lt;br /&gt;The Internet Protocol Suite, often also called TCP/IP, is the foundation of all modern internetworking. It offers connection-less as well as connection-oriented services over an inherently unreliable network traversed by datagram transmission at the Internet protocol (IP) level. At its core, the protocol suite defines the addressing, identification, and routing specification in form of the traditional Internet Protocol Version 4 (IPv4) and IPv6, the next generation of the protocol with a much enlarged addressing capability.&lt;br /&gt;&lt;br /&gt;Synchronous Optical NETworking (SONET) and Synchronous Digital Hierarchy (SDH) are standardized multiplexing protocols that transfer multiple digital bit streams over optical fiber using lasers. They were originally designed to transport circuit mode communications from a variety of different sources, primarily to support real-time, uncompressed, circuit-switched voice encoded in PCM format. However, due to its protocol neutrality and transport-oriented features, SONET/SDH also was the obvious choice for transporting Asynchronous Transfer Mode (ATM) frames.&lt;br /&gt;&lt;br /&gt;Asynchronous Transfer Mode (ATM) is a switching technique for telecommunication networks. It uses asynchronous time-division multiplexing and encodes data into small, fixed-sized cells. This differs from other protocols such as the Internet Protocol Suite or Ethernet that use variable sized packets or frames. ATM has similarity with both circuit and packet switched networking. This makes it a good choice for a network that must handle both traditional high-throughput data traffic, and real-time, low-latency content such as voice and video. ATM uses a connection-oriented model in which a virtual circuit must be established between two endpoints before the actual data exchange begins.&lt;br /&gt;&lt;br /&gt;While the role of ATM is diminishing in favor of next-generation networks, it still plays a role in the last mile, which is the connection between an Internet service provider and the home user. For an interesting write-up of the technologies involved, including the deep stacking of communications protocols used, see.&lt;br /&gt;&lt;br /&gt;Computer network programming involves writing computer programs that communicate with each other across a computer network. Different programs must be written for the client process, which initiates the communication, and for the server process, which waits for the communication to be initiated. Both endpoints of the communication flow are implemented as network sockets; hence network programming is basically socket programming.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6390047005201701735-7020402172797644807?l=programstudies.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programstudies.blogspot.com/feeds/7020402172797644807/comments/default' title='Poskan Komentar'/><link rel='replies' type='text/html' href='http://programstudies.blogspot.com/2012/01/communications-protocols-and-network.html#comment-form' title='0 Komentar'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/7020402172797644807'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/7020402172797644807'/><link rel='alternate' type='text/html' href='http://programstudies.blogspot.com/2012/01/communications-protocols-and-network.html' title='Communications protocols and network programming'/><author><name>It's Gonna Be Me</name><uri>http://www.blogger.com/profile/07321805699767978812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6390047005201701735.post-3100564970430412377</id><published>2012-01-06T20:15:00.002+07:00</published><updated>2012-01-20T19:56:56.342+07:00</updated><title type='text'>Trees</title><content type='html'>The next major set of data structures belongs to what's called Trees. They are called that, because if you try to visualize the structure, it kind of looks like a tree (root, branches, and leafs). Trees are node based data structures, meaning that they're made out of small parts called nodes. You already know what a node is, and used one to build a linked list. Tree Nodes have two or more child nodes; unlike our list node, which only had one child.&lt;br /&gt;&lt;!-- Affinity Ad Cloud Placeholder and Customization Code (Required) --&gt;&lt;br /&gt;&lt;script type='text/javascript'&gt;     var _phPubId       = 'oed12';     var _phWidth       = '180';     var _phHeight      = '150';     var _phBgColor     = '#EBEBEB'; // For background color     var _phBorderColor = '#999999'; // For border color     var _phTextColor1  = '#006699'; // For Link 1 color     var _phTextColor2  = '#333333'; // For Link 2 color     var url = 'http://ph.affinity.com/ph-adcloud-m.js?' + 'h='+escape(location.hostname) + '&amp;amp;pb=' + escape(_phPubId);     document.write(unescape("%3Cscript src='" + url + "' type='text/javascript'%3E%3C/script%3E"));&lt;/script&gt; &lt;br /&gt;Trees are named by the number of children their nodes have. For example, if a tree node has two children, it is called a binary tree. If it has three children, it is called tertiary tree. If it has four children, it is called a quad tree, and so on. Fortunately, to simplify things, we only need binary trees. With binary trees, we can simulate any tree; so the need for other types of trees only becomes a matter of simplicity for visualization.&lt;br /&gt;&lt;br /&gt;Since we'll be working with binary trees, lets write a binary tree node. It's not going to be much different from our pOneChildNode class; actually, it's going to be quite the same, only added support for one more pointer. The source for the follows:&lt;br /&gt;&lt;br /&gt;public class pTwoChildNode{&lt;br /&gt;protected Object data;&lt;br /&gt;protected pTwoChildNode left,right;&lt;br /&gt;&lt;br /&gt;public pTwoChildNode(){&lt;br /&gt;data = null;&lt;br /&gt;left = right = null;&lt;br /&gt;}&lt;br /&gt;public pTwoChildNode(Object d){&lt;br /&gt;data = d;&lt;br /&gt;left = right = null;&lt;br /&gt;}&lt;br /&gt;public void setLeft(pTwoChildNode l){&lt;br /&gt;left = l;&lt;br /&gt;}&lt;br /&gt;public void setRight(pTwoChildNode r){&lt;br /&gt;right = r;&lt;br /&gt;}&lt;br /&gt;public void setData(Object d){&lt;br /&gt;data = d;&lt;br /&gt;}&lt;br /&gt;public pTwoChildNode getLeft(){&lt;br /&gt;return left;&lt;br /&gt;}&lt;br /&gt;public pTwoChildNode getRight(){&lt;br /&gt;return right;&lt;br /&gt;}&lt;br /&gt;public Object getData(){&lt;br /&gt;return data;&lt;br /&gt;}&lt;br /&gt;public String toString(){&lt;br /&gt;return ""+data;&lt;br /&gt;}&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;This node is so much similar to the previous node we did, that I'm not even going to cover this one. (I assume you'll figure it out by simply looking at the source) The children of the node are named left and right; these will be the left branch of the node and a right branch. If a node has no children, it is called a leaf node. If a node has no parent (it's the father of every node), it is called the root of the tree. This weird terminology comes from the tree analogy, and from the family tree analogy.&lt;br /&gt;&lt;br /&gt;Some implementations of the tree node, might also have a back pointer to the parent node, but for what we'll be doing with the nodes, it's not necessary. The next section will talk about a generic binary tree which will be later used to create something cool. theparticle.com&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6390047005201701735-3100564970430412377?l=programstudies.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programstudies.blogspot.com/feeds/3100564970430412377/comments/default' title='Poskan Komentar'/><link rel='replies' type='text/html' href='http://programstudies.blogspot.com/2012/01/trees.html#comment-form' title='0 Komentar'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/3100564970430412377'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/3100564970430412377'/><link rel='alternate' type='text/html' href='http://programstudies.blogspot.com/2012/01/trees.html' title='Trees'/><author><name>It's Gonna Be Me</name><uri>http://www.blogger.com/profile/07321805699767978812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6390047005201701735.post-765374270879749491</id><published>2012-01-05T18:37:00.001+07:00</published><updated>2012-01-10T12:08:33.041+07:00</updated><title type='text'>Computer Network</title><content type='html'>A computer network, often simply referred to as a network, is a collection of hardware components and computers interconnected by communication channels that allow sharing of resources and information. Where at least one process in one device is able to send/receive data to/from at least one process residing in a remote device, then the two devices are said to be in a network.&lt;br /&gt;&lt;br /&gt;Networks may be classified according to a wide variety of characteristics such as the medium used to transport the data, communications protocol used, scale, topology, and organizational scope.&lt;br /&gt;&lt;br /&gt;Communications protocols define the rules and data formats for exchanging information in a computer network, and provide the basis for network programming. Well-known communications protocols are Ethernet, a hardware and Link Layer standard that is ubiquitous in local area networks, and the Internet Protocol Suite, which defines a set of protocols for internetworking, i.e. for data communication between multiple networks, as well as host-to-host data transfer, and application-specific data transmission formats.&lt;br /&gt;&lt;br /&gt;Computer networking is sometimes considered a sub-discipline of electrical engineering, telecommunications, computer science, information technology or computer engineering, since it relies upon the theoretical and practical application of these disciplines.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6390047005201701735-765374270879749491?l=programstudies.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programstudies.blogspot.com/feeds/765374270879749491/comments/default' title='Poskan Komentar'/><link rel='replies' type='text/html' href='http://programstudies.blogspot.com/2012/01/computer-network.html#comment-form' title='0 Komentar'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/765374270879749491'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/765374270879749491'/><link rel='alternate' type='text/html' href='http://programstudies.blogspot.com/2012/01/computer-network.html' title='Computer Network'/><author><name>It's Gonna Be Me</name><uri>http://www.blogger.com/profile/07321805699767978812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6390047005201701735.post-9083573110553044451</id><published>2012-01-03T12:11:00.005+07:00</published><updated>2012-01-10T12:08:48.090+07:00</updated><title type='text'>Nodes</title><content type='html'>The other type of data structures are what's called Node based data structures. Instead of storing data in it's raw format, Node based data structures store nodes, which in turn store the data. Think of nodes as being elements, which may have one or more pointers to other nodes.&lt;br /&gt;&lt;br /&gt;Yes, I did say the "pointer" word. Many people think that there are no pointers in Java, but just because you don't see them directly, doesn't mean they're not there. In fact, you can treat any object as a pointer.&lt;br /&gt;&lt;br /&gt;Thus, the Node structure should have a data element, and a reference to another node (or nodes). Those other nodes which are referenced to, are called child nodes. The node itself is called the parent node (or sometimes a "father" node) in reference to it's children. (nice big happy family)&lt;br /&gt;&lt;br /&gt;Well, the best way to visualize a node is to create one, so, lets do it. The node we'll create will be a one child node (it will have only one pointer), and we'll later use it in later sections to build really cool data structures. The source for our one child node follows:&lt;br /&gt;&lt;br /&gt;public class pOneChildNode{&lt;br /&gt;protected Object data;&lt;br /&gt;protected pOneChildNode next;&lt;br /&gt;&lt;br /&gt;public pOneChildNode(){&lt;br /&gt;next = null;&lt;br /&gt;data = null;&lt;br /&gt;}&lt;br /&gt;public pOneChildNode(Object d,pOneChildNode n){&lt;br /&gt;data = d;&lt;br /&gt;next = n;&lt;br /&gt;}&lt;br /&gt;public void setNext(pOneChildNode n){&lt;br /&gt;next = n;&lt;br /&gt;}&lt;br /&gt;public void setData(Object d){&lt;br /&gt;data = d;&lt;br /&gt;}&lt;br /&gt;public pOneChildNode getNext(){&lt;br /&gt;return next;&lt;br /&gt;}&lt;br /&gt;public Object getData(){&lt;br /&gt;return data;&lt;br /&gt;}&lt;br /&gt;public String toString(){&lt;br /&gt;return ""+data;&lt;br /&gt;}&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;Go over the source, notice that it's nothing more than just set and get functions (pretty simple). The two data members are the data and next. The data member holds the data of the node, and next holds the pointer to the next node. Notice that next is of the same type as the class itself; it effectively points to the object of same class!&lt;br /&gt;&lt;br /&gt;The String toString() method is the Java's standard way to print things. If an object wants to be printed in a special way, it will define this method, with instructions on how to print this object. In our case, we just want to print the data. Adding data to a bunch of quotation marks automatically converts it to type String (hopefully, our data will also have a toString() method defined on it). Without this method, we get the actual binary representation of the data members of this class (not a pretty nor meaningful printout).&lt;br /&gt;&lt;br /&gt;Node based data structures provide for dynamic growing and shrinking, and are the key to some complex algorithms (as you'll see later). Now that we know how to implement a Node, lets get to something cool. theparticle.com&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6390047005201701735-9083573110553044451?l=programstudies.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programstudies.blogspot.com/feeds/9083573110553044451/comments/default' title='Poskan Komentar'/><link rel='replies' type='text/html' href='http://programstudies.blogspot.com/2012/01/nodes.html#comment-form' title='0 Komentar'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/9083573110553044451'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/9083573110553044451'/><link rel='alternate' type='text/html' href='http://programstudies.blogspot.com/2012/01/nodes.html' title='Nodes'/><author><name>It's Gonna Be Me</name><uri>http://www.blogger.com/profile/07321805699767978812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6390047005201701735.post-6634169517700416320</id><published>2011-12-26T17:49:00.002+07:00</published><updated>2011-12-26T17:49:52.849+07:00</updated><title type='text'>Flip-Flop Electrinics</title><content type='html'>In electronics, a flip-flop or latch is a circuit that has two stable states and can be used to store state information. The circuit can be made to change state by signals applied to one or more control inputs and will have one or two outputs. It is the basic storage element in sequential logic. Flip-flops and latches are a fundamental building block of digital electronics systems used in computers, communications, and many other types of systems.&lt;br /&gt;&lt;br /&gt;Flip-flops and latches are used as data storage elements. Such data storage can be used for storage of state, and such a circuit is described as sequential logic. When used in a finite-state machine, the output and next state depend not only on its current input, but also on its current state (and hence, previous inputs). It can also be used for counting of pulses, and for synchronizing variably-timed input signals to some reference timing signal.&lt;br /&gt;&lt;br /&gt;Flip-flops can be either simple (transparent or opaque) or clocked (synchronous or edge-triggered); the simple ones are commonly called latches. The word latch is mainly used for storage elements, while clocked devices are described as flip-flops.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6390047005201701735-6634169517700416320?l=programstudies.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programstudies.blogspot.com/feeds/6634169517700416320/comments/default' title='Poskan Komentar'/><link rel='replies' type='text/html' href='http://programstudies.blogspot.com/2011/12/flip-flop-electrinics.html#comment-form' title='0 Komentar'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/6634169517700416320'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/6634169517700416320'/><link rel='alternate' type='text/html' href='http://programstudies.blogspot.com/2011/12/flip-flop-electrinics.html' title='Flip-Flop Electrinics'/><author><name>It's Gonna Be Me</name><uri>http://www.blogger.com/profile/07321805699767978812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6390047005201701735.post-391543466927257608</id><published>2011-12-18T22:20:00.001+07:00</published><updated>2011-12-18T22:20:20.312+07:00</updated><title type='text'>Electronic counter</title><content type='html'>In electronics, counters can be implemented quite easily using register-type circuits such as the flip-flop, and a wide variety of classifications exist:&lt;br /&gt;&lt;br /&gt;    Asynchronous (ripple) counter – changing state bits are used as clocks to subsequent state flip-flops&lt;br /&gt;    Synchronous counter – all state bits change under control of a single clock&lt;br /&gt;    Decade counter – counts through ten states per stage&lt;br /&gt;    Up/down counter – counts both up and down, under command of a control input&lt;br /&gt;    Ring counter – formed by a shift register with feedback connection in a ring&lt;br /&gt;    Johnson counter – a twisted ring counter&lt;br /&gt;    Cascaded counter&lt;br /&gt;&lt;br /&gt;Each is useful for different applications. Usually, counter circuits are digital in nature, and count in natural binary. Many types of counter circuits are available as digital building blocks, for example a number of chips in the 4000 series implement different counters.&lt;br /&gt;&lt;br /&gt;Occasionally there are advantages to using a counting sequence other than the natural binary sequence—such as the binary coded decimal counter, a linear feedback shift register counter, or a Gray-code counter.&lt;br /&gt;&lt;br /&gt;Counters are useful for digital clocks and timers, and in oven timers, VCR clocks, etc.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6390047005201701735-391543466927257608?l=programstudies.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programstudies.blogspot.com/feeds/391543466927257608/comments/default' title='Poskan Komentar'/><link rel='replies' type='text/html' href='http://programstudies.blogspot.com/2011/12/electronic-counter.html#comment-form' title='0 Komentar'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/391543466927257608'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/391543466927257608'/><link rel='alternate' type='text/html' href='http://programstudies.blogspot.com/2011/12/electronic-counter.html' title='Electronic counter'/><author><name>It's Gonna Be Me</name><uri>http://www.blogger.com/profile/07321805699767978812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6390047005201701735.post-6165249379116679748</id><published>2011-12-16T10:25:00.000+07:00</published><updated>2012-01-05T18:14:08.436+07:00</updated><title type='text'>Array Queues</title><content type='html'>A queue is a FIFO (First In, First Out) structure. Anything that's inserted first, will be the first to leave (kind of like the real world queues.) This is totally the opposite of what a stack is. Although that is true, the queue implementation is quite similar to the stack one. It also involves pointers to specific places inside the array.&lt;br /&gt;&lt;br /&gt;    With a queue, we need to maintain two pointers, the start and the end. We'll determine when the queue is empty if start and end point to the same element. To determine if the queue is full (since it's an array), we'll have a boolean variable named full. To insert, we'll add one to the start, and mod (the % operator) with the size of the array. To remove, we'll add one to the end, and mod (the % operator) with the size of the array. Simple? Well, lets write it.&lt;br /&gt;&lt;br /&gt;public class pArrayQueue{&lt;br /&gt;    protected Object[] array;&lt;br /&gt;    protected int start,end;&lt;br /&gt;    protected boolean full;&lt;br /&gt;&lt;br /&gt;    public pArrayQueue(int maxsize){&lt;br /&gt;        array = new Object[maxsize];&lt;br /&gt;        start = end = 0;&lt;br /&gt;        full = false;&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;    public boolean isEmpty(){&lt;br /&gt;        return ((start == end) &amp;&amp; !full);&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;    public void insert(Object o){&lt;br /&gt;        if(!full)&lt;br /&gt;            array[start = (++start % array.length)] = o;&lt;br /&gt;        if(start == end)&lt;br /&gt;            full = true;&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;    public Object remove(){&lt;br /&gt;        if(full)&lt;br /&gt;            full = false;&lt;br /&gt;        else if(isEmpty())&lt;br /&gt;            return null;&lt;br /&gt;        return array[end = (++end % array.length)];&lt;br /&gt;    }&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;    Well, that's the queue class. In it, we have four variables, the array, the start and end, and a boolean full. The constructor pArrayQueue(int maxsize) initializes the queue, and allocates an array for data storage. The isEmpty() method is self explanatory, it checks to see if start and end are equal; this can only be in two situations: when the queue is empty, and when the queue is full. It later checks the full variable and returns whether this queue is empty or not.&lt;br /&gt;&lt;br /&gt;    The insert(Object) method, accepts an Object as a parameter, checks whether the queue is not full, and inserts it. The insert works by adding one to start, and doing a mod with array.length (the size of the array), the resulting location is set to the incoming object. We later check to see if this insertion caused the queue to become full, if yes, we note this by setting the full variable to true.&lt;br /&gt;&lt;br /&gt;    The Object remove() method, doesn't accept any parameters, and returns an Object. It first checks to see if the queue is full, if it is, it sets full to false (since it will not be full after this removal). If it's not full, it checks if the queue is empty, by calling isEmpty(). If it is, the method returns a null, indicating that there's been an error. This is usually a pretty bad bug inside a program, for it to try to remove something from an empty queue, so, you might want to do something more drastic in such a situation (like an exception throw). The method continues by removing the end object from the queue. The removal is done in the same way insertion was done. By adding one to the end, and later mod it with array.length (array size), and that position is returned.&lt;br /&gt;&lt;br /&gt;    There are other implementations of the same thing, a little re-arrangement can make several if() statements disappear. The reason it's like this is because it's pretty easy to think of it. Upon insertion, you add one to start and mod, and upon removal, you add one to end and mod... easy?&lt;br /&gt;&lt;br /&gt;    Well, now that we know how it works, lets actually test it! I've modified that pretty cool test driver from the stack example, and got it ready for this queue, so, here it comes:&lt;br /&gt;&lt;br /&gt;import java.io.*;&lt;br /&gt;import pArrayQueue;&lt;br /&gt;&lt;br /&gt;class pArrayQueueTest{&lt;br /&gt;    public static void main(String[] args){&lt;br /&gt;        pArrayQueue q = new pArrayQueue(10);&lt;br /&gt;        Integer j = null;&lt;br /&gt;        int i;&lt;br /&gt;        System.out.println("starting...");&lt;br /&gt;        for(i=0;i&lt;10;i++){&lt;br /&gt;            j = new Integer((int)(Math.random() * 100));&lt;br /&gt;            q.insert(j);&lt;br /&gt;            System.out.println("insert: " + j);&lt;br /&gt;        }&lt;br /&gt;        while(!q.isEmpty()){&lt;br /&gt;            System.out.println("remove: " + ((Integer)q.remove()));&lt;br /&gt;        }&lt;br /&gt;        System.out.println("Done ;-)");&lt;br /&gt;    }&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;    As you can see, it inserts ten random java.lang.Integer Objects onto the queue, and later prints them out. The output from the program follows:&lt;br /&gt;&lt;br /&gt;starting...&lt;br /&gt;insert: 3&lt;br /&gt;insert: 70&lt;br /&gt;insert: 5&lt;br /&gt;insert: 17&lt;br /&gt;insert: 26&lt;br /&gt;insert: 79&lt;br /&gt;insert: 12&lt;br /&gt;insert: 44&lt;br /&gt;insert: 25&lt;br /&gt;insert: 27&lt;br /&gt;remove: 3&lt;br /&gt;remove: 70&lt;br /&gt;remove: 5&lt;br /&gt;remove: 17&lt;br /&gt;remove: 26&lt;br /&gt;remove: 79&lt;br /&gt;remove: 12&lt;br /&gt;remove: 44&lt;br /&gt;remove: 25&lt;br /&gt;remove: 27&lt;br /&gt;Done ;-)&lt;br /&gt;&lt;br /&gt;    I suggest you compare this output to the one from stack. It's almost completely different. I guess that's it for this array implementation of this FIFO data structure. And now, onto something more complex...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6390047005201701735-6165249379116679748?l=programstudies.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programstudies.blogspot.com/feeds/6165249379116679748/comments/default' title='Poskan Komentar'/><link rel='replies' type='text/html' href='http://programstudies.blogspot.com/2011/12/array-queues.html#comment-form' title='0 Komentar'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/6165249379116679748'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/6165249379116679748'/><link rel='alternate' type='text/html' href='http://programstudies.blogspot.com/2011/12/array-queues.html' title='Array Queues'/><author><name>It's Gonna Be Me</name><uri>http://www.blogger.com/profile/07321805699767978812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6390047005201701735.post-3534392973852124938</id><published>2011-11-21T15:34:00.000+07:00</published><updated>2012-01-05T18:09:23.477+07:00</updated><title type='text'>Array Stack 2</title><content type='html'>As you can see, the first numbers to be pushed on, are the last ones to be popped off. A perfect example of a FILO structure. The output also assures us that the stack is working properly.&lt;br /&gt;&lt;br /&gt;    Now that you've had a chance to look at the source, lets look at it more closely.&lt;br /&gt;&lt;br /&gt;    The pArrayStackInt class is using an array to store it's data. The data is int type (for simplicity). There is a head data member, that's the actual array. Because we're using an array, with limited size, we need to keep track of it's size, so that we don't overflow it; we always look at head.length to check for maximum size.&lt;br /&gt;&lt;br /&gt;    The second data member is pointer. Pointer, in here, points to the top of the stack. It always has the position which had the last insertion, or -1 if the stack is empty.&lt;br /&gt;&lt;br /&gt;    The constructor: pArrayStackInt(), accepts the maximum size parameter to set the size of the stack. The rest of the functions is just routine initialization. Notice that pointer is initialized to -1, this makes the next position to be filled in an array, 0.&lt;br /&gt;&lt;br /&gt;    The isEmpty() function is self explanatory, it returns true if the stack is empty (pointer is -1), and false otherwise. The return type is boolean.&lt;br /&gt;&lt;br /&gt;    The push(int) function is fairly easy to understand too. First, it checks to see if the next insertion will not overflow the array. If no danger from overflow, then it inserts. It first increments the pointer and then inserts into the new location pointed to by the updated pointer. It could easily be modified to actually make the array grow, but then the whole point of "simplicity" of using an array will be lost.&lt;br /&gt;&lt;br /&gt;    The int pop() function is also very simple. First, it checks to see if stack is not empty, if it is empty, it will return 0. In general, this is a really bad error to pop of something from an empty stack. You may want to do something more sensible than simply returning a 0 (an exception throw would not be a bad choice). I did it this way for the sake of simplicity. Then, it returns the value of the array element currently pointed to by pointer, and it decrements the pointer. This way, it is ready for the next push or pop.&lt;br /&gt;&lt;br /&gt;    I guess that just about covers it. Stack is very simple and is very basic. There are tons of useful algorithms which take advantage of this FILO structure. Now, lets look at alternative implementations...&lt;br /&gt;&lt;br /&gt;    Given the above, a lot of the C++ people would look at me strangely, and say: "All this trouble for a stack that can only store integers?" Well, they're probably right for the example above. It is too much trouble. The trick I'll illustrate next is what makes Java my favorite Object Oriented language.&lt;br /&gt;&lt;br /&gt;    In C, we have the void* type, to make it possible to store "generic" data. In C++, we also have the void* type, but there, we have very useful templates. Templates is a C++ way to make generic objects, (objects that can be used with any type). This makes quite a lot of sense for a data storage class; why should we care what we're storing?&lt;br /&gt;&lt;br /&gt;    The way Java implements these kinds of generic classes is by the use of parent classes. In Java, every object is a descendent of the Object class. So, we can just use the Object class in all of our structures, and later cast it to an appropriate type. Next, we'll write an example that uses this technique inside a generic stack.&lt;br /&gt;&lt;br /&gt;public class pArrayStackObject{&lt;br /&gt;    protected Object head[];&lt;br /&gt;    protected int pointer;&lt;br /&gt;&lt;br /&gt;    public pArrayStackObject(int capacity){&lt;br /&gt;        head = new Object[capacity];&lt;br /&gt;        pointer = -1;&lt;br /&gt;    }&lt;br /&gt;    public boolean isEmpty(){&lt;br /&gt;        return pointer == -1;&lt;br /&gt;    }&lt;br /&gt;    public void push(Object i){&lt;br /&gt;        if(pointer+1 &lt; head.length)&lt;br /&gt;            head[++pointer] = i;&lt;br /&gt;    }&lt;br /&gt;    public Object pop(){&lt;br /&gt;        if(isEmpty())&lt;br /&gt;            return null;&lt;br /&gt;        return head[pointer--];&lt;br /&gt;    }&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;    The above is very similar to the int only version, the only things that changed are the int to Object. This stack, allows the push() and pop() of any Object. Lets convert our old test driver to accommodate this new stack. The new test module will be inserting java.lang.Integer objects (not int; not primitive type).&lt;br /&gt;&lt;br /&gt;import java.io.*;&lt;br /&gt;import pArrayStackObject;&lt;br /&gt;&lt;br /&gt;class pArrayStackObjectTest{&lt;br /&gt;    public static void main(String[] args){&lt;br /&gt;        pArrayStackObject s = new pArrayStackObject(10);&lt;br /&gt;        Integer j = null;&lt;br /&gt;        int i;&lt;br /&gt;        System.out.println("starting...");&lt;br /&gt;        for(i=0;i&lt;10;i++){&lt;br /&gt;            j = new Integer((int)(Math.random() * 100));&lt;br /&gt;            s.push(j);&lt;br /&gt;            System.out.println("push: " + j);&lt;br /&gt;        }&lt;br /&gt;        while(!s.isEmpty()){&lt;br /&gt;            System.out.println("pop: " + ((Integer)s.pop()));&lt;br /&gt;        }&lt;br /&gt;        System.out.println("Done ;-)");&lt;br /&gt;    }&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;    And for the sake of being complete, I'll include the output. Notice that here, we're not inserting elements of int type, we're inserting elements of java.lang.Integer type. This means, that we can insert any Object.&lt;br /&gt;&lt;br /&gt;starting...&lt;br /&gt;push: 45&lt;br /&gt;push: 7&lt;br /&gt;push: 33&lt;br /&gt;push: 95&lt;br /&gt;push: 28&lt;br /&gt;push: 98&lt;br /&gt;push: 87&lt;br /&gt;push: 99&lt;br /&gt;push: 66&lt;br /&gt;push: 40&lt;br /&gt;pop: 40&lt;br /&gt;pop: 66&lt;br /&gt;pop: 99&lt;br /&gt;pop: 87&lt;br /&gt;pop: 98&lt;br /&gt;pop: 28&lt;br /&gt;pop: 95&lt;br /&gt;pop: 33&lt;br /&gt;pop: 7&lt;br /&gt;pop: 45&lt;br /&gt;Done ;-)&lt;br /&gt;&lt;br /&gt;    I guess that covers stacks. The main idea you should learn from this section is that a stack is a FILO data structure. After this section, non of the data structures will be working with primitive types, and everything will be done solely with objects. (now that you know how it's done...)&lt;br /&gt;&lt;br /&gt;    And now, onto the array relative of Stack, the Queue.&lt;br /&gt;theparticle.com&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6390047005201701735-3534392973852124938?l=programstudies.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programstudies.blogspot.com/feeds/3534392973852124938/comments/default' title='Poskan Komentar'/><link rel='replies' type='text/html' href='http://programstudies.blogspot.com/2011/11/array-stack-2.html#comment-form' title='0 Komentar'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/3534392973852124938'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/3534392973852124938'/><link rel='alternate' type='text/html' href='http://programstudies.blogspot.com/2011/11/array-stack-2.html' title='Array Stack 2'/><author><name>It's Gonna Be Me</name><uri>http://www.blogger.com/profile/07321805699767978812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6390047005201701735.post-6909091931094894761</id><published>2011-11-18T22:29:00.001+07:00</published><updated>2011-12-18T22:31:15.285+07:00</updated><title type='text'>Shift Register</title><content type='html'>In digital circuits, a shift register is a cascade of flip flops, sharing the same clock, which has the output of any one but the last flip-flop connected to the "data" input of the next one in the chain, resulting in a circuit that shifts by one position the one-dimensional "bit array" stored in it, shifting in the data present at its input and shifting out the last bit in the array, when enabled to do so by a transition of the clock input. More generally, a shift register may be multidimensional, such that its "data in" input and stage outputs are themselves bit arrays: this is implemented simply by running several shift registers of the same bit-length in parallel.&lt;br /&gt;&lt;br /&gt;Shift registers can have both parallel and serial inputs and outputs. These are often configured as serial-in, parallel-out (SIPO) or as parallel-in, serial-out (PISO). There are also types that have both serial and parallel input and types with serial and parallel output. There are also bi-directional shift registers which allow shifting in both directions: L→R or R→L. The serial input and last output of a shift register can also be connected together to create a circular shift register.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6390047005201701735-6909091931094894761?l=programstudies.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programstudies.blogspot.com/feeds/6909091931094894761/comments/default' title='Poskan Komentar'/><link rel='replies' type='text/html' href='http://programstudies.blogspot.com/2011/11/shift-register.html#comment-form' title='0 Komentar'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/6909091931094894761'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/6909091931094894761'/><link rel='alternate' type='text/html' href='http://programstudies.blogspot.com/2011/11/shift-register.html' title='Shift Register'/><author><name>It's Gonna Be Me</name><uri>http://www.blogger.com/profile/07321805699767978812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6390047005201701735.post-8911848721073616763</id><published>2011-10-06T21:29:00.000+07:00</published><updated>2011-10-06T21:29:03.757+07:00</updated><title type='text'>Defining Artificial Intelligence</title><content type='html'>The phrase Artificial Intelligence I, which was coined by John McCarthy three decades ago, evades a concise and formal definition to date. One representative definition is pivoted around the comparison of intelligence of computing machines with human beings . Another definition is concerned with the performance of machines which "historically have been judged to lie within the domain of intelligence" . None of these definitions or the like have been universally accepted, perhaps because of their references to the word "intelligence", which at present is an abstract and immeasurable quantity. A better definition of artificial intelligence, therefore, calls for formalization of the term "intelligence". Psychologist and Cognitive theorists are of the opinion that intelligence helps in identifying the right piece of knowledge at the appropriate instances of decision making. The phrase "artificial intelligence" thus c bane defined as the simulation of human intelligence on a machine, so make the machine efficient to identify and use the right place of "Knowledge" at a given step of solving a problem. A system capable of planning and executing the right task at the right time is generally called rational . Thus, AI alternatively may be stated as a subject dealing with computational models that can think and act rationally 1, 2, 3, 4. A common question then naturally arises: Does rational thinking and acting include all possible characteristics of an intelligent system? If so, how does it represent behavioral intelligence such as machine learning, perception and planning? A little thinking, however, reveals that a system that can reason well must be a successful planner, as planning in many circumstances is part of a reasoning process. Further, a system can act rationally only after acquiring adequate knowledge from the real world. So, perception that stands for building up of knowledge from real world information is a prerequisite feature for rational actions. One step further thinking envisages that a machine without learning capability cannot possess perception. The rational action of an agent (actor), thus, calls for possession of all the elementary characteristics of intelligence. Relating artificial intelligence with the computational models capable of thinking and acting rationally, therefore, has a pragmatic significance.&lt;br /&gt;&lt;br /&gt;(http://www.learnartificialneuralnetworks.com/ai.html)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6390047005201701735-8911848721073616763?l=programstudies.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programstudies.blogspot.com/feeds/8911848721073616763/comments/default' title='Poskan Komentar'/><link rel='replies' type='text/html' href='http://programstudies.blogspot.com/2011/10/defining-artificial-intelligence.html#comment-form' title='0 Komentar'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/8911848721073616763'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/8911848721073616763'/><link rel='alternate' type='text/html' href='http://programstudies.blogspot.com/2011/10/defining-artificial-intelligence.html' title='Defining Artificial Intelligence'/><author><name>It's Gonna Be Me</name><uri>http://www.blogger.com/profile/07321805699767978812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6390047005201701735.post-7301910903185460818</id><published>2011-10-05T12:02:00.000+07:00</published><updated>2012-01-05T18:03:43.100+07:00</updated><title type='text'>Arrays</title><content type='html'>One of the most basic data structures, is an array. An array is just a number of items, of same type, stored in linear order, one after another. Arrays have a set limit on their size, they can't grow beyond that limit. Arrays usually tend to be easier to work with and generally more efficient than other structural approaches to organizing data; way better than a no formal structure approach.&lt;br /&gt;&lt;br /&gt;    For example, lets say you wanted to have 100 numbers. You can always resort to having 100 different variables, but that would be a pain. Instead, you can use the clean notation of an array to create, and later manipulate those 100 numbers. For example, to create an array to hold 100 numbers you would do something like this:&lt;br /&gt;&lt;br /&gt;int[] myArray;&lt;br /&gt;myArray = new int[100];&lt;br /&gt;&lt;br /&gt;or&lt;br /&gt;&lt;br /&gt;int[] myArray = new int[100];&lt;br /&gt;&lt;br /&gt;or&lt;br /&gt;&lt;br /&gt;int myArray[] = new int[100];&lt;br /&gt;&lt;br /&gt;    The three notations above do exactly the same thing. The first declares an array, and then it creates an array by doing a new. The second example shows that it can all be one in one line. And the third example shows that Java holds the backwards compatibility with C++, where the array declaration is: int myArray[]; instead of int[] myArray;. To us, these notations are exactly the same. I do however prefer to use the Java one.&lt;br /&gt;&lt;br /&gt;    Working with arrays is also simple, think of them as just a line of variables, we can address the 5th element (counting from 0, so, it's actually the 6th element) by simply doing:&lt;br /&gt;&lt;br /&gt;int i = myArray[5];&lt;br /&gt;&lt;br /&gt;    The code above will set integer 'i' to the value of the 5th (counting from 0) element of the array. Similarly, we can set an array value. For example, to set the 50th element (counting from 0), to the value of 'i' we'd do something like:&lt;br /&gt;&lt;br /&gt;myArray[50] = i;&lt;br /&gt;&lt;br /&gt;    As you can see, arrays are fairly simple. The best and most convenient way to manipulate arrays is using loops. For example, lets say we wanted to make an array from 1 to 100, to hold numbers from 1 to 100 respectively, and later add seven to every element inside that array. This can be done very easily using two loops. (actually, it can be done in one loop, but I am trying to separate the problem into two)&lt;br /&gt;&lt;br /&gt;int i;&lt;br /&gt;for(i=0;i&lt;100;i++)&lt;br /&gt;    myArray[i] = i;&lt;br /&gt;for(i=0;i&lt;100;i++)&lt;br /&gt;    myArray[i] = myArray[i] + 7;&lt;br /&gt;&lt;br /&gt;    In Java, we don't need to remember the size of the array as in C/C++. Here, we have the length variable in every array, and we can check it's length whenever we need it. So to print out any array named: myArray, we'd do something like:&lt;br /&gt;&lt;br /&gt;for(int i = 0;i&lt;myArray.length;i++)&lt;br /&gt;    System.out.println(myArray[i]);&lt;br /&gt;&lt;br /&gt;    This will work, given the objects inside the myArray are printable, (have a corresponding toString() method), or are of primitive type.&lt;br /&gt;&lt;br /&gt;    One of the major limitations on arrays is that they're fixed in size. They can't grow or shrink according to need. If you have an array of 100 max elements, it will not be able to store 101 elements. Similarly, if you have less elements, then the unused space is being wasted (doing nothing).&lt;br /&gt;&lt;br /&gt;    Java API provides data storage classes, which implement an array for their storage. As an example, take the java.util.Vector class (JDK 1.2), it can grow, shrink, and do some quite useful things. The way it does it is by reallocating a new array every time you want to do some of these operations, and later copying the old array into the new array. It can be quite fast for small sizes, but when you're talking about several megabyte arrays, and every time you'd like to add one more number (or object) you might need to reallocate the entire array; that can get quite slow. Later, we will look at other data structures where we won't be overly concerned with the amount of the data and how often we need to resize.&lt;br /&gt;&lt;br /&gt;    Even in simplest situations, arrays are powerful storage constructs. Sometimes, however, we'd like to have more than just a plain vanilla array.&lt;br /&gt;theparticle.com&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6390047005201701735-7301910903185460818?l=programstudies.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programstudies.blogspot.com/feeds/7301910903185460818/comments/default' title='Poskan Komentar'/><link rel='replies' type='text/html' href='http://programstudies.blogspot.com/2011/10/arrays.html#comment-form' title='0 Komentar'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/7301910903185460818'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/7301910903185460818'/><link rel='alternate' type='text/html' href='http://programstudies.blogspot.com/2011/10/arrays.html' title='Arrays'/><author><name>It's Gonna Be Me</name><uri>http://www.blogger.com/profile/07321805699767978812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6390047005201701735.post-3391717407691691497</id><published>2011-10-05T09:54:00.001+07:00</published><updated>2012-01-05T18:07:59.767+07:00</updated><title type='text'>Array Stack 1</title><content type='html'>if(pointer+1 &lt; head.length)&lt;br /&gt;            head[++pointer] = i;&lt;br /&gt;    }&lt;br /&gt;    public int pop(){&lt;br /&gt;        if(isEmpty())&lt;br /&gt;            return 0;&lt;br /&gt;        return head[pointer--];&lt;br /&gt;    }&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;    As you can see, that's the stack class. The constructor named pArrayStackInt() accepts an integer. That integer is to initialize the stack to that specific size. If you later try to push() more integers onto the stack than this capacity, it won't work. Nothing is complete without testing, so, lets write a test driver class to test this stack.&lt;br /&gt;&lt;br /&gt;import java.io.*;&lt;br /&gt;import pArrayStackInt;&lt;br /&gt;&lt;br /&gt;class pArrayStackIntTest{&lt;br /&gt;    public static void main(String[] args){&lt;br /&gt;        pArrayStackInt s = new pArrayStackInt(10);&lt;br /&gt;        int i,j;&lt;br /&gt;        System.out.println("starting...");&lt;br /&gt;        for(i=0;i&lt;10;i++){&lt;br /&gt;            j = (int)(Math.random() * 100);&lt;br /&gt;            s.push(j);&lt;br /&gt;            System.out.println("push: " + j);&lt;br /&gt;        }&lt;br /&gt;        while(!s.isEmpty()){&lt;br /&gt;            System.out.println("pop: " + s.pop());&lt;br /&gt;        }&lt;br /&gt;        System.out.println("Done ;-)");&lt;br /&gt;    }&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;    The test driver does nothing special, it inserts ten random numbers onto the stack, and then pops them off. Writing to standard output exactly what it's doing. The output gotten from this program is:&lt;br /&gt;&lt;br /&gt;starting...&lt;br /&gt;push: 33&lt;br /&gt;push: 66&lt;br /&gt;push: 10&lt;br /&gt;push: 94&lt;br /&gt;push: 67&lt;br /&gt;push: 79&lt;br /&gt;push: 48&lt;br /&gt;push: 7&lt;br /&gt;push: 79&lt;br /&gt;push: 32&lt;br /&gt;pop: 32&lt;br /&gt;pop: 79&lt;br /&gt;pop: 7&lt;br /&gt;pop: 48&lt;br /&gt;pop: 79&lt;br /&gt;pop: 67&lt;br /&gt;pop: 94&lt;br /&gt;pop: 10&lt;br /&gt;pop: 66&lt;br /&gt;pop: 33&lt;br /&gt;Done ;-)&lt;br /&gt;theparticle.com&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6390047005201701735-3391717407691691497?l=programstudies.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programstudies.blogspot.com/feeds/3391717407691691497/comments/default' title='Poskan Komentar'/><link rel='replies' type='text/html' href='http://programstudies.blogspot.com/2011/10/array-stack-1.html#comment-form' title='0 Komentar'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/3391717407691691497'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/3391717407691691497'/><link rel='alternate' type='text/html' href='http://programstudies.blogspot.com/2011/10/array-stack-1.html' title='Array Stack 1'/><author><name>It's Gonna Be Me</name><uri>http://www.blogger.com/profile/07321805699767978812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6390047005201701735.post-6229036684565136273</id><published>2011-07-09T20:25:00.000+07:00</published><updated>2011-07-09T20:25:22.698+07:00</updated><title type='text'>Embedded System</title><content type='html'>An embedded system is a computer system designed to do one or a few dedicated and/or specific functions. often with real-time computing constraints. It is embeddedas part of a complete device often including hardware and mechanical parts. By contrast, a general-purpose computer, such as a personal computer (PC), is designed to be flexible and to meet a wide range of end-user needs. Embedded systems control many devices in common use today. &lt;br /&gt;&lt;br /&gt;&lt;!-- Begin BidVertiser code --&gt;&lt;br /&gt;&lt;script LANGUAGE="JavaScript1.1" SRC="http://bdv.bidvertiser.com/BidVertiser.dbm?pid=272446%26bid=985961" type="text/javascript"&gt;&lt;/SCRIPT&gt;&lt;br /&gt;&lt;noscript&gt;&lt;a href="http://www.bidvertiser.com/bdv/BidVertiser/bdv_advertiser.dbm"&gt;marketing&lt;/a&gt;&lt;/noscript&gt;&lt;br /&gt;&lt;!-- End BidVertiser code --&gt; &lt;br /&gt;&lt;br /&gt;Embedded systems are controlled by one or more main processing cores that are typically either microcontrollers or digital signal processors (DSP). The key characteristic, however, is being dedicated to handle a particular task. They may require very powerful processors and extensive communication, for example air traffic control systems may usefully be viewed as embedded, even though they involvemainframe computers and dedicated regional and national networks between airports and radar sites (each radar probably includes one or more embedded systems of its own).&lt;br /&gt;Since the embedded system is dedicated to specific tasks, design engineers can optimize it to reduce the size and cost of the product and increase the reliability and performance. Some embedded systems are mass-produced, benefiting fromeconomies of scale.&lt;br /&gt;Physically, embedded systems range from portable devices such as digital watches and MP3 players, to large stationary installations like traffic lights, factory controllers, or the systems controlling nuclear power plants. Complexity varies from low, with a single microcontroller chip, to very high with multiple units, peripherals and networks mounted inside a large chassis or enclosure.&lt;br /&gt;In general, "embedded system" is not a strictly definable term, as most systems have some element of extensibility or programmability. For example, handheld computers share some elements with embedded systems such as the operating systems and microprocessors that power them, but they allow different applications to be loaded and peripherals to be connected. Moreover, even systems that do not expose programmability as a primary feature generally need to support software updates. On a continuum from "general purpose" to "embedded", large application systems will have subcomponents at most points even if the system as a whole is "designed to perform one or a few dedicated functions", and is thus appropriate to call "embedded".&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6390047005201701735-6229036684565136273?l=programstudies.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programstudies.blogspot.com/feeds/6229036684565136273/comments/default' title='Poskan Komentar'/><link rel='replies' type='text/html' href='http://programstudies.blogspot.com/2011/07/embedded-system.html#comment-form' title='0 Komentar'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/6229036684565136273'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/6229036684565136273'/><link rel='alternate' type='text/html' href='http://programstudies.blogspot.com/2011/07/embedded-system.html' title='Embedded System'/><author><name>It's Gonna Be Me</name><uri>http://www.blogger.com/profile/07321805699767978812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6390047005201701735.post-7898249914114504895</id><published>2011-02-14T09:30:00.003+07:00</published><updated>2011-07-09T19:34:56.050+07:00</updated><title type='text'>Algorithm Development (JAVA)</title><content type='html'>Programming is difficult (like many activities that are useful and worthwhile -- and like most of those activities, it can also be rewarding and a lot of fun). When you write a program, you have to tell the computer every small detail of what to do. And you have to get everything exactly right, since the computer will blindly follow your program exactly as written. How, then, do people write any but the most simple programs? It's not a big mystery, actually. It's a matter of learning to think in the right way.&lt;br /&gt;&lt;br /&gt; &lt;!-- Begin BidVertiser code --&gt;&lt;br /&gt;&lt;SCRIPT LANGUAGE="JavaScript1.1" SRC="http://bdv.bidvertiser.com/BidVertiser.dbm?pid=272446%26bid=985961" type="text/javascript"&gt;&lt;/SCRIPT&gt;&lt;br /&gt;&lt;noscript&gt;&lt;a href="http://www.bidvertiser.com/bdv/BidVertiser/bdv_advertiser.dbm"&gt;marketing&lt;/a&gt;&lt;/noscript&gt;&lt;br /&gt;&lt;!-- End BidVertiser code --&gt; &lt;br /&gt;&lt;br /&gt;A program is an expression of an idea. A programmer starts with a general idea of a task for the computer to perform. Presumably, the programmer has some idea of how to perform the task by hand, at least in general outline. The problem is to flesh out that outline into a complete, unambiguous, step-by-step procedure for carrying out the task. Such a procedure is called an "algorithm." (Technically, an algorithm is an unambiguous, step-by-step procedure that terminates after a finite number of steps; we don't want to count procedures that go on forever.) An algorithm is not the same as a program. A program is written in some particular programming language. An algorithm is more like the idea behind the program, but it's the idea of the steps the program will take to perform its task, not just the idea of the task itself. The steps of the algorithm don't have to be filled in in complete detail, as long as the steps are unambiguous and it's clear that carrying out the steps will accomplish the assigned task. An algorithm can be expressed in any language, including English. Of course, an algorithm can only be expressed as a program if all the details have been filled in.&lt;br /&gt;&lt;script type='text/javascript'&gt;  var _gaq = _gaq || [];  _gaq.push([&amp;#39;_setAccount&amp;#39;, &amp;#39;UA-21372534-1&amp;#39;]);  _gaq.push([&amp;#39;_trackPageview&amp;#39;]);  (function() {    var ga = document.createElement(&amp;#39;script&amp;#39;); ga.type = &amp;#39;text/javascript&amp;#39;; ga.async = true;    ga.src = (&amp;#39;https:&amp;#39; == document.location.protocol ? &amp;#39;https://ssl&amp;#39; : &amp;#39;http://www&amp;#39;) + &amp;#39;.google-analytics.com/ga.js&amp;#39;;    var s = document.getElementsByTagName(&amp;#39;script&amp;#39;)[0]; s.parentNode.insertBefore(ga, s);  })();&lt;/script&gt;&lt;br /&gt;&lt;br /&gt;So, where do algorithms come from? Usually, they have to be developed, often with a lot of thought and hard work. Skill at algorithm development is something that comes with practice, but there are techniques and guidelines that can help. I'll talk here about some techniques and guidelines that are relevant to "programming in the small," and I will return to the subject several times in later chapters.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6390047005201701735-7898249914114504895?l=programstudies.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programstudies.blogspot.com/feeds/7898249914114504895/comments/default' title='Poskan Komentar'/><link rel='replies' type='text/html' href='http://programstudies.blogspot.com/2011/02/algorithm-development-java.html#comment-form' title='0 Komentar'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/7898249914114504895'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/7898249914114504895'/><link rel='alternate' type='text/html' href='http://programstudies.blogspot.com/2011/02/algorithm-development-java.html' title='Algorithm Development (JAVA)'/><author><name>It's Gonna Be Me</name><uri>http://www.blogger.com/profile/07321805699767978812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6390047005201701735.post-2416826248898691772</id><published>2011-02-08T09:27:00.001+07:00</published><updated>2011-07-09T19:48:37.935+07:00</updated><title type='text'>OPERATOR (JAVA V)</title><content type='html'>&lt;b&gt;Arithmetic Operators&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;+ summation operator (as well as connective string)&lt;br /&gt;&lt;br /&gt;- Operator reduction&lt;br /&gt;&lt;br /&gt;* multiplication operator&lt;br /&gt;&lt;br /&gt;/ division operator&lt;br /&gt;&lt;br /&gt;% Operator residual distribution&lt;br /&gt;&lt;br /&gt; &lt;!-- Begin BidVertiser code --&gt;&lt;br /&gt;&lt;SCRIPT LANGUAGE="JavaScript1.1" SRC="http://bdv.bidvertiser.com/BidVertiser.dbm?pid=272446%26bid=985961" type="text/javascript"&gt;&lt;/SCRIPT&gt;&lt;br /&gt;&lt;noscript&gt;&lt;a href="http://www.bidvertiser.com/bdv/BidVertiser/bdv_advertiser.dbm"&gt;marketing&lt;/a&gt;&lt;/noscript&gt;&lt;br /&gt;&lt;!-- End BidVertiser code --&gt; &lt;br /&gt;&lt;b&gt;Single Operator&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;+ Operator plus; expressed positive values (each number without this mark will be considered as positive)&lt;br /&gt;&lt;br /&gt;- Operator minus; declare a negative value, can also be used for a number menegatifkan&lt;br /&gt;&lt;br /&gt;+ + operators increase; add a number to 1&lt;br /&gt;&lt;br /&gt;- The operator reduction; subtracting a number with 1&lt;br /&gt;&lt;br /&gt;! Operators opponent; flipped a boolean value&lt;br /&gt;&lt;br /&gt;Single operator only requires one operand to perform operations. This operator can not be used for the final variable, because the final variable in the form of constants that can not be modified.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6390047005201701735-2416826248898691772?l=programstudies.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programstudies.blogspot.com/feeds/2416826248898691772/comments/default' title='Poskan Komentar'/><link rel='replies' type='text/html' href='http://programstudies.blogspot.com/2011/02/operator-java-v.html#comment-form' title='0 Komentar'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/2416826248898691772'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/2416826248898691772'/><link rel='alternate' type='text/html' href='http://programstudies.blogspot.com/2011/02/operator-java-v.html' title='OPERATOR (JAVA V)'/><author><name>It's Gonna Be Me</name><uri>http://www.blogger.com/profile/07321805699767978812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6390047005201701735.post-166444188159980171</id><published>2011-02-05T11:04:00.002+07:00</published><updated>2011-07-09T19:43:07.046+07:00</updated><title type='text'>Programming in Java. : Hello Word</title><content type='html'>We break the process of programming in Java into three steps:&lt;br /&gt;&lt;br /&gt;1. Create the program by typing it into a text editor and saving it to a file named, say, MyProgram.java.&lt;br /&gt;2. Compile it by typing "javac MyProgram.java" in the terminal window.&lt;br /&gt;3. Run (or execute) it by typing "java MyProgram" in the terminal window.&lt;br /&gt;&lt;br /&gt;The first step creates the program; the second translates it into a language more suitable for machine execution (and puts the result in a file named MyProgram.class); the third actually runs the program.&lt;br /&gt;&lt;br /&gt;* Creating a Java program. A program is nothing more than a sequence of characters, like a sentence, a paragraph, or a poem. To create one, we need only define that sequence characters using a text editor in the same way as we do for e-mail. HelloWorld.java is an example program. Type these character into your text editor and save it into a file named HelloWorld.java.&lt;br /&gt;&lt;br /&gt;public class HelloWorld { &lt;br /&gt;public static void main(String[] args) { &lt;br /&gt;System.out.println("Hello, World");&lt;br /&gt;}&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;* Compiling a Java program. At first, it might seem to you as though the Java programming language is designed to be best understood by the computer. Actually, to the contrary, the language is designed to be best understood by the programmer (that's you). A compiler is an application that translates programs from the Java language to a language more suitable for executing on the computer. It takes a text file with the .java extension as input (your program) and produces a file with a .class extension (the computer-language version). To compile HelloWorld.java type the boldfaced text below at the terminal. (We use the % symbol to denote the command prompt, but it may appear different depending on your system.)&lt;br /&gt;&lt;br /&gt;% javac HelloWorld.java&lt;br /&gt;&lt;br /&gt;If you typed in the program correctly, you should see no error messages. Otherwise, go back and make sure you typed in the program exactly as it appears above.&lt;br /&gt;* Executing a Java program. Once you compile your program, you can run it. This is the exciting part, where the computer follows your instructions. To run the HelloWorld program, type the following at the terminal:&lt;br /&gt;&lt;br /&gt;% java HelloWorld&lt;br /&gt;&lt;br /&gt;If all goes well, you should see the following response&lt;br /&gt;&lt;br /&gt;Hello, World&lt;br /&gt;&lt;br /&gt;* Understanding a Java program. The key line with System.out.println() send the text "Hello, World". When we begin to write more complicated programs, we will discuss the meaning of public, class, main, String[], args, System.out, and so on.&lt;br /&gt;* Creating your own Java program. For the time being, all of our programs will be just like HelloWorld.java, except with a different sequence of statements in main(). The easiest way to write such a program is to:&lt;br /&gt;o Copy HelloWorld.java into a new file whose name is the program name followed by .java.&lt;br /&gt;o Replace HelloWorld with the program name everywhere.&lt;br /&gt;o Replace the print statement by a sequence of statements.&lt;br /&gt;&lt;br /&gt;Errors.&lt;br /&gt;Most errors are easily fixed by carefully examining the program as we create it, in just the same way as we fix spelling and grammatical errors when we type an e-mail message.&lt;br /&gt;&lt;br /&gt;* Compile-time errors. These errors are caught by the system when we compile the program, because they prevent the compiler from doing the translation (so it issues an error message that tries to explain why).&lt;br /&gt;* Run-time errors. These errors are caught by the system when we execute the program, because the program tries to peform an invalid operation (e.g., division by zero).&lt;br /&gt;* Logical errors. These errors are (hopefully) caught by the programmer when we execute the program and it produces the wrong answer. Bugs are the bane of a programmer's existence. They can be subtle and very hard to find.&lt;br /&gt;&lt;br /&gt;One of the very first skills that you will learn is to identify errors; one of the next will be to be sufficiently careful when coding to avoid many of them.&lt;br /&gt;&lt;script&gt;/** TEKNOLOGI **/var sitti_pub_id = "BC0004433";var sitti_ad_width = "300";var sitti_ad_height = "250";var sitti_ad_type = "1";var sitti_ad_number = "3";var sitti_ad_name = "TEKNOLOGI";var sitti_dep_id = "8642";&lt;/script&gt;&lt;br /&gt;&lt;script src="http://202.52.131.5/delivery/sittiad.b1.js"&gt;&lt;/script&gt; &lt;br /&gt;&lt;br /&gt;Input and output.&lt;br /&gt;Typically, we want to provide input to our programs: data that they can process to produce a result. The simplest way to provide input data is illustrated in UseArgument.java. Whenever this program is executed, it reads the command-line argument that you type after the program name and prints it back out to the terminal as part of the message.&lt;br /&gt;&lt;br /&gt;% javac UseArgument.java&lt;br /&gt;% java UseArgument Alice&lt;br /&gt;Hi, Alice. How are you?&lt;br /&gt;% java UseArgument Bob&lt;br /&gt;Hi, Bob. How are you?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6390047005201701735-166444188159980171?l=programstudies.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programstudies.blogspot.com/feeds/166444188159980171/comments/default' title='Poskan Komentar'/><link rel='replies' type='text/html' href='http://programstudies.blogspot.com/2011/02/programming-in-java-hello-word.html#comment-form' title='0 Komentar'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/166444188159980171'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/166444188159980171'/><link rel='alternate' type='text/html' href='http://programstudies.blogspot.com/2011/02/programming-in-java-hello-word.html' title='Programming in Java. : Hello Word'/><author><name>It's Gonna Be Me</name><uri>http://www.blogger.com/profile/07321805699767978812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6390047005201701735.post-1909592554612010962</id><published>2011-02-04T09:58:00.000+07:00</published><updated>2011-02-04T09:58:32.382+07:00</updated><title type='text'>History of java</title><content type='html'>Java is a programming language developed by Sun Microsystems and published in 1995. Java programming language was originally born out of The Green Project. The project was initiated by Patrick Naughton, Mike Sheridan, James Gosling and Bill Boy along with nine other programmers from Sun Microsystems. To run the project is Sun's plan to create an operating system built in C + +. However, James Gosling are not satisfied with the programming language C + + and finally he decided to create its own programming language called Oak. The name was taken from a tree visible from his office window.&lt;br /&gt;&lt;script type="text/javascript"&gt;&lt;!--google_ad_client = "ca-pub-3633595611407703";/* adsvertisement */google_ad_slot = "4136814679";google_ad_width = 300;google_ad_height = 250;//--&gt;&lt;/script&gt;&lt;br /&gt;&lt;script type="text/javascript"src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;&lt;/script&gt;&lt;br /&gt;Oak is based on C + + language syntax. But Oak simpler than C + +, more stable and more supportive of the network-programming. In addition, Oak made of pure object-oriented. Oak language was created as a language that is not tied to one platform (cross-platform or multi-platform). At that time the Internet started a new history with the WWW (World Wide Web). The first GUI browser was Mosaic. Sun see another crack in the Web world. Sun felt that Oak language multi-platform and intended for interactive and distributed programming is suitable for the Web. They made the Mosaic as the basis for beginning to create the first Java browser, later named by the Web Runner.&lt;br /&gt;&lt;br /&gt;In 1995, the name Oak was replaced with the Java name for an existing software patent the name. Java name is taken from pure ground coffee directly favorite James Gosling. In 1995, java and then became the standard language in the world of the Internet.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6390047005201701735-1909592554612010962?l=programstudies.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programstudies.blogspot.com/feeds/1909592554612010962/comments/default' title='Poskan Komentar'/><link rel='replies' type='text/html' href='http://programstudies.blogspot.com/2011/02/history-of-java.html#comment-form' title='0 Komentar'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/1909592554612010962'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/1909592554612010962'/><link rel='alternate' type='text/html' href='http://programstudies.blogspot.com/2011/02/history-of-java.html' title='History of java'/><author><name>It's Gonna Be Me</name><uri>http://www.blogger.com/profile/07321805699767978812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6390047005201701735.post-7728659048877639832</id><published>2011-02-03T10:32:00.001+07:00</published><updated>2011-02-05T11:10:15.193+07:00</updated><title type='text'>String, Object and the subroutine (JAVA IV)</title><content type='html'>The previous section introduced the 8 types of primitive data types and data type String. The fundamental difference between primitive types and String is: the value of the String type of object. The object will be discussed in another section of the class (class). In this section we will learn how the String is used and also learn another important programming concept, namely subroutines.&lt;br /&gt;&lt;br /&gt;&lt;script type="text/javascript"&gt;&lt;!--google_ad_client = "ca-pub-3633595611407703";/* adsvertisement */google_ad_slot = "4136814679";google_ad_width = 300;google_ad_height = 250;//--&gt;&lt;/script&gt;&lt;br /&gt;&lt;script type="text/javascript"src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;&lt;/script&gt;&lt;br /&gt;&lt;br /&gt;Subroutine is a set of instructions that are combined so that the program has a specific function. In the Java language, each subroutine included in the section of a class or object. Java provides standard classes that are ready to use. Value of type String is an object that has a collection of subroutines that can be used to manipulate Strings tersetbut. We can call a subroutine without having to understand how the subroutine works. Actually this is the purpose subroutines, namely a set of commands that have specific functions without having to know in detail what is going on inside.&lt;br /&gt;&lt;br /&gt;The class consists of variables and subroutines that are stored in it. Variables and subroutines are called static member (static member). An example is the program SelamatDatang, SelamatDatang class has members of main () which is a static member class. Members are given a supplement in the form of static member static, as in the main ().&lt;br /&gt;&lt;br /&gt;The function of another class is to describe an object. Class here works like a data type. The value stored in data type that is the object. For example the class String is actually a name that is provided by the Java language. String data type and also in the form of sentences like "Welcome!" is the content of the data type String.&lt;br /&gt;&lt;br /&gt;Usefulness both as a combined class of subroutines or as objects are often confusing. For example, the String class also stores some static subroutines as well as the type of data. Examples of other standards is a Math class that contains a collection of static subroutines to perform various mathematical calculations.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6390047005201701735-7728659048877639832?l=programstudies.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programstudies.blogspot.com/feeds/7728659048877639832/comments/default' title='Poskan Komentar'/><link rel='replies' type='text/html' href='http://programstudies.blogspot.com/2011/02/string-object-and-subroutine.html#comment-form' title='0 Komentar'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/7728659048877639832'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/7728659048877639832'/><link rel='alternate' type='text/html' href='http://programstudies.blogspot.com/2011/02/string-object-and-subroutine.html' title='String, Object and the subroutine (JAVA IV)'/><author><name>It's Gonna Be Me</name><uri>http://www.blogger.com/profile/07321805699767978812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6390047005201701735.post-6343235196993073202</id><published>2011-01-26T14:46:00.003+07:00</published><updated>2011-02-03T10:14:18.565+07:00</updated><title type='text'>Google tries to hold off new threat</title><content type='html'>Google is richer than ever, but it's not as cool as it once was.&lt;br /&gt;Facebook boasts 500 million members who share 30 billion links, notes and photos each month — data that Google's search engine can't completely index. It's so influential that 26-year-old founder Mark Zuckerberg was just named Time's person of the year, and a movie about the company's early days is a contender for best picture at the Oscars.&lt;br /&gt;&lt;br /&gt;&lt;script&gt;/** TEKNOLOGI **/var sitti_pub_id = "BC0004433";var sitti_ad_width = "300";var sitti_ad_height = "250";var sitti_ad_type = "1";var sitti_ad_number = "3";var sitti_ad_name = "TEKNOLOGI";var sitti_dep_id = "8642";&lt;/script&gt;&lt;br /&gt;&lt;script src="http://202.52.131.5/delivery/sittiad.b1.js"&gt;&lt;/script&gt; &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Twitter, Groupon and Foursquare, all hard-charging and potentially game-changing services, are additional thorns in Google's side, raising worries that the online search leader may be losing the competitive edge that turned it into the Internet's most powerful company.&lt;br /&gt;Making Google hip and nimble again will be the priority as Larry Page, one of the two Stanford University students who founded the company in a garage in 1998, prepares to reclaim the CEO job in a shake-up that surprised Silicon Valley.&lt;br /&gt;He last held it a decade ago, when Google Inc. had less than $100 million in annual revenue and fewer than 300 employees. Google's size today — 24,400 employees and annual revenue of $29 billion — has slowed its decision-making and innovation in the past few years.&lt;br /&gt;About 200 of Facebook's 2,000 employees defected from Google, and the migration appears to be about more than just the allure of getting stock options in a hot company before it goes public. Some engineers seem to be drawn by the work at a smaller company, which offers an opportunity to reshape culture with less corporate bureaucracy and more creative freedom.&lt;br /&gt;"Facebook has become the cool kid on the block, and now Google wants to prove it can still be cool, too," says Danny Sullivan, who follows both companies closely as editor-in-chief of Search Engine Land.&lt;br /&gt;It's not an impossible feat, says Michael Cusumano, an MIT professor of management. As an example, he cites IBM, which seemed on its way to becoming a tech dinosaur in the early 1990s before Louis Gerstner arrived as CEO and streamlined the company.&lt;br /&gt;To get back to its roots, Google concluded it needed to rearrange the hierarchy in place since technology veteran Eric Schmidt was brought in as CEO in 2001. It was an egalitarian arrangement, with Schmidt never having the final say on important matters. Page and Google's other founder, Sergey Brin, always weighed in, too. In some cases, such as Google's decision to move its search engine out of mainland China last year, the founders overruled Schmidt's wishes.&lt;br /&gt;In April, Schmidt will become executive chairman and relinquish the CEO duties to Page, now 37 and graying. While Schmidt travels the world meeting with business partners, government officials and potential takeover targets, Page says he will be making most of the big decisions as he tries to rekindle "the soul and passion of a startup." Brin will concentrate on developing new products.&lt;br /&gt;He's worth $15 billion, but Page remains something of a rebel who has always had a disdain for corporate protocol.&lt;br /&gt;"Larry and Sergey both hate being organized. They don't want to be locked into meetings," says Ken Auletta, who got to know both of them while writing his book, "Googled: The End of the World as We Know It."&lt;br /&gt;While a free-wheeling attitude typically works well at small companies, it could cause problems in a company as large as Google, says Steve Booth, a business professor at the University of Chicago.&lt;br /&gt;"The risk is that if you take away the process, that in some sense you go back to a kind of chaos," Kaplan said.&lt;br /&gt;Schmidt, 55, has no doubt Page is ready for the challenges ahead.&lt;br /&gt;"Larry has been with me in every major decision in the past decade," Schmidt said in an interview Thursday. "It's not like he has been sitting around doing nothing."&lt;br /&gt;Although management by committee worked well enough to turn Google into an enormous success, it eventually slowed Google's reaction to popular new ideas such as Facebook and Twitter. The bureaucracy has also caused Twitter and other startups to rebuff Google's attempts to buy them. Some entrepreneurs who decided to sell to Google fled the company after a few months of frustration.&lt;br /&gt;"Facebook is the most ominous threat to Google, but Facebook is just emblematic of the rising pace at which all of these (startups) are moving," Wedbush Morgan analyst Lou Kerner says. "It's Facebook today, it's Groupon tomorrow, and it will be someone else after that."&lt;br /&gt;Google still hasn't been able to develop an effective social networking tool to counter Facebook, a delay that could cost the company dearly as Facebook learns more about people's ages, hometowns and passions. All that personal information is bound to help Facebook sell ads targeted at the audiences most likely to be interested in the products and services — a marketer's dream.&lt;br /&gt;"Facebook is attacking Google in its most important fortress, which is advertising revenue," says Whit Andrews, an analyst at Gartner who has followed Google since 2000.&lt;br /&gt;Google makes most of its money from ads that are triggered by search requests. For instance, someone searching for "flowers" would most likely see several links from florists. That's the main way Google has built up a bank account that now has about $35 billion in it. And it has left Google with a $196 billion market value, with a single share in the company costing more than a basic iPad.&lt;br /&gt;But it's also saddled Google with the label of being a one-trick pony, even though it has been selling more ads with graphics, has branched out into a major player on mobile phones with its popular Android software and owns the Web's top video site, YouTube.&lt;br /&gt;Facebook also only does one trick well so far, but it could eventually command even more revenue than Google's has.&lt;br /&gt;By virtue of its design, Facebook engages its users with ads in a way Google cannot. It not only learns intimate details about users of its own website, but also on thousands of others as people press Facebook's ubiquitous "Like" button to express their approval of everything from Levi's jeans to a blog posting.&lt;br /&gt;Facebook is expected to sell about $4 billion in ads in 2011, its seventh year in business. By comparison, Google's ad revenue totaled $6 billion when it turned 7 years old in 2005.&lt;br /&gt;By then, Google had upstaged another Internet service that was once considered the Web's coolest company — Yahoo Inc., which is now pinning its turnaround hopes on linking many of its services to Facebook and Twitter.&lt;br /&gt;&lt;br /&gt;(news.yahoo.com)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6390047005201701735-6343235196993073202?l=programstudies.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programstudies.blogspot.com/feeds/6343235196993073202/comments/default' title='Poskan Komentar'/><link rel='replies' type='text/html' href='http://programstudies.blogspot.com/2011/01/google-tries-to-hold-off-new-threat.html#comment-form' title='0 Komentar'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/6343235196993073202'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/6343235196993073202'/><link rel='alternate' type='text/html' href='http://programstudies.blogspot.com/2011/01/google-tries-to-hold-off-new-threat.html' title='Google tries to hold off new threat'/><author><name>It's Gonna Be Me</name><uri>http://www.blogger.com/profile/07321805699767978812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6390047005201701735.post-6916038665118493905</id><published>2011-01-22T09:43:00.000+07:00</published><updated>2011-01-22T09:43:43.828+07:00</updated><title type='text'>Variables and Data Types  (JAVA III)</title><content type='html'>Names are important in programming techniques. In a program, the name used to refer to something. To use "something" is, the programmer must understand how the rules of nomenclature and rules for using that name in the program. Or in other words, the programmer must understand the syntax and semantics of the name.&lt;br /&gt;&lt;br /&gt;According to the rules of Java syntax, the name is a series of 1 or more characters. It should begin with the letter and must consist of letters, numbers or the underscore character '_'. The following are examples of names that are allowed:&lt;br /&gt;&lt;br /&gt;        N n rate X15 quite_a_long_name HelloWorld&lt;br /&gt;&lt;br /&gt;Hurus small and large letters are considered different, so the HelloWorld, HelloWorld, HelloWorld, and HelloWorld is the name different. Some of the particular word is a name that has a specific purpose by Java, and can not be used by programmers. These words are called reserved words (words reserve) for example: class, public, static, if, else, while, and others.&lt;br /&gt;&lt;br /&gt;Another important thing is to compound names or the name of the mixture, ie which is the common name associated with a point, such as System.out.println. The idea is "something" in Java can consist of "something" else. System.out.println Name System means to accommodate out and out to accommodate println. We call that "something" as an identifier (ID) do not care if he is single or mixed form of the name.&lt;br /&gt;&lt;br /&gt;Programs manipulate data stored in memory. In the language of machines, data can only be retrieved by calling the address in memory. In the high-level programming languages such as Java, the name can be used Untk change of address data in memory. Computer task is to track where data is stored, while the programmer to use names to instruct the computer retrieve data from memory. The name used is called a variable.&lt;br /&gt;&lt;br /&gt;Variables actually mean more complex. Variables not the contents of the data, but the location in memory that stores data. Variables can be described as data storage box, not the contents of the box. Because the data within the box can be changed, the variable can only be trusted at one point only, although the place is always the same.&lt;br /&gt;&lt;br /&gt;In the Java language, the only way to enter data into a variable is to use an assignment statement, or statement of value. This statement is in the form:&lt;br /&gt;&lt;br /&gt;variable = expression;&lt;br /&gt;&lt;br /&gt;where the expression of any claim relating to a data value. When a computer running this instruction, the computer will calculate and store the result into a variable. Example:&lt;br /&gt;&lt;br /&gt;speed = 40;&lt;br /&gt;&lt;br /&gt;Variable in the above statement is the speed and its expression is the number 40. Computers calculate this statement and saves 40 to the variable speed, and replace any that have been stored previously.&lt;br /&gt;&lt;br /&gt;Now for example we want to perform more complex calculations:&lt;br /&gt;&lt;br /&gt;distance = speed * time&lt;br /&gt;&lt;br /&gt;Here, * is the multiplication operation. Computers take the data stored in variable speed and time, do the multiplication, and stores the result in the distance.&lt;br /&gt;&lt;br /&gt;Variables in the Java language designed to store only 1 type data type. Compiler will display an error if the variable sintax is attempted to be given other kinds of data types. Therefore, the Java programming language type is called a strong or a strongly typed language.&lt;br /&gt;&lt;br /&gt;There are 8 primitive data types in the Java language.&lt;br /&gt;Type       Maximum         Minimum              Size         Description&lt;br /&gt;boolean                                       1-bit        true or false can contain&lt;br /&gt;char                                           16-bit        Unicode character &lt;br /&gt;byte       128             -127                8-bit        Integer&lt;br /&gt;Short     32 767           -32 768             16-bit       Integer&lt;br /&gt;int   2,147,483,647        -2,147,483,648       32-bit        Integer&lt;br /&gt;Long -9223372036854775808  9223372036854775807  64-bit       Integer&lt;br /&gt;&lt;br /&gt;float 32-bit real number 1.40129846432481707e-45 3.40282346638528860e +38&lt;br /&gt;double 64-bit real number 4.94065645841246544e +308 1.79769313486231570e-324&lt;br /&gt;&lt;br /&gt;A new variable can be used if it has been declared. Variable declaration statement used to declare one or more variables and give names. When the computer executes the variable declaration, the computer will provide a room at the memory and then stores these addresses in accordance with the given variable name. Shaped like a variable declaration:&lt;br /&gt;&lt;br /&gt;nama_tipe nama_variabel;&lt;br /&gt;&lt;br /&gt;nama_variabel can be a variable name or several names at once separated by commas. Good programming style is to declare a variable in one statement, except those variables closely related to each other. For example:&lt;br /&gt;&lt;br /&gt;float num;&lt;br /&gt;String name;&lt;br /&gt;String name;&lt;br /&gt;boolean bol;&lt;br /&gt;int x, y;&lt;br /&gt;&lt;br /&gt;Or declaring variables can also be done at once by giving its value, as in the following example:&lt;br /&gt;&lt;br /&gt;int num = 1000;&lt;br /&gt;char ch = 'e';&lt;br /&gt;float number = -1504;&lt;br /&gt;boolean bol = true;&lt;br /&gt;&lt;br /&gt;Variable Types&lt;br /&gt;&lt;br /&gt;Java has several types of variables that can be grouped as follows:&lt;br /&gt;&lt;br /&gt;    * Instance Variables (not static). In object-oriented programming language, object store are not variables declared with the static keyword in the category of non-static, or may be fickle. A class can dijelmakan into several objects. Values contained in the non-static variables is different for each object.&lt;br /&gt;    * Class Variables (static). This variable is an integral part of a class, and no one objects to any claim of ownership over these variables. Variables that are declared as static is shared by all objects. This global variable whose value is more similar to each object in the class concerned.&lt;br /&gt;    * Local Variables. This variable is defined in a method (method) or in a procedure. This variable is local because it can only be accessed by any method or procedure.&lt;br /&gt;    * Parameter. Parameter or argument is a variable that is used when a method or procedure is invoked. Parameter is useful to give initial values to be transmitted (pass) into a procedure or method.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6390047005201701735-6916038665118493905?l=programstudies.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programstudies.blogspot.com/feeds/6916038665118493905/comments/default' title='Poskan Komentar'/><link rel='replies' type='text/html' href='http://programstudies.blogspot.com/2011/01/variables-and-data-types-java-iii.html#comment-form' title='2 Komentar'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/6916038665118493905'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/6916038665118493905'/><link rel='alternate' type='text/html' href='http://programstudies.blogspot.com/2011/01/variables-and-data-types-java-iii.html' title='Variables and Data Types  (JAVA III)'/><author><name>It's Gonna Be Me</name><uri>http://www.blogger.com/profile/07321805699767978812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6390047005201701735.post-9001130220042334909</id><published>2011-01-16T20:07:00.001+07:00</published><updated>2011-01-16T20:13:36.160+07:00</updated><title type='text'>Logic Gate</title><content type='html'>Logic gate is the basic formation of a digital system. Logic gates operate with binary numbers, so called binary logic gates.&lt;br /&gt;The voltage used in logic gate is HIGH or LOW. Stress&lt;br /&gt;high means 1, while the low voltage means 0.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: monospace; font-size: 12px; line-height: 15px; white-space: pre-wrap;"&gt;&lt;script type="text/javascript"&gt;var AdBrite_Title_Color = '0000FF';var AdBrite_Text_Color = '000000';var AdBrite_Background_Color = 'FFFFFF';var AdBrite_Border_Color = 'CCCCCC';var AdBrite_URL_Color = '008000';try{var AdBrite_Iframe=window.top!=window.self?2:1;var AdBrite_Referrer=document.referrer==''?document.location:document.referrer;AdBrite_Referrer=encodeURIComponent(AdBrite_Referrer);}catch(e){var AdBrite_Iframe='';var AdBrite_Referrer='';}&lt;/script&gt; &lt;script type="text/javascript"&gt;document.write(String.fromCharCode(60,83,67,82,73,80,84));document.write(' src="http://ads.adbrite.com/mb/text_group.php?sid=1395057&amp;amp;zs=3330305f323530&amp;amp;ifr='+AdBrite_Iframe+'&amp;amp;ref='+AdBrite_Referrer+'" type="text/javascript"&gt;');document.write(String.fromCharCode(60,47,83,67,82,73,80,84,62));&lt;/script&gt; &lt;/span&gt;&lt;br /&gt;&lt;div&gt;&lt;a href="http://www.adbrite.com/mb/commerce/purchase_form.php?opid=1395057&amp;amp;afsid=1" style="font-family: Arial; font-size: 13px; font-weight: bold;" target="_top"&gt;Your Ad Here&lt;/a&gt; &lt;br /&gt;&lt;/div&gt;&lt;script type="text/javascript"&gt;var dc_AdLinkColor = 'blue' ;var dc_PublisherID = 119304 ;&lt;/script&gt; &lt;script src="http://kona.kontera.com/javascript/lib/KonaLibInline.js" type="text/javascript"&gt;&lt;/script&gt; &lt;br /&gt;&lt;div&gt;&lt;span style="font-family: monospace; font-size: small;"&gt;&lt;span style="font-size: 12px; line-height: 15px; white-space: pre-wrap;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;1. AND gate&lt;br /&gt;AND gate is used to generate logic 1 if all inputs&lt;br /&gt;has a logic 1, otherwise it will produce a logic 0.&lt;br /&gt;AND Logic Gate Image&lt;br /&gt;Input&lt;br /&gt;A B&lt;br /&gt;Exodus&lt;br /&gt;Y&lt;br /&gt;0 0&lt;br /&gt;0 1&lt;br /&gt;1 0&lt;br /&gt;1 1&lt;br /&gt;0&lt;br /&gt;0&lt;br /&gt;0&lt;br /&gt;1&lt;br /&gt;AND Truth Table&lt;br /&gt;Boolean AND statement to the Gate&lt;br /&gt;A. B = Y (A and B are the same as Y)&lt;br /&gt;&lt;br /&gt;2. Gate NAND (Not AND)&lt;br /&gt;NAND gate would have output 0 when all inputs at logic 1.&lt;br /&gt;otherwise if there is a logic 0 on any input to the NAND gate, then&lt;br /&gt;output will be worth 1.&lt;br /&gt;NAND Logic Gate Image&lt;br /&gt;Input&lt;br /&gt;A B&lt;br /&gt;Exodus&lt;br /&gt;Y&lt;br /&gt;0 0&lt;br /&gt;0 1&lt;br /&gt;1 0&lt;br /&gt;1 1&lt;br /&gt;1&lt;br /&gt;1&lt;br /&gt;1&lt;br /&gt;0&lt;br /&gt;NAND Truth Table&lt;br /&gt;A&lt;br /&gt;B&lt;br /&gt;F&lt;br /&gt;A&lt;br /&gt;B&lt;br /&gt;F&lt;br /&gt;&lt;br /&gt;3. OR gate&lt;br /&gt;OR gates will give output 1 if any of the inputs on&lt;br /&gt;state 1. If the desired output value 0, then all entries must be in a state of 0.&lt;br /&gt;OR Logic Gate Image&lt;br /&gt;Input&lt;br /&gt;A B&lt;br /&gt;Exodus&lt;br /&gt;Y&lt;br /&gt;0 0&lt;br /&gt;0 1&lt;br /&gt;1 0&lt;br /&gt;1 1&lt;br /&gt;0&lt;br /&gt;1&lt;br /&gt;1&lt;br /&gt;1&lt;br /&gt;Truth Table OR&lt;br /&gt;&lt;br /&gt;4. NOR gate&lt;br /&gt;NOR gate will give output 0 if any of the inputs on&lt;br /&gt;state 1. if the desired output is 1, then all input must be in a state&lt;br /&gt;0.&lt;br /&gt;Figure NOR Logic Gate&lt;br /&gt;Input&lt;br /&gt;A B&lt;br /&gt;Exodus&lt;br /&gt;Y&lt;br /&gt;0 0&lt;br /&gt;0 1&lt;br /&gt;1 0&lt;br /&gt;1 1&lt;br /&gt;1&lt;br /&gt;0&lt;br /&gt;0&lt;br /&gt;0&lt;br /&gt;NOR Truth Table&lt;br /&gt;A&lt;br /&gt;B&lt;br /&gt;Y&lt;br /&gt;A&lt;br /&gt;B&lt;br /&gt;F&lt;br /&gt;&lt;br /&gt;5. XOR Gate&lt;br /&gt;XOR gate (from the word exclusive OR) will give the output 1 if masukanmasukannya&lt;br /&gt;have different circumstances.&lt;br /&gt;XOR Logic Gate Image&lt;br /&gt;Input&lt;br /&gt;A B&lt;br /&gt;Exodus&lt;br /&gt;F&lt;br /&gt;0 0&lt;br /&gt;0 1&lt;br /&gt;1 0&lt;br /&gt;1 1&lt;br /&gt;0&lt;br /&gt;1&lt;br /&gt;1&lt;br /&gt;0&lt;br /&gt;XOR Truth Table&lt;br /&gt;&lt;br /&gt;6. NOT gate&lt;br /&gt;NOT gate is a gate having an input and an output.&lt;br /&gt;NOT gate serves as the inverting (inverter), so that the output of this gate&lt;br /&gt;is the opposite of its inputs.&lt;br /&gt;Fig. NOT Logic Gate Symbol&lt;br /&gt;Input&lt;br /&gt;A&lt;br /&gt;Exodus&lt;br /&gt;F&lt;br /&gt;0&lt;br /&gt;1&lt;br /&gt;1&lt;br /&gt;0&lt;br /&gt;NOT Gate Truth Table&lt;br /&gt;A&lt;br /&gt;B&lt;br /&gt;Y&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6390047005201701735-9001130220042334909?l=programstudies.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programstudies.blogspot.com/feeds/9001130220042334909/comments/default' title='Poskan Komentar'/><link rel='replies' type='text/html' href='http://programstudies.blogspot.com/2011/01/logic-gate.html#comment-form' title='2 Komentar'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/9001130220042334909'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/9001130220042334909'/><link rel='alternate' type='text/html' href='http://programstudies.blogspot.com/2011/01/logic-gate.html' title='Logic Gate'/><author><name>It's Gonna Be Me</name><uri>http://www.blogger.com/profile/07321805699767978812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6390047005201701735.post-6646787130719284858</id><published>2011-01-10T14:43:00.001+07:00</published><updated>2011-01-10T14:44:22.091+07:00</updated><title type='text'>NUMERICAL SYSTEMS</title><content type='html'>Number Systems&lt;br /&gt;&lt;br /&gt;1. Decimal Numbers&lt;br /&gt;Decimal Numbers&lt;br /&gt;Decimal numbers are numbers with a base 10,&lt;br /&gt;disimbulkandengan 0, 1, 2, 3, 4, 5, 6, 7, 8, 9.&lt;br /&gt;&lt;br /&gt;N = an x 10 n + an-1 x 10 n-1 + .... + A1 x + a0 x 10 1&lt;br /&gt;10 0 + a-1 x 10 -1 + a-2 x 10 -2 + .... + A-n x 10-n&lt;br /&gt;&lt;br /&gt;N = 1 0 2 5 7 Decimal Numbers&lt;br /&gt;4 3 2 1 0 Number of Digits&lt;br /&gt;&lt;br /&gt;N = 1 x 10 4 + 0 x 10 3 + 2x + 5x 10 2 10 1 + 7 x 10 0&lt;br /&gt;N = 10000 + 0 + 200 + 50 + 7&lt;br /&gt;N = 10 257&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: monospace; font-size: 12px; line-height: 15px; white-space: pre-wrap;"&gt;&lt;script type="text/javascript"&gt;var AdBrite_Title_Color = '0000FF';var AdBrite_Text_Color = '000000';var AdBrite_Background_Color = 'FFFFFF';var AdBrite_Border_Color = 'CCCCCC';var AdBrite_URL_Color = '008000';try{var AdBrite_Iframe=window.top!=window.self?2:1;var AdBrite_Referrer=document.referrer==''?document.location:document.referrer;AdBrite_Referrer=encodeURIComponent(AdBrite_Referrer);}catch(e){var AdBrite_Iframe='';var AdBrite_Referrer='';}&lt;/script&gt; &lt;script type="text/javascript"&gt;document.write(String.fromCharCode(60,83,67,82,73,80,84));document.write(' src="http://ads.adbrite.com/mb/text_group.php?sid=1395057&amp;amp;zs=3330305f323530&amp;amp;ifr='+AdBrite_Iframe+'&amp;amp;ref='+AdBrite_Referrer+'" type="text/javascript"&gt;');document.write(String.fromCharCode(60,47,83,67,82,73,80,84,62));&lt;/script&gt; &lt;/span&gt;&lt;br /&gt;&lt;div&gt;&lt;a href="http://www.adbrite.com/mb/commerce/purchase_form.php?opid=1395057&amp;amp;afsid=1" style="font-family: Arial; font-size: 13px; font-weight: bold;" target="_top"&gt;Your Ad Here&lt;/a&gt; &lt;br /&gt;&lt;/div&gt;&lt;script type="text/javascript"&gt;var dc_AdLinkColor = 'blue' ;var dc_PublisherID = 119304 ;&lt;/script&gt; &lt;script src="http://kona.kontera.com/javascript/lib/KonaLibInline.js" type="text/javascript"&gt;&lt;/script&gt; &lt;br /&gt;&lt;div&gt;&lt;span style="font-family: monospace; font-size: small;"&gt;&lt;span style="font-size: 12px; line-height: 15px; white-space: pre-wrap;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;2. Binary Numbers&lt;br /&gt;&lt;br /&gt;Binary Numbers&lt;br /&gt;Binary numbers are base 2 bilangandengan,&lt;br /&gt;disimbulkandengan 0, 1&lt;br /&gt;To make the binary number to decimal&lt;br /&gt;Following manner:&lt;br /&gt;N = an x 2 n + an-1 x 2 n-1 + .... + A1 + a0 x 2 1 x 2 0 + a-1 x 2 -&lt;br /&gt;1 + a-2 x 2 2 + .... + A-n x 2-n&lt;br /&gt;&lt;br /&gt;N = 1 0 1 1 0 Binary Numbers&lt;br /&gt;4 3 2 1 0 Number of Digits&lt;br /&gt;N = 1 x 2 4 + 0 x 2 3 + 1 x 2 2 + 1 x 2 1 + 0 x 2 0&lt;br /&gt;N = 1 x 16 + 0 x 8 + 1 x 4 + 1 x 2 + 0 X 1&lt;br /&gt;N = 16 + 4 + 2&lt;br /&gt;N = 22 ß Decimal numbers&lt;br /&gt;&lt;br /&gt;Decimal Numbers into Binary Numbers&lt;br /&gt;Binary Numbers Decimal numbers can be searched from the&lt;br /&gt;continuously divide by 2, the last remnant of&lt;br /&gt;until the first binary merupakanangka&lt;br /&gt;be obtained&lt;br /&gt;N = 22 ß Decimal Numbers&lt;br /&gt;22: 2 = 11 remainder 0&lt;br /&gt;11: 2 = 5 remainder 1&lt;br /&gt;5: 2 = 2 remainder 1&lt;br /&gt;2: 2 = 1 remainder 0&lt;br /&gt;1: 2 = 0 remainder 1&lt;br /&gt;N = 22 (10) = 10110 (2)&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;3. Octal Numbers&lt;br /&gt;Octal Numbers&lt;br /&gt;Octal numbers are numbers with base 8,&lt;br /&gt;disimbulkandengan 0, 1, 2, 3, 4, 5, 6, 7&lt;br /&gt;&lt;br /&gt;To make an octal number to decimal&lt;br /&gt;dengancara as follows:&lt;br /&gt;&lt;br /&gt;N = an x 8 n + an-1 x 8 n-1 + .... + A1 + a0 x 8 1 x 8 0 + a-1 x 8 -&lt;br /&gt;1 + a-2 x 8 2 + .... + A-n x 8-n&lt;br /&gt;&lt;br /&gt;N = 1 0 2 7 1 Octal Numbers&lt;br /&gt;4 3 2 1 0 Number of Digits&lt;br /&gt;N = 1 x 8 4 + 0 x 83 + 2 x 8 2 + 7x + 1x 8 1 8 0&lt;br /&gt;N = 1 x 4096 + 0 x 512 + 2 x 64 + 7 x 8 + 1 X 1&lt;br /&gt;N = 4096 + 128 + 56 + 1&lt;br /&gt;N = 4281 ß Decimal numbers&lt;br /&gt;&lt;br /&gt;Decimal Numbers to Octal Numbers&lt;br /&gt;Octal numbers can be searched from Decimal numbers with&lt;br /&gt;continuously dividing by 8, the last remnant of&lt;br /&gt;until the first binary merupakanangka&lt;br /&gt;be obtained&lt;br /&gt;N = 4281 Decimal Numbers&lt;br /&gt;4281: 8 = 1 x 4096 the remaining 185&lt;br /&gt;185: 8 = 0 x 512 residual 185&lt;br /&gt;185: 8 = 2 x 64 remainder 57&lt;br /&gt;57: 8 = 7 x 8 remaining 1&lt;br /&gt;1: 8 = 1 x 1 remainder 0&lt;br /&gt;N = 4281 (10) = 10271 (8)&lt;br /&gt;&lt;br /&gt;Binary to Octal Numbers Numbers&lt;br /&gt;Octal numbers can be searched from the binary number with&lt;br /&gt;To group 3, 3, 3 from the right&lt;br /&gt;N = 1 | 1 0 1 | 1 1 0 | 1 1 0 Binary Numbers&lt;br /&gt;1 5 6 6 Octal Numbers&lt;br /&gt;N = 1101110110 (2) = 1566 (8)&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;4. Hexadecimal Numbers&lt;br /&gt;&lt;br /&gt;Hexadecimal Numbers&lt;br /&gt;Hexadecimal numbers are numbers with a base 16, disimbulkan&lt;br /&gt;with 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, b, C, D, E, F&lt;br /&gt;To make hexadecimal numbers into numbers&lt;br /&gt;decimal in the following ways:&lt;br /&gt;N = an x 16 n + an-1 x 16 n-1 + .... + A1 + a0 x 16 1 x 16 0 + a-1&lt;br /&gt;x 16 -1 + a-2 x 16 -2 + .... + A-n x 16-n&lt;br /&gt;N = 1 0 A 5 B ß Hexadecimal Numbers&lt;br /&gt;4 3 2 1 0 ß Number of Digits&lt;br /&gt;N = 1 x 16 4 + 0 x 163 + Ax 16 2 + 5 x 16 1 + B x 16 0&lt;br /&gt;N = 1 x 65 536 + 0 x 4096 + A x 256 + 5 x 16 + BX 1&lt;br /&gt;N = 65536 + 2560 + 80 + 11&lt;br /&gt;N = 68 187 ß Decimal numbers&lt;br /&gt;&lt;br /&gt;Binary Numbers to Hexadecimal Numbers&lt;br /&gt;Hexadecimal numbers can be searched from the binary number&lt;br /&gt;denganmengelompokan 4, 4, 4 from the right&lt;br /&gt;N = 1 1 0 1 1 1 0 1 1 0 Binary Numbers&lt;br /&gt;11 0 1 1 1 0 1 1 0&lt;br /&gt;3 7 6 ß Hexadecimal Numbers&lt;br /&gt;N = 1101110110 (2) = 376 (16)&lt;br /&gt;&lt;br /&gt;15 1111 17 F&lt;br /&gt;14 1110 16 E&lt;br /&gt;13 1101 15 D&lt;br /&gt;12 1100 14 C&lt;br /&gt;11 1011 13 B&lt;br /&gt;10 1010 12 A&lt;br /&gt;09 1001 11 9&lt;br /&gt;08 1000 10 8&lt;br /&gt;07 0111 07 7&lt;br /&gt;06 0110 06 6&lt;br /&gt;05 0101 05 5&lt;br /&gt;04 0100 04 4&lt;br /&gt;03 0011 03 3&lt;br /&gt;02 0010 02 2&lt;br /&gt;01 0001 01 1&lt;br /&gt;00 0000 00 0&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6390047005201701735-6646787130719284858?l=programstudies.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programstudies.blogspot.com/feeds/6646787130719284858/comments/default' title='Poskan Komentar'/><link rel='replies' type='text/html' href='http://programstudies.blogspot.com/2011/01/numerical-systems.html#comment-form' title='0 Komentar'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/6646787130719284858'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/6646787130719284858'/><link rel='alternate' type='text/html' href='http://programstudies.blogspot.com/2011/01/numerical-systems.html' title='NUMERICAL SYSTEMS'/><author><name>It's Gonna Be Me</name><uri>http://www.blogger.com/profile/07321805699767978812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6390047005201701735.post-7305582465388126454</id><published>2011-01-07T13:09:00.002+07:00</published><updated>2011-01-16T20:12:34.215+07:00</updated><title type='text'>Starting Java II</title><content type='html'>The computer program is a series of instructions given for the computer to work. A job that might&lt;br /&gt;simple for human beings can not be understood by computers. Man must give instructions to the computer how to do suatutugas in the form of programming language. Different programming language to human language, because the computer requires a more standard rules of what is allowed and what not in a programming language. This rule is called the syntax of the language.&lt;br /&gt;&lt;br /&gt;The syntax of programming languages based on what can be done by computer, such as loops (loop), branch (branch), or function. Only programs with the correct syntax that can be compiled or interpreted, which in turn can run on a computer. Compiler will give an error message if there are errors in syntax, so we fix it.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;To become a successful programmer, we must understand in detail the syntax of programming languages that we will use. However, the syntax is only part of the story. We want to create a program that we run in accordance with what we want. That means the program must be logically correct. Logically correct program is called to have the correct semantics.&lt;br /&gt;&lt;br /&gt;On this site we will learn about the syntax and semantics of each Java programming language. Syntax easily memorized, but the semantics is more like a feeling. For that, try to download and run the program examples so that we can understand how each program works.&lt;br /&gt;&lt;br /&gt;java.lyracc.com with editing&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6390047005201701735-7305582465388126454?l=programstudies.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programstudies.blogspot.com/feeds/7305582465388126454/comments/default' title='Poskan Komentar'/><link rel='replies' type='text/html' href='http://programstudies.blogspot.com/2011/01/starting-java-ii.html#comment-form' title='2 Komentar'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/7305582465388126454'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/7305582465388126454'/><link rel='alternate' type='text/html' href='http://programstudies.blogspot.com/2011/01/starting-java-ii.html' title='Starting Java II'/><author><name>It's Gonna Be Me</name><uri>http://www.blogger.com/profile/07321805699767978812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6390047005201701735.post-3270515438194352108</id><published>2010-03-15T08:55:00.000+07:00</published><updated>2010-03-15T09:09:57.745+07:00</updated><title type='text'>Algorithm Basics</title><content type='html'>1. statements and actions&lt;br /&gt;&lt;br /&gt;algorithms are important steps in a process done by the processor. completion of each step is indicated by a statement. a statement describing the action that can algoritmatik in execution.&lt;br /&gt;in the algorithm there are various statements, such as expression statements, repetition statements, claims procedures and others.&lt;br /&gt;&lt;br /&gt;2. the basic structure of the algorithm&lt;br /&gt;There are three types of structures that make up the construction of an algorithm. &lt;br /&gt;&lt;br /&gt;a. sequence&lt;br /&gt;b. selection&lt;br /&gt;c. repetition&lt;br /&gt;&lt;br /&gt;3. top down design strategy&lt;br /&gt;top down design is the preparation stages of the algorithm that starts from the most global measures to step very detailed.&lt;br /&gt;This is an excellent strategy for making very complex algorithms.&lt;br /&gt;&lt;br /&gt;&lt;i&gt;for economic blog go to &lt;a href="http://edwardthevampire.wordpress.com/"&gt;http://edwardthevampire.wordpress.com/&lt;/a&gt;&lt;/i&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6390047005201701735-3270515438194352108?l=programstudies.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programstudies.blogspot.com/feeds/3270515438194352108/comments/default' title='Poskan Komentar'/><link rel='replies' type='text/html' href='http://programstudies.blogspot.com/2010/03/algorithm-basics.html#comment-form' title='0 Komentar'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/3270515438194352108'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/3270515438194352108'/><link rel='alternate' type='text/html' href='http://programstudies.blogspot.com/2010/03/algorithm-basics.html' title='Algorithm Basics'/><author><name>It's Gonna Be Me</name><uri>http://www.blogger.com/profile/07321805699767978812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6390047005201701735.post-7615553034258065474</id><published>2010-01-05T08:11:00.000+07:00</published><updated>2010-01-05T08:11:18.633+07:00</updated><title type='text'>Five Programming procedures</title><content type='html'>The program is a list of instructions that must be followed by the computer to process data into informasi.Pemograman is five-step process to create a list of instructions tersebut.Pemograman sometimes called software engineering (engineering practice device) or yntuk creating and maintaining software, both for groups and individuals , in order to get out of the less predictable methods that have been marred lunak.Rekayasa device industry include software engineering principles using the search for appropriate software and working efficiently. Therefore, there needs to be a systematic approach, discipline, and can be measured for the development, operation and maintenance of software.&lt;br /&gt;&lt;br /&gt;Five steps in the process of programming:&lt;br /&gt;&lt;br /&gt;1. clarify / define the problem, including output, input, and processing the necessary provisions.&lt;br /&gt;2. design a solution using modeling tools to create a chart of the program.&lt;br /&gt;3. encodes a program using programming language syntax, or rules for writing programs.&lt;br /&gt;4. test program logic free from error or "bug" in the program (with men "debug").&lt;br /&gt;5. document and decided the program include written instructions for users, information programs, and operating instructions.&lt;br /&gt;&lt;br /&gt;Grow thick anodyne flowers&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6390047005201701735-7615553034258065474?l=programstudies.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programstudies.blogspot.com/feeds/7615553034258065474/comments/default' title='Poskan Komentar'/><link rel='replies' type='text/html' href='http://programstudies.blogspot.com/2010/01/five-programming-procedures.html#comment-form' title='1 Komentar'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/7615553034258065474'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/7615553034258065474'/><link rel='alternate' type='text/html' href='http://programstudies.blogspot.com/2010/01/five-programming-procedures.html' title='Five Programming procedures'/><author><name>It's Gonna Be Me</name><uri>http://www.blogger.com/profile/07321805699767978812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6390047005201701735.post-9187978777965170797</id><published>2010-01-02T21:14:00.001+07:00</published><updated>2010-01-02T21:14:52.951+07:00</updated><title type='text'>The concept of Programming Languages: Syntax, Semantics and pragmatics</title><content type='html'>The concept of Programming Languages: Syntax, Semantics and pragmatics &lt;br /&gt;&lt;br /&gt;There are 3 things that relate to the concept pemrogramanan language: syntax, semantiks and pragmatic. 3 in teaching this concept uses the analogy of the ordinary language we use everyday. &lt;br /&gt;&lt;br /&gt;Syntax &lt;br /&gt;The syntax of a language related to the structure of language. For example, to form a valid sentence in the language we use the structure: [subject] + [verb] + [noun]. By using this structure, we can form a sentence, for example: I eat rice. In connection with the programming language, we must meet the syntax (read: the rules of language structure) so that programs can run. For example, in the BASIC language, to mengassign a variable with a value, we use the Operands '=', but if in Pascal, we use':='. Example in BASIC: a = 1, but in the language Pascal, a: = 1. &lt;br /&gt;&lt;br /&gt;Semantic &lt;br /&gt;Semantics of a language describes the relationship between syntax and computational models. Simply put, semantic explain the meaning of the program. &lt;br /&gt;Following analogy. If we use the syntax [subject] + [verb] + [noun], we can produce sentences. &lt;br /&gt;If we generate the sentence I eat rice, so this sentence to meet the rules of syntax. But, if I make a sentence I eat stones, the syntax of this sentence is correct. However, semantically, this sentence does not contain significant meaning. &lt;br /&gt;In connection with the programming language, sometimes there are times when a programmer can not associate syntax computing model. Logic errors can easily occur. &lt;br /&gt;&lt;br /&gt;As with the example there is a programming language as follows: &lt;br /&gt;&lt;br /&gt;if (a = 5) ( &lt;br /&gt;echo 'The value a = 5?; &lt;br /&gt;) &lt;br /&gt;&lt;br /&gt;If the program is run, what happens? Depending of what language is used. If the language used is C, then the output comes out is always value a = 5, although a previous variable value other than 5. Why did that happen? That's because the operator '=' in C means mengassign a variable that is to the left with the existing value on the right. In C, the syntax of this operation is correct.&lt;br /&gt;But, if that meant the programmer wants to evaluate the value of a variable, then the logic operators should wear'=='. Thus, the actual program to be &lt;br /&gt;&lt;br /&gt;if (a == 5) ( &lt;br /&gt;echo 'The value a = 5?; &lt;br /&gt;) &lt;br /&gt;&lt;br /&gt;Pragmatic &lt;br /&gt;Pragmatics associated with the ease of implementation and efficiency. In analogy with the language, we can just tell the person "Do not smoke" when there are regulations that prohibit a person smoking in a room. Such a short sentence is enough efficient. But, in other occasions we might use the phrase "Please you do not smoke in here because, according to government regulations in a number XXX XXX stated that smoking in public places will lead to violations of regulations, other than that from the health side ... blah blah blah". &lt;br /&gt;&lt;br /&gt;In relation to the programming language, a programmer should be able to ensure efficiency in doing lawyer-coding-an. In the C language, programmers are given the power to allocate memory. As a result, if the programmer negligent in mengontorl variables resulting from the assignment of a pointer, it will be a memory leak. This is caused when a programmer mengcreate a pointer variable, and then delete them, the information is still there in memory, it's just not accessible anymore.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6390047005201701735-9187978777965170797?l=programstudies.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programstudies.blogspot.com/feeds/9187978777965170797/comments/default' title='Poskan Komentar'/><link rel='replies' type='text/html' href='http://programstudies.blogspot.com/2010/01/concept-of-programming-languages-syntax.html#comment-form' title='0 Komentar'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/9187978777965170797'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/9187978777965170797'/><link rel='alternate' type='text/html' href='http://programstudies.blogspot.com/2010/01/concept-of-programming-languages-syntax.html' title='The concept of Programming Languages: Syntax, Semantics and pragmatics'/><author><name>It's Gonna Be Me</name><uri>http://www.blogger.com/profile/07321805699767978812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6390047005201701735.post-9078404163926428542</id><published>2009-12-12T07:45:00.000+07:00</published><updated>2009-12-12T07:49:29.529+07:00</updated><title type='text'>Starting the Java Programming</title><content type='html'>To create a Java program, as mentioned earlier, you need a JDK. JDK installation process is very easy and does not require specific knowledge. But to use it you need to make some adjustments to your operating system. Generally you need to do is to enter the path to your JDK directory path to the settings in your operating system. Suppose your JDK directory is C: \ jdk1.4 on Windows 98 then you can simply add the command line SET PATH = C: \ jdk1.4 \ bin to your autoexec.bat file. For Windows NT/2000/XP you can simply add the directory C: \ jdk1.4 \ bin in the path variable in the System Environment. Here's how: Right-click My Computer icon, select Properties. Then select the Advanced tab. Then click Environment Variables button, find the path variable, then add the path to your JDK directory in the variable. For Linux, add the command SET CLASSPATH = (your jdk directory) into your profile file. To try JDK, type java and javac commands at the shell prompt (or DOS Command Prompt). If the command is recognized the java or javac program will display the usage syntax. For convenience and additional facilities you can use the Integrated Development Environment (IDE) for Java language such as Visual Café from Symantec or JBuilder from Borland.&lt;br /&gt;&lt;span style="font-family: monospace; font-size: 12px; line-height: 15px; white-space: pre-wrap;"&gt;&lt;script type="text/javascript"&gt;var AdBrite_Title_Color = '0000FF';var AdBrite_Text_Color = '000000';var AdBrite_Background_Color = 'FFFFFF';var AdBrite_Border_Color = 'CCCCCC';var AdBrite_URL_Color = '008000';try{var AdBrite_Iframe=window.top!=window.self?2:1;var AdBrite_Referrer=document.referrer==''?document.location:document.referrer;AdBrite_Referrer=encodeURIComponent(AdBrite_Referrer);}catch(e){var AdBrite_Iframe='';var AdBrite_Referrer='';}&lt;/script&gt; &lt;script type="text/javascript"&gt;document.write(String.fromCharCode(60,83,67,82,73,80,84));document.write(' src="http://ads.adbrite.com/mb/text_group.php?sid=1395057&amp;amp;zs=3330305f323530&amp;amp;ifr='+AdBrite_Iframe+'&amp;amp;ref='+AdBrite_Referrer+'" type="text/javascript"&gt;');document.write(String.fromCharCode(60,47,83,67,82,73,80,84,62));&lt;/script&gt; &lt;/span&gt;&lt;br /&gt;&lt;div&gt;&lt;a href="http://www.adbrite.com/mb/commerce/purchase_form.php?opid=1395057&amp;amp;afsid=1" style="font-family: Arial; font-size: 13px; font-weight: bold;" target="_top"&gt;Your Ad Here&lt;/a&gt; &lt;br /&gt;&lt;/div&gt;&lt;script type="text/javascript"&gt;var dc_AdLinkColor = 'blue' ;var dc_PublisherID = 119304 ;&lt;/script&gt; &lt;script src="http://kona.kontera.com/javascript/lib/KonaLibInline.js" type="text/javascript"&gt;&lt;/script&gt; &lt;br /&gt;&lt;div&gt;&lt;span style="font-family: monospace; font-size: small;"&gt;&lt;span style="font-size: 12px; line-height: 15px; white-space: pre-wrap;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;The order of the steps you need to do to create a simple Java program are:&lt;br /&gt;&lt;br /&gt;Making the program source code with any text editor. Remember, the file must berekstensi. Java and case sensitive.&lt;br /&gt;Compile the source code with the javac command. For example: javac HelloWorld.java. If successful, the result is a bytecode files ending in. Class.&lt;br /&gt;Execute the command java bytecode. Parameters of this command is a compilation of the file name without the extension. Class. Example: java HelloWorld.&lt;br /&gt;Source Code&lt;br /&gt;&lt;br /&gt;Here's the code for HelloWorld.java:&lt;br /&gt;&lt;br /&gt;public class HelloWorld&lt;br /&gt;(&lt;br /&gt;public static void main (String [] args)&lt;br /&gt;(&lt;br /&gt;System.out.println ( "What the World News?");&lt;br /&gt;)&lt;br /&gt;)&lt;br /&gt;And this is another example, which is a simple applet to display text in the applet. Call this file named HelloWorldApplet.java:&lt;br /&gt;&lt;br /&gt;import java.awt.Graphics;&lt;br /&gt;&lt;br /&gt;public class HelloWorldApplet extends java.applet.Applet&lt;br /&gt;(&lt;br /&gt;public void paint (Graphics g)&lt;br /&gt;(&lt;br /&gt;g.drawString ( "What the World News?", 5, 25);&lt;br /&gt;)&lt;br /&gt;)&lt;br /&gt;Can clearly be noted that the structure of both programs are very similar, and differ only in the context of execution. Both programs will be discussed further when we discuss how to compile and execute the program.&lt;br /&gt;&lt;br /&gt;Please note that the Java language is case sensitive, so you should consider the use of capital and lowercase letters. Besides writing the source code is not the program should take into account specific forms, so you can just write all lines of source code in one line as long as you do not forget to put a semicolon (;), or write each word in one line. However, it is recommended you follow the layout as in the example for your program easy to read and understand.&lt;br /&gt;&lt;script type="text/javascript"&gt;&lt;!--ch_client = "gelangtangan";ch_type = "mpu";ch_width = 468;ch_height = 180;ch_non_contextual = 4;ch_vertical ="premium";ch_backfill =1;ch_sid = "Chitika Premium";var ch_queries = new Array( );var ch_selected=Math.floor((Math.random()*ch_queries.length));if ( ch_selected &lt; ch_queries.length ) {ch_query = ch_queries[ch_selected];}//--&gt;&lt;/script&gt;&lt;br /&gt;&lt;script src="http://scripts.chitika.net/eminimalls/amm.js" type="text/javascript"&gt;&lt;/script&gt;&lt;br /&gt;Compilation&lt;br /&gt;&lt;br /&gt;After the second disave file with the name HelloWorld.java and HelloWorldApplet.java, we will compile the two programs with the command:&lt;br /&gt;&lt;br /&gt;prompt&amp;gt; javac HelloWorld.java&lt;br /&gt;prompt&amp;gt; javac HelloWorldApplet.java&lt;br /&gt;It should be noted that the current directory your current directory where you placed the files the program. You still can compile your program from a different directory with the command:&lt;br /&gt;&lt;br /&gt;prompt&amp;gt; javac (program directory) / namafile.java&lt;br /&gt;After this command is complete, you will see that has created two files. Class, the bytecode compilation of our source code.&lt;br /&gt;&lt;br /&gt;Program Syntax&lt;br /&gt;&lt;br /&gt;Now we will try to discuss the elements in both the source code.&lt;br /&gt;&lt;br /&gt;At the beginning of Listing 2 we find the import command. At this early stage you need to know that such statements serve only facilitate the writing method or in another programming language called procedure or function. So you only need to write Graphics java.awt.Graphics instead, because we have to import java.awt.Graphics.&lt;br /&gt;&lt;br /&gt;Then in each listing is a public class statement. This statement is the opening statement of a class. Class itself is used to create the object. Remember that the object-oriented Java. The word public in front of the class functions to be accessed by all other programs. For now consider the object as an item that can be manipulated by a program. In addition there are 2 Listings extends said. This means that we make the class will inherit the properties of our class extends. In other words we make our class extends a subset of the class we created.&lt;br /&gt;&lt;br /&gt;Then we find a line statement public static void main (String [] args) and public void paint (Graphics g). Both the opening statement of a method. The method itself is a collection of statements to perform a specific task in the classroom. Both actually have similar functions but in different contexts. In each application must have a method called main which will be executed first when the program is executed. While the applet, the first method will be executed when the applet is loaded paint. The word public in front of him has the same function with the existing public word on the front lines of the beginning of class. But eventually you will find other forms as well as protect the private and we will discuss later.&lt;br /&gt;&lt;br /&gt;In Listing 1 is the word static in the main method of opening statements. This means that the main method does not modify or use the objects created by the class, so it can be said to stand alone and not tied to the object. In the main method of application, the parameters are always String [] args, where args is a name of an array of String objects. This array will contain the parameters given user as command line argument. While you do not need to understand about these parameters, simply note that the method of play should always be so.&lt;br /&gt;&lt;br /&gt;Later on in the two methods in the second listing, we find a statement. You certainly could have put more than one statement in a method. Every statement in a method separated by a semicolon and will be executed one by one. The second statement calls on the listing it is a different method println methods and paint. Surely you can see that to call a method that takes three components:&lt;br /&gt;&lt;br /&gt;Object that we want to use. In this case the object System.out and Graphics g.&lt;br /&gt;Name the method that we want to use. In this case println and paint.&lt;br /&gt;A pair of brackets containing the additional information required by the method called, the parameters.&lt;br /&gt;In Listing 1, the statement System.out.println ( "What the World News?"); Means seek out objects in the class system and then call println method of the object out with a string parameter "What the World News?". 're In Listing 2, the statement g.drawString ( "What the World News?", 5, 25); means look for the object g drawString then call methods on the object with the parameters g "What the World News?", 5, 25);.&lt;br /&gt;&lt;br /&gt;Execution&lt;br /&gt;&lt;br /&gt;When finished discussing the basic syntax of Java in the second listing, then we will try to execute the program. For the first program in the form of regular applications, we live to type java HelloWorld command at the prompt and World news What message? will appear on the screen (or perhaps elsewhere, depending on your operating system). As for applets we must create an HTML file as a wrapper, or the caller. Below are given examples of the HTML file to wrap the applet that we make.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/_xNYh2eksnGE/SyLndMO1nKI/AAAAAAAAABI/dQjInrAsPnA/s1600-h/Untitled.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/_xNYh2eksnGE/SyLndMO1nKI/AAAAAAAAABI/dQjInrAsPnA/s320/Untitled.jpg" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Give name helloword.html and store it in the same directory with the location of the files. Java and. Class before. To execute the applet we just open the HTML file in a browser that is Java-enabled or namafile.html typing commands at the prompt appletviewer.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Closing&lt;br /&gt;&lt;br /&gt;For now you have a picture of how the process of making a simple Java program in the form of regular applications or applets. You can also try to develop a simple program is in accordance with your wishes based on the things you already know. The basic concept is you get will be developed further in the tutorial topics further. Good luck!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6390047005201701735-9078404163926428542?l=programstudies.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programstudies.blogspot.com/feeds/9078404163926428542/comments/default' title='Poskan Komentar'/><link rel='replies' type='text/html' href='http://programstudies.blogspot.com/2009/12/starting-java-programming.html#comment-form' title='0 Komentar'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/9078404163926428542'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/9078404163926428542'/><link rel='alternate' type='text/html' href='http://programstudies.blogspot.com/2009/12/starting-java-programming.html' title='Starting the Java Programming'/><author><name>It's Gonna Be Me</name><uri>http://www.blogger.com/profile/07321805699767978812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_xNYh2eksnGE/SyLndMO1nKI/AAAAAAAAABI/dQjInrAsPnA/s72-c/Untitled.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6390047005201701735.post-4321816390005605223</id><published>2009-12-11T20:49:00.000+07:00</published><updated>2009-12-11T20:54:50.379+07:00</updated><title type='text'>Programming with Java</title><content type='html'>Java as one of the promising new programming language a lot easier for junior and senior programmers. This tutorial will take you see more of this language through discussion of the concept of design models and simple instructions to use it. &lt;br /&gt;&lt;br /&gt;What Is Java? &lt;br /&gt;&lt;br /&gt;Java is object-oriented programming language developed by Sun Microsystems since 1991. This language was developed with a similar model in C + + and Smalltalk, but designed for easier use and platform independent, which can run on different types of operating systems and computer architecture. The language is also designed for programming on the Internet that is designed to be secure and portable. &lt;br /&gt;&lt;br /&gt;Platform Independent &lt;br /&gt;&lt;br /&gt;Platform independent means that programs written in Java can easily be moved between different types of operating systems and various types of computer architectures. This aspect is very important to achieve the purpose programming language Java as the Internet in which a program will be run by different types of computers with different types of operating systems. This property applies to the level of source code and binary code from Java programs. In contrast to the language C and C + +, all types of data in the Java language has a consistent size in all types of platforms. Java program source code itself does not need to be changed at all if you want to compile on other platforms again. The results of the compile Java source code is not machine code or processor instructions that are specific to a particular machine, but rather a form of bytecodes berekstensi file. Class. Bytecode you can direct the execution of each platform using the Java Virtual Machine (JVM) as an interpreter for the bytecode. &lt;br /&gt;&lt;br /&gt;JVM itself is an application that runs on an operating system and interprets Java bytecode and execute programs, so the concept can be regarded as an interpreter. Java program execution process can be depicted as in Figure 1. In this way, a Java program that has been compiled to be run on any platform, provided there is JVM. &lt;br /&gt;&lt;br /&gt;Compilers and interpreters for the form of Java programs Java Development Kit (JDK), produced by Sun Microsystems. JDK can be downloaded for free from the java.sun.com site. Interpreter for the Java program itself is often also called the Java Runtime or Java Virtual Machine. Java interpreter, without the compiler, called the Java Runtime Environment (JRE) can be downloaded also at the same site. To develop the required JDK Java programs, whereas if you only want to run Java bytecode with the JRE enough alone. But to execute the applet (a Java bytecode as well) you usually do not need to download the JRE for the browser-enabled Java has a JVM itself. &lt;br /&gt;&lt;br /&gt;Library &lt;br /&gt;&lt;br /&gt;In addition to compilers and interpreters, the Java language itself has a large library that can facilitate you in making an application quickly. This library is included for graphics, user interface design, cryptography, network, sound, databases, and others. &lt;br /&gt;&lt;br /&gt;OO &lt;br /&gt;&lt;br /&gt;Java is object-oriented programming language. Object-oriented programming clearly is a technique for organizing the program and can be done with almost any programming language. But Java itself has implemented various facilities so that a programmer can optimize object-oriented programming techniques. &lt;br /&gt;&lt;br /&gt;Little additional comparisons with the language C and C + +, Java inherited many object-oriented concepts of C + +, but by eliminating the complexity aspects in C + +, without reducing its strength. It is easier for beginner programmers to learn Java programming, but reduces flexibility experienced in tinkering with a program. Behind the convenience offered by Java, the extent of the Java library facility itself makes a programmer who does not need a short time to master the use of these libraries.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6390047005201701735-4321816390005605223?l=programstudies.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programstudies.blogspot.com/feeds/4321816390005605223/comments/default' title='Poskan Komentar'/><link rel='replies' type='text/html' href='http://programstudies.blogspot.com/2009/12/programming-with-java.html#comment-form' title='0 Komentar'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/4321816390005605223'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/4321816390005605223'/><link rel='alternate' type='text/html' href='http://programstudies.blogspot.com/2009/12/programming-with-java.html' title='Programming with Java'/><author><name>It's Gonna Be Me</name><uri>http://www.blogger.com/profile/07321805699767978812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6390047005201701735.post-8550693342754380734</id><published>2009-12-07T00:15:00.001+07:00</published><updated>2009-12-07T00:23:50.205+07:00</updated><title type='text'>Making steps Homepage</title><content type='html'>The various steps used our web professional to make a homepage. The following is a general process carried out mostly in web professional to create a web.&lt;br /&gt;&lt;br /&gt;Make a sketch design: The designer could have put the idea to create a homepage interface in the form of sketches on paper first. For most people, this step is usually passed directly to the steps and layout design using the software.&lt;br /&gt;&lt;br /&gt;Creating Layout Design: After the sketch is done, we use software like Adobe Photoshop, Adobe Illustrator, Macromedia Fireworks and Macromedia Freehand sketches to refine the design.&lt;br /&gt;&lt;br /&gt;&lt;!-- Begin: AdBrite, Generated: 2009-10-28 10:25:46  --&gt;&lt;br /&gt;&lt;script type="text/javascript"&gt;var AdBrite_Title_Color = '0000FF';var AdBrite_Text_Color = '000000';var AdBrite_Background_Color = 'FFFFFF';var AdBrite_Border_Color = 'CCCCCC';var AdBrite_URL_Color = '008000';try{var AdBrite_Iframe=window.top!=window.self?2:1;var AdBrite_Referrer=document.referrer==''?document.location:document.referrer;AdBrite_Referrer=encodeURIComponent(AdBrite_Referrer);}catch(e){var AdBrite_Iframe='';var AdBrite_Referrer='';}&lt;/script&gt;&lt;br /&gt;&lt;script type="text/javascript"&gt;document.write(String.fromCharCode(60,83,67,82,73,80,84));document.write(' src="http://ads.adbrite.com/mb/text_group.php?sid=1395057&amp;zs=3330305f323530&amp;ifr='+AdBrite_Iframe+'&amp;ref='+AdBrite_Referrer+'" type="text/javascript"&gt;');document.write(String.fromCharCode(60,47,83,67,82,73,80,84,62));&lt;/script&gt;&lt;br /&gt;&lt;div&gt;&lt;a target="_top" href="http://www.adbrite.com/mb/commerce/purchase_form.php?opid=1395057&amp;afsid=1" style="font-weight:bold;font-family:Arial;font-size:13px;"&gt;Your Ad Here&lt;/a&gt;&lt;/div&gt;&lt;!-- End: AdBrite --&gt;&lt;br /&gt;&lt;br /&gt;&lt;!-- Kontera ContentLink(TM);--&gt;&lt;br /&gt;&lt;script type='text/javascript'&gt;var dc_AdLinkColor = 'blue' ;var dc_PublisherID = 119304 ;&lt;/script&gt;&lt;br /&gt;&lt;script type='text/javascript' src='http://kona.kontera.com/javascript/lib/KonaLibInline.js'&gt;&lt;/script&gt;&lt;br /&gt;&lt;!-- Kontera ContentLink(TM) --&gt;&lt;br /&gt;&lt;br /&gt;Divide the image into small pieces: After the layout design has become the homepage. Gambarb file is broken up into small pieces to download mengoptimize time. To do so can use Adobe Image Ready software. This software can direct a large crop this image and also make it automatic in html format. This step could be missed if we do not image size too big.&lt;br /&gt;&lt;br /&gt;Creating Animation: Animation is needed to turn on our homepage in order to attract visitors. Macromedia Flash and Gif Construction Set can be used to do that.&lt;br /&gt;&lt;br /&gt;Creating HTML: After that we adjusted our design layouts such as putting a few buttons and images, add text, edit the HTML script, create the form layout in HTML format. For that we need HTML editor software such as Macromedia Dreamweaver, Microsoft FrontPage and Allaire Homesite.&lt;br /&gt;Programming and Scripts: For e-commerce websites, classifieds, auctions, databases, create guestbooks, counters, and discussion forums. HTML file we need programming to do such activities. Programming and scripts can be made using ASP, Borland Delphy, CGI, PHP, Visual Basic. And keep in mind that the programming and scripting is usually done after the design has become our homepage.&lt;br /&gt;&lt;br /&gt;Upload HTML: Once the files we have to be html and images and scriptnya. We need to upload our files to a place (hosting), so that everyone in the world can access our html page. Usually Macromedia Dreamweaver FTP site facilities and Microsoft Frontpage with Publishnya been providing this upload facility. Or can use software such as WS-FTP, Cute FTP, Bullet FTP.&lt;br /&gt;Personal Homepage: For personal homepage or who just want to try is usually after the html file has to be able to host the free places, wearing a guestbook and counter for free and add a variety of accesories in beautifying the personal homepage.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6390047005201701735-8550693342754380734?l=programstudies.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programstudies.blogspot.com/feeds/8550693342754380734/comments/default' title='Poskan Komentar'/><link rel='replies' type='text/html' href='http://programstudies.blogspot.com/2009/12/making-steps-homepage.html#comment-form' title='0 Komentar'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/8550693342754380734'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/8550693342754380734'/><link rel='alternate' type='text/html' href='http://programstudies.blogspot.com/2009/12/making-steps-homepage.html' title='Making steps Homepage'/><author><name>It's Gonna Be Me</name><uri>http://www.blogger.com/profile/07321805699767978812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6390047005201701735.post-6660282865581671813</id><published>2009-12-07T00:14:00.001+07:00</published><updated>2009-12-07T00:23:50.206+07:00</updated><title type='text'>Software maker a website</title><content type='html'>Design: To create a homepage design of the web designers usually start with this software as a temporary display or in the homepage layout.&lt;br /&gt;&lt;br /&gt;&lt;!-- You will NOT be able to see the ad on your site! This unit is hidden on your page, and will only display to your search engine traffic (from US and CA). To preview, paste the code up on your site, then add #chitikatest=mortgage to the end of your URL in your browser's address bar.  Example:  www.yourwebsite.com#chitikatest=mortgage. This will show you what the ad would look like to a user who is interested in "mortgages." --&gt;&lt;br /&gt;&lt;script type="text/javascript"&gt;&lt;!--ch_client = "gelangtangan";ch_type = "mpu";ch_width = 468;ch_height = 180;ch_non_contextual = 4;ch_vertical ="premium";ch_backfill =1;ch_sid = "Chitika Premium";var ch_queries = new Array( );var ch_selected=Math.floor((Math.random()*ch_queries.length));if ( ch_selected &lt; ch_queries.length ) {ch_query = ch_queries[ch_selected];}//--&gt;&lt;/script&gt;&lt;br /&gt;&lt;script  src="http://scripts.chitika.net/eminimalls/amm.js" type="text/javascript"&gt;&lt;/script&gt;&lt;br /&gt;&lt;br /&gt;Adobe Photoshop: Design a point-based (bitmap)&lt;br /&gt;Adobe Image Ready: Cut the pictures into html format&lt;br /&gt;Adobe Illustrator: vector-based design&lt;br /&gt;CorelDraw: vector-based design&lt;br /&gt;Macromedia Freehand: vector-based design&lt;br /&gt;Effect Design: This was done to bring our designs that have been designed. Add effects such as light, textur and text manipulation.&lt;br /&gt;Macromedia Firework: Text Effects&lt;br /&gt;Painter: Provides the effect of painting&lt;br /&gt;Ulead Photo Impact: Effect merancangan frame and a beautiful icon.&lt;br /&gt;Photoshop Plugins: Like Andromeda, Alien Skin, Eye Candy, Kai's Power Tool and Xenofex also very supportive for the design effect when you design the layout of the homepage in Photoshop.&lt;br /&gt;Animation: Adding animation necessary to create a homepage to make it look interesting and alive.&lt;br /&gt;3D Studio Max: To create 3D objects and animation.&lt;br /&gt;Gif Construction Set: Make animated gif files&lt;br /&gt;Macromedia Flash: Displaying animated vector-based small.&lt;br /&gt;Microsoft Gif Animator: Create Animated gif files&lt;br /&gt;Swift 3D: Designing 3D animation with FLASH file format.&lt;br /&gt;Swish: Creating various text effects with Flash file format.&lt;br /&gt;Ulead Cool 3D: Creating animated 3D text effects.&lt;br /&gt;Web Editor: Putting the entire picture and design layout, animation, web pages filled with text and some scripting language.&lt;br /&gt;Alaire Homesite&lt;br /&gt;Cold Fusion&lt;br /&gt;Microsoft Frontpage&lt;br /&gt;Macromedia Dreamweaver&lt;br /&gt;Net Objects Fusion&lt;br /&gt;Programming: This is done after most of the homepage design has been completed. Programming served as database access, fill-in forms and make the web more interactive. Example: Creating a guestbook, form filling, Forum, Chat, Portal, Auction and Classified ads.&lt;br /&gt;ASP (Active Server Page)&lt;br /&gt;Borland Delphy&lt;br /&gt;CGI (Common Gateway Interface)&lt;br /&gt;PHP&lt;br /&gt;Perl&lt;br /&gt;Upload: html files we need in place (upload) at a place (hosting) for people around the world can see our homepage.&lt;br /&gt;Bullet FTP&lt;br /&gt;Cute FTP&lt;br /&gt;WS-FTP&lt;br /&gt;Macromedia Dreamweaver: FTP Site facilities&lt;br /&gt;Microsoft Frontpage: Publish facilities&lt;br /&gt;Sound Editor: Homepage we have not live without music. To edit a midi or wav files, need a special tool for that.&lt;br /&gt;Sound Forge: Edit and add effects to files mp3 and wav format.&lt;br /&gt;Cakewalk: Edit and add effects to midi file format&lt;br /&gt;Lots of software is to create a homepage and we do not need to learn all the software mentioned above. But to make it easier, for beginners better start first with studying the software Microsoft Frontpage or Macromedia Dreamweaver to be more familiar with the rules to make the homepage and get to know html language. After the new Adobe Photoshop that is used most of the designers.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6390047005201701735-6660282865581671813?l=programstudies.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programstudies.blogspot.com/feeds/6660282865581671813/comments/default' title='Poskan Komentar'/><link rel='replies' type='text/html' href='http://programstudies.blogspot.com/2009/12/software-maker-website.html#comment-form' title='0 Komentar'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/6660282865581671813'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/6660282865581671813'/><link rel='alternate' type='text/html' href='http://programstudies.blogspot.com/2009/12/software-maker-website.html' title='Software maker a website'/><author><name>It's Gonna Be Me</name><uri>http://www.blogger.com/profile/07321805699767978812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6390047005201701735.post-8904168165911785400</id><published>2009-12-07T00:13:00.000+07:00</published><updated>2009-12-07T00:23:50.208+07:00</updated><title type='text'>Web design</title><content type='html'>Often we find a typical website: "Welcome to my homepage," an animated e-mail, background in italics (diagonal), animated lines, tables with border-dimesi and three others. This happens because of the facilities provided by the template that the web-making software such as: FrontpageT, Corel WebDesignerT, etc. intended to facilitate users in building websites. &lt;br /&gt;If you are satisfied with the results of your work with the facility to build website templates, please leave it here. But if you are not satisfied with what you make, and you feel like better, then you need to know how the Web designer to build a website, regardless you have artistic talent or not. &lt;br /&gt;Unique: In the making of any work of a designer has the sense not to imitate or use other people's work. Similarly, a Web designer should have a culture of shame for using icons, animations, buttons, etc., which have been used or created by others. &lt;br /&gt;Composition: A Web Designer always noticed that the color composition to be used in the website made. Use WebColor always Palette 216, which can be obtained from Adobe.com, this is to prevent the occurrence of Dither in a GIF image. In building a company website, Web Designer always customize colors used by the company's Corporate Color. For example: Telkom its Corporate Color is blue, Coca-Cola: red and white, Standard-Chartered: green and blue, and so on. For then the colors had been used as a dominant color or as a supporting element (line, background, buttons, etc.). &lt;br /&gt;Simple: Web Designer many use the principle of "Keep it Simple", it is intended to display the website look neat, clean and informative. &lt;br /&gt;Semiotics: Semiotics is the study of signs. In this case expected to see signs or images, the user / audience can easily and quickly understood. For example: Do not make pictures / images that memorable buttons, yet it is not a button / link. &lt;br /&gt;Ergonomic: Web Designer is always the aspect of ergonomics. Ergonomics here is in terms of user convenience and speed in reading the user to browse the website. Web Designer Fonts choosing the right size so easy to read, Web Designer put a link in such a way that is easy and fast access to the more important and is Informative. &lt;br /&gt;Focus: Determine the hierarchy of priorities of the messages to be delivered, for example: The title should be big, but not until the end will conflict with the subtitle of roughly the same size. This will confuse the user / audience to determine which messages must first be read / viewed. &lt;br /&gt;Consistent: Decide what font will be used as a Body-text, title, sub title and so forth, so that the website will look disciplined and tidy. Adjust the font used by the mission and vision of the website, for example: avoid using the font Comic in building a company's official website. &lt;br /&gt;Thus some aspects and principles used in a Web Designer to create a website, the rest is the expression of the maker's own website is embodied in preparation penggayaan website.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6390047005201701735-8904168165911785400?l=programstudies.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programstudies.blogspot.com/feeds/8904168165911785400/comments/default' title='Poskan Komentar'/><link rel='replies' type='text/html' href='http://programstudies.blogspot.com/2009/12/web-design.html#comment-form' title='0 Komentar'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/8904168165911785400'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/8904168165911785400'/><link rel='alternate' type='text/html' href='http://programstudies.blogspot.com/2009/12/web-design.html' title='Web design'/><author><name>It's Gonna Be Me</name><uri>http://www.blogger.com/profile/07321805699767978812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6390047005201701735.post-1461340927163082445</id><published>2009-11-24T16:11:00.001+07:00</published><updated>2009-11-25T09:09:22.769+07:00</updated><title type='text'>Encryption Method For Web Programming</title><content type='html'>Encryption is the process of securing an information by making such information can not be read without the help of specialized knowledge.&lt;br /&gt;The advantage of encryption is the original code we can not be read by others.&lt;br /&gt;Here are some kinds of encryption methods can be used on websites such as PHP programming, ASP and others.&lt;br /&gt;&lt;br /&gt;1. MD2 Encryption Method&lt;br /&gt;Algortihm Message-Digest 2 (MD2) is a cryptographic hash function developed by Ronald Rivest in 1989.&lt;br /&gt;The algorithm is optimized for 8-bit computers. MD2 is defined in RFC 1319.&lt;br /&gt;Although other algorithms have been proposed since the first, such as MD4, MD5 and SHA, even up to 2004 [update] MD2 still used in public key infrastructures as part of the certificate generated with MD2 and the RSA.&lt;br /&gt;&lt;!-- Begin: AdBrite, Generated: 2009-10-28 10:25:46  --&gt;&lt;br /&gt;&lt;script type="text/javascript"&gt;var AdBrite_Title_Color = '0000FF';var AdBrite_Text_Color = '000000';var AdBrite_Background_Color = 'FFFFFF';var AdBrite_Border_Color = 'CCCCCC';var AdBrite_URL_Color = '008000';try{var AdBrite_Iframe=window.top!=window.self?2:1;var AdBrite_Referrer=document.referrer==''?document.location:document.referrer;AdBrite_Referrer=encodeURIComponent(AdBrite_Referrer);}catch(e){var AdBrite_Iframe='';var AdBrite_Referrer='';}&lt;/script&gt;&lt;br /&gt;&lt;script type="text/javascript"&gt;document.write(String.fromCharCode(60,83,67,82,73,80,84));document.write(' src="http://ads.adbrite.com/mb/text_group.php?sid=1395057&amp;zs=3330305f323530&amp;ifr='+AdBrite_Iframe+'&amp;ref='+AdBrite_Referrer+'" type="text/javascript"&gt;');document.write(String.fromCharCode(60,47,83,67,82,73,80,84,62));&lt;/script&gt;&lt;br /&gt;&lt;div&gt;&lt;a target="_top" href="http://www.adbrite.com/mb/commerce/purchase_form.php?opid=1395057&amp;afsid=1" style="font-weight:bold;font-family:Arial;font-size:13px;"&gt;Your Ad Here&lt;/a&gt;&lt;/div&gt;&lt;!-- End: AdBrite --&gt;&lt;br /&gt;&lt;br /&gt;&lt;!-- Kontera ContentLink(TM);--&gt;&lt;br /&gt;&lt;script type='text/javascript'&gt;var dc_AdLinkColor = 'blue' ;var dc_PublisherID = 119304 ;&lt;/script&gt;&lt;br /&gt;&lt;script type='text/javascript' src='http://kona.kontera.com/javascript/lib/KonaLibInline.js'&gt;&lt;/script&gt;&lt;br /&gt;&lt;!-- Kontera ContentLink(TM) --&gt;&lt;br /&gt;&lt;br /&gt;&lt;!-- You will NOT be able to see the ad on your site! This unit is hidden on your page, and will only display to your search engine traffic (from US and CA). To preview, paste the code up on your site, then add #chitikatest=mortgage to the end of your URL in your browser's address bar.  Example:  www.yourwebsite.com#chitikatest=mortgage. This will show you what the ad would look like to a user who is interested in "mortgages." --&gt;&lt;br /&gt;&lt;script type="text/javascript"&gt;&lt;!--ch_client = "gelangtangan";ch_type = "mpu";ch_width = 468;ch_height = 180;ch_non_contextual = 4;ch_vertical ="premium";ch_backfill =1;ch_sid = "Chitika Premium";var ch_queries = new Array( );var ch_selected=Math.floor((Math.random()*ch_queries.length));if ( ch_selected &lt; ch_queries.length ) {ch_query = ch_queries[ch_selected];}//--&gt;&lt;/script&gt;&lt;br /&gt;&lt;script  src="http://scripts.chitika.net/eminimalls/amm.js" type="text/javascript"&gt;&lt;/script&gt;&lt;br /&gt;&lt;br /&gt;2. MD4 encryption method&lt;br /&gt;Message-Digest algortihm 4 (4th series) designed by Professor Ronald Rivest of MIT in 1990.&lt;br /&gt;Its length is 128 bits.&lt;br /&gt;MD4 was also used to calculate summary NT-hash password in Microsoft Windows NT, XP and Vista.&lt;br /&gt;&lt;br /&gt;3. MD5 Encryption Method&lt;br /&gt;MD5 is one of a series of message digest algorithms designed by Professor Ronald Rivest of MIT (Rivest, 1994).&lt;br /&gt;As the analytic work shows that MD5's predecessor is not safe from MD4, MD5 and designed in 1991 as a replacement for MD4 (MD4 weaknesses discovered by Hans Dobbertin).&lt;br /&gt;In cryptography, MD5 (Message-Digest algortihm 5) is a cryptographic hash function widely used to hash 128-bit value.&lt;br /&gt;On the Internet standard (RFC 1321), MD5 has been used in a variety of security applications, and MD5 is also commonly used for testing the integrity of a file.&lt;br /&gt;&lt;br /&gt;4. SHA Encryption Method&lt;br /&gt;SHA is a set of cryptographic hash functions designed by the National Security Agency (NSA) and published by NIST as a U.S. Federal Information Processing Standard.&lt;br /&gt;SHA is the Secure Hash Algorithm. The types of SHA SHA-0, SHA-1, and SHA-2.&lt;br /&gt;For SHA-2 algorithm is identical to the summary measure of well-known variables as SHA-224, SHA-256, SHA-384, and SHA-512.&lt;br /&gt;&lt;br /&gt;5. RC4 Encryption Method&lt;br /&gt;RC4 is one type of stream ciphers, ie processing units or input data at a time. Unit or data in general, a byte or sometimes even a bit (byte in RC4).&lt;br /&gt;In this way the encryption or decryption can be performed on a variable length.&lt;br /&gt;RC4 is a stream cipher encryption made by Ron Riverst in 1987 for RSA Security.&lt;br /&gt;Algorithm based on random permutations.&lt;br /&gt;&lt;br /&gt;6. Base64 Encryption Method&lt;br /&gt;Base64 is a system to represent the raw data bytes as ASCII characters.&lt;br /&gt;Base64 provides 6-bit encoding 8-bit ASCII characters.&lt;br /&gt;Base64 is a format that is printed using characters, allowing binary data to be sent in the form and email, and will be stored in databases or files.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6390047005201701735-1461340927163082445?l=programstudies.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programstudies.blogspot.com/feeds/1461340927163082445/comments/default' title='Poskan Komentar'/><link rel='replies' type='text/html' href='http://programstudies.blogspot.com/2009/11/encryption-method-for-web-programming.html#comment-form' title='0 Komentar'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/1461340927163082445'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/1461340927163082445'/><link rel='alternate' type='text/html' href='http://programstudies.blogspot.com/2009/11/encryption-method-for-web-programming.html' title='Encryption Method For Web Programming'/><author><name>It's Gonna Be Me</name><uri>http://www.blogger.com/profile/07321805699767978812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6390047005201701735.post-5045689525710380054</id><published>2009-11-24T16:06:00.000+07:00</published><updated>2009-11-25T09:09:22.771+07:00</updated><title type='text'>Web Programing</title><content type='html'>If you love it in making a web, then you will not be separated from what is called a programming language. Programming language is a technique of command / instruction standards to govern the computer. &lt;br /&gt;Here is an explanation of what programming language used to create a website: &lt;br /&gt;&lt;br /&gt;1. HTML Programming Language &lt;br /&gt;HyperText Markup Language (HTML) is a markup language used to create a web page and display a variety of information in an Internet browser. &lt;br /&gt;HTML is currently the Internet standard defined and controlled use by the World Wide Web Consortium (W3C). &lt;br /&gt;HTML form tag code that instructs the browser to produce the display in accordance with the desired. &lt;br /&gt;A file is an HTML file can be opened by using a web browser such as Mozilla Firefox or Microsoft Internet Explorer. &lt;br /&gt;&lt;!-- Begin BidVertiser code --&gt;&lt;br /&gt;&lt;script language="JavaScript1.1" src="http://bdv.bidvertiser.com/BidVertiser.dbm?pid=272446&amp;bid=664500" type="text/javascript"&gt;&lt;/script&gt;&lt;br /&gt;&lt;noscript&gt;&lt;a href="http://www.bidvertiser.com"&gt;internet marketing&lt;/a&gt;&lt;/noscript&gt;&lt;br /&gt;&lt;!-- End BidVertiser code --&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;2. PHP Programming Language &lt;br /&gt;PHP is a scripting programming language most widely used today. &lt;br /&gt;PHP was first created by Rasmus Lerdorf in 1995. At that time, PHP was named FI (Form Interpreted), the realization of a set of scripts that are used to process data from the web form. &lt;br /&gt;PHP is widely used to create dynamic web sites, although not closed the possibility for another use. &lt;br /&gt;PHP is usually run on linux operating system (PHP can also run with hosting windows). &lt;br /&gt;&lt;br /&gt;3. Programming Languages ASP &lt;br /&gt;ASP stands for Active Server Pages, which is one of the web programming language for creating dynamic web pages. &lt;br /&gt;ASP is one of technology products provided by Microsoft. &lt;br /&gt;ASP working on a web server and a server side scripting. &lt;br /&gt;&lt;br /&gt;4. XML Programming Language &lt;br /&gt;Extensible Markup Language (XML) is a versatile markup language recommended by W3C to describe various kinds of data. &lt;br /&gt;XML uses markup tags as HTML, but its use is not limited to just display the web page. &lt;br /&gt;XML is a method of making bookmarks / markup in a document. &lt;br /&gt;&lt;br /&gt;5. WML Programming Language &lt;br /&gt;WML stands for Wireless Markup Language, the programming language used in applications based on XML (Extensible Markup Langauge). &lt;br /&gt;WML is a programming language used in wireless applications. &lt;br /&gt;WML is analogous to the HTML that runs on the wireless protocol. &lt;br /&gt;&lt;br /&gt;6. PERL Programming Language &lt;br /&gt;Perl is a programming language for the machine with the Unix operating system (SunOS, Linux, BSD, HP-UX), also available for operating systems such as DOS, Windows, PowerPC, BeOS, VMS, EBCDIC, and PocketPC. &lt;br /&gt;PERL is a programming language programming language like C. &lt;br /&gt;&lt;br /&gt;7. CFM Programming Languages &lt;br /&gt;Cfm ColdFusion tags created using the software Adobe ColdFusion / BlueDragon / Coldfusion Studio. &lt;br /&gt;Syntax based coldfusion html. &lt;br /&gt;&lt;br /&gt;8. Javascript Programming Language &lt;br /&gt;Javascript is a powerful scripting language that runs on the client side. &lt;br /&gt;JavaScript is a scripting language developed by Netscape. &lt;br /&gt;To run scripts written in JavaScript that we need a JavaScript-enabled browser is a browser that can run JavaScript. &lt;br /&gt;&lt;br /&gt;9. CSS Programming Languages &lt;br /&gt;Cascading Style Sheets (CSS) is a stylesheet language used to set the display of a document written in markup language. &lt;br /&gt;The most common usage of CSS is for formatting web pages written in HTML and XHTML. &lt;br /&gt;Nevertheless, his own language can be used for all types of XML documents, including SVG and XUL. &lt;br /&gt;CSS specifications set by the World Wide Web Consortium (W3C).&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6390047005201701735-5045689525710380054?l=programstudies.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programstudies.blogspot.com/feeds/5045689525710380054/comments/default' title='Poskan Komentar'/><link rel='replies' type='text/html' href='http://programstudies.blogspot.com/2009/11/web-programing.html#comment-form' title='0 Komentar'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/5045689525710380054'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/5045689525710380054'/><link rel='alternate' type='text/html' href='http://programstudies.blogspot.com/2009/11/web-programing.html' title='Web Programing'/><author><name>It's Gonna Be Me</name><uri>http://www.blogger.com/profile/07321805699767978812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6390047005201701735.post-1891313500296198411</id><published>2009-11-20T09:18:00.000+07:00</published><updated>2009-11-20T09:18:10.368+07:00</updated><title type='text'>VB Basics 1: What is VB (Visual Basic) ?</title><content type='html'>Like PHP, Visual Basic is a programming language that is easy to learn and this tutorial will lead you to enter the world of VB to enjoy.&lt;br /&gt;&lt;br /&gt;With Visual Basic, you can ngembangin applications and games based on Windows. Visual Basic is much easier to learn than other programming languages (like Visual C) but remains a programming language is very powerful.&lt;br /&gt;&lt;br /&gt;Interested? Read this tutorial aja further.&lt;br /&gt;&lt;br /&gt;Visual Basic is more suitable for development than the development of gaming applications. You can aja make an amazing game using Visual Basic, but if you want to make games more sophisticated professionals such as Quake 2, then you probably would prefer to use other languages (like C), which must be much more difficult to use.&lt;br /&gt;&lt;br /&gt;However, Visual Basic is already very adequate to meet the needs of almost all dangame application programming you want.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Advantages of Visual Basic:&lt;br /&gt;&lt;br /&gt;- Language is simple. Many things may be difficult jikak we use other programming languages, will be done easily by using Visual Basic.&lt;br /&gt;&lt;br /&gt;- Because Visual Basic is very popular, so very many resources you can use to learn and develop the skills you're either in the form of books, web sites, etc. (of course one of them is http://prothelon.com J). With many of these sources, then of course you will be very easy to find answers to problems that you face right?&lt;br /&gt;&lt;br /&gt;- You can get a lot of good free tools on the Internet or not that will really help you save time in programming. For example, if you want to create a program to ping one computer on your network, instead of making it his own ping program, you can donlot a control that do this and stick it in your program. When compared with other languages, Visual Basic has a variation of the most widespread tools lho.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Disadvantages of Visual Basic:&lt;br /&gt;&lt;br /&gt;- Visual Basic is a powerful programming language, but it is not too good to make games that really satisfy.&lt;br /&gt;&lt;br /&gt;- More slower than other programming languages.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6390047005201701735-1891313500296198411?l=programstudies.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programstudies.blogspot.com/feeds/1891313500296198411/comments/default' title='Poskan Komentar'/><link rel='replies' type='text/html' href='http://programstudies.blogspot.com/2009/11/vb-basics-1-what-is-vb-visual-basic.html#comment-form' title='0 Komentar'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/1891313500296198411'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/1891313500296198411'/><link rel='alternate' type='text/html' href='http://programstudies.blogspot.com/2009/11/vb-basics-1-what-is-vb-visual-basic.html' title='VB Basics 1: What is VB (Visual Basic) ?'/><author><name>It's Gonna Be Me</name><uri>http://www.blogger.com/profile/07321805699767978812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6390047005201701735.post-7950058363520228230</id><published>2009-11-20T09:12:00.001+07:00</published><updated>2009-11-20T09:13:05.144+07:00</updated><title type='text'>Examples of C + +  programs</title><content type='html'>1. The program displays the personal biodata&lt;br /&gt;&lt;br /&gt;# include&lt;br /&gt;# include&lt;br /&gt;&lt;br /&gt;Biodata class (&lt;br /&gt;public:&lt;br /&gt;void print ();&lt;br /&gt;);&lt;br /&gt;&lt;br /&gt;2nd. The program displays the format month-date-time&lt;br /&gt;&lt;br /&gt;# include&lt;br /&gt;# include&lt;br /&gt;&lt;br /&gt;class format_tgl (&lt;br /&gt;friend ostream &amp; operator &lt;&lt;(ostream &amp;, const format_tgl &amp;);friend istream &amp; operator&gt;&gt; (istream &amp;, format_tgl &amp;);&lt;br /&gt;private:&lt;br /&gt;int date;&lt;br /&gt;int month;&lt;br /&gt;int year;&lt;br /&gt;&lt;br /&gt;3. Program to print characters forming star letter I&lt;br /&gt;&lt;br /&gt;# include&lt;br /&gt;class letter (&lt;br /&gt;public: out put&lt;br /&gt;(){;} letter&lt;br /&gt;void print ();&lt;br /&gt;private:&lt;br /&gt;int i;&lt;br /&gt;&lt;br /&gt;4. The program calculates area, circumference and volume of the ball&lt;br /&gt;&lt;br /&gt;# include&lt;br /&gt;# include&lt;br /&gt;&lt;br /&gt;class Ball (&lt;br /&gt;friend istream &amp; operator&gt;&gt; (istream &amp;, Ball &amp;);&lt;br /&gt;friend ostream &amp; operator &lt;&lt;(ostream &amp;, Ball &amp;);&lt;br /&gt;public:&lt;br /&gt;void area () (result = (2 * 22 * r) / 7;)&lt;br /&gt;void around () (hasil2 = (4 * 22 * r * r) / 7;)&lt;br /&gt;void volume () (hasil3 = (4 * 22 * r * r * r) / 21;)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6390047005201701735-7950058363520228230?l=programstudies.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programstudies.blogspot.com/feeds/7950058363520228230/comments/default' title='Poskan Komentar'/><link rel='replies' type='text/html' href='http://programstudies.blogspot.com/2009/11/examples-of-c-programs.html#comment-form' title='0 Komentar'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/7950058363520228230'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/7950058363520228230'/><link rel='alternate' type='text/html' href='http://programstudies.blogspot.com/2009/11/examples-of-c-programs.html' title='Examples of C + +  programs'/><author><name>It's Gonna Be Me</name><uri>http://www.blogger.com/profile/07321805699767978812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6390047005201701735.post-4773549221083779145</id><published>2009-11-12T04:06:00.000+07:00</published><updated>2009-11-12T04:06:21.949+07:00</updated><title type='text'>Kesunyian Hati: Renungan hampa</title><content type='html'>&lt;a href="http://firuskhan3.blogspot.com/2009/09/renungan-hampa.html#links"&gt;Kesunyian Hati: Renungan hampa&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6390047005201701735-4773549221083779145?l=programstudies.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://firuskhan3.blogspot.com/2009/09/renungan-hampa.html#links' title='Kesunyian Hati: Renungan hampa'/><link rel='replies' type='application/atom+xml' href='http://programstudies.blogspot.com/feeds/4773549221083779145/comments/default' title='Poskan Komentar'/><link rel='replies' type='text/html' href='http://programstudies.blogspot.com/2009/11/kesunyian-hati-renungan-hampa.html#comment-form' title='0 Komentar'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/4773549221083779145'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/4773549221083779145'/><link rel='alternate' type='text/html' href='http://programstudies.blogspot.com/2009/11/kesunyian-hati-renungan-hampa.html' title='Kesunyian Hati: Renungan hampa'/><author><name>It's Gonna Be Me</name><uri>http://www.blogger.com/profile/07321805699767978812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6390047005201701735.post-8735394629778559072</id><published>2009-11-03T08:08:00.000+07:00</published><updated>2009-11-03T08:08:35.203+07:00</updated><title type='text'>Data Types and Operators</title><content type='html'>Type data indicates a value that is used by sutu Hereinafter the relevant variables.&lt;br /&gt;Data Types in Pascal:&lt;br /&gt;1. Simple data types, consisting of:&lt;br /&gt;a. Standard data types:&lt;br /&gt;- Integer: a data type of integers&lt;br /&gt;- Real: the kind of fractions&lt;br /&gt;- Char: a superscript characters between single quotes. Ex: 'A', 'a', '5 ', etc.&lt;br /&gt;- String: a sequence of characters between single quotes.&lt;br /&gt;- Boolean: is a logical data type, which contains two possible values: TRUE or FALSE.&lt;br /&gt;b. User defined data types&lt;br /&gt;2. Structured data types, consisting of:&lt;br /&gt;a. Array&lt;br /&gt;b. Record&lt;br /&gt;c. File&lt;br /&gt;d. Set&lt;br /&gt;3. Data Type PointerOperator&lt;br /&gt;Sign operation (operator) in the Pascal language are regrouped in:&lt;br /&gt;1. Assignment operator (operator processing) using the colon symbol followed by an equal sign (:=). Example -&gt; A: = B;&lt;br /&gt;&lt;br /&gt;2. Binary operators used to operate two Operands of the form constants or variables. This operator is used for operations associated with arithmatika value of data type Integer and Real. The operation performed is: Added (+), Reduction (-), multiplication (*), Division of Bulat (DIV), Division of Real (/) and modulus or Time Division (MOD)&lt;br /&gt;&lt;br /&gt;3. Unary operators, this operator uses a course Operands can be either unary minus and unary plus. Example: +2.5, a + (+ b) etc.&lt;br /&gt;&lt;br /&gt;4. Bitwise operators are used for bits-per-bit operations on integer values.&lt;br /&gt;Operators who used (NOT, AND, OR, XOR, SHL, shr&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6390047005201701735-8735394629778559072?l=programstudies.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programstudies.blogspot.com/feeds/8735394629778559072/comments/default' title='Poskan Komentar'/><link rel='replies' type='text/html' href='http://programstudies.blogspot.com/2009/11/data-types-and-operators.html#comment-form' title='0 Komentar'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/8735394629778559072'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/8735394629778559072'/><link rel='alternate' type='text/html' href='http://programstudies.blogspot.com/2009/11/data-types-and-operators.html' title='Data Types and Operators'/><author><name>It's Gonna Be Me</name><uri>http://www.blogger.com/profile/07321805699767978812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6390047005201701735.post-2654408450043197750</id><published>2009-10-30T14:28:00.000+07:00</published><updated>2009-10-30T14:29:17.097+07:00</updated><title type='text'>Pascal Program Structure</title><content type='html'>Structure of a Pascal program consists of a title of program (program heading) and a block of programs (program block) or agency program (body program). Block program is divided into two parts, namely the declaration (declaration part) and the statement (statement part). The declaration section can contain the declaration of labels (labels declaration), the declaration of constants (constants declaration), the declaration of the type (type declaration), the declaration of variables (variables declaration), the declaration procedure (declaration procedures) and the function declarations (function declaration). In summary, the structure of a Pascal program can consist of: &lt;br /&gt;&lt;br /&gt;1. Program Title &lt;br /&gt;2. Block Program &lt;br /&gt;a. Declaration Section &lt;br /&gt;Declaration label &lt;br /&gt;Constant declaration &lt;br /&gt;Declaration type &lt;br /&gt;Variable Declaration &lt;br /&gt;Declaration procedure &lt;br /&gt;Function declaration &lt;br /&gt;b. Part Statement &lt;br /&gt;&lt;br /&gt;Pascal programs are the most simple &lt;br /&gt;&lt;br /&gt;A Pascal program is the simplest program that only consists of a statement of course. Part of the statement (statement part) is the last part of a block. This section begins with the reserved word BEGIN and end with a reserved word End. Thus a Pascal program can simplest form: &lt;br /&gt;&lt;br /&gt;Begin &lt;br /&gt;End. &lt;br /&gt;&lt;br /&gt;Block statements must be preceded by the words Begin and end with the word End of a point behind (End.). Do not forget ya! While the general format for a program usually is: &lt;br /&gt;&lt;br /&gt;Program ... &lt;br /&gt;Uses ... &lt;br /&gt;&lt;br /&gt;Var &lt;br /&gt;... ... &lt;br /&gt;Begin &lt;br /&gt;... Statements ... &lt;br /&gt;End. &lt;br /&gt;&lt;br /&gt;Said the program should exist, may not (optional). Useless to give only program's name. Then try to type the following statement and then run it (Ctrl F9): &lt;br /&gt;&lt;br /&gt;Begin &lt;br /&gt;writeln ( 'Hello World! "); &lt;br /&gt;End. &lt;br /&gt;&lt;br /&gt;In this case we do not use the uses and var. Above program should result in the word 'Hello' on the screen. If too fast, press the F5 alt. Then press any key to return to the editor Pascal. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Uses &lt;br /&gt;&lt;br /&gt;To what uses it? Uses are similar term that means we use a library (libraries) specific. So now, whether the library is? To more easily, let's just kind of library had a box in which there are the commands we need for our program later on, like clrscr, readkey, keypressed, readln, etc.. &lt;br /&gt;Question again, why the program did not use the above uses? Because the writeln statement is using TP's standard library (system unit), which need not be written again. &lt;br /&gt;&lt;br /&gt;Oh, yes. Incase Pascal language-sensitive nature, which means ignoring the large or small letters. So it's up to write the word begin or Begin with the BEGIN or even begin. No matter koq. And do not forget, in general, at the end of a command always ends with a semicolon (;). &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Use Write and WriteLn &lt;br /&gt;&lt;br /&gt;Syntax write: write ( '&lt;kata&gt;'); &lt;br /&gt;Syntax writeln: writeln ( '&lt;kata&gt;'); &lt;br /&gt;For more details, type the following commands into your Pascal editor and then run it (Ctrl F9). &lt;br /&gt;&lt;br /&gt;Uses crt; &lt;br /&gt;begin &lt;br /&gt;clrscr; &lt;br /&gt;writeln ( 'This first line'); &lt;br /&gt;writeln ( 'This second line'); &lt;br /&gt;write ( 'This third line'); &lt;br /&gt;write ( 'This appears beside'); &lt;br /&gt;writeln; &lt;br /&gt;write ( 'This fourth line'); &lt;br /&gt;end. &lt;br /&gt;&lt;br /&gt;Already know what purpose and what's the difference? To be sure, just write command to write it while the writeln command to write and move the cursor to the next line.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6390047005201701735-2654408450043197750?l=programstudies.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programstudies.blogspot.com/feeds/2654408450043197750/comments/default' title='Poskan Komentar'/><link rel='replies' type='text/html' href='http://programstudies.blogspot.com/2009/10/pascal-program-structure.html#comment-form' title='0 Komentar'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/2654408450043197750'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/2654408450043197750'/><link rel='alternate' type='text/html' href='http://programstudies.blogspot.com/2009/10/pascal-program-structure.html' title='Pascal Program Structure'/><author><name>It's Gonna Be Me</name><uri>http://www.blogger.com/profile/07321805699767978812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6390047005201701735.post-6166860038781967522</id><published>2009-10-30T14:17:00.000+07:00</published><updated>2009-10-30T14:18:13.886+07:00</updated><title type='text'>Basic Programming with Pascal</title><content type='html'>Pascal is a programming language which was first made by Professor Niklaus Wirth, a member of the International Federation of Information Processing (IFIP) in 1971. By taking the name of the French mathematician, Blaise Pascal, who first created the calculator, Professor Niklaus Wirth made the Pascal language as a tool for teaching computer programming concepts to students. In addition, Professor Niklaus Wirth Pascal also made to complement the deficiencies of the existing programming languages at that time. &lt;br /&gt;&lt;br /&gt;&lt;!-- Kontera ContentLink(TM);--&gt;&lt;br /&gt;&lt;script type='text/javascript'&gt;var dc_AdLinkColor = 'blue' ;var dc_PublisherID = 119304 ;&lt;/script&gt;&lt;br /&gt;&lt;script type='text/javascript' src='http://kona.kontera.com/javascript/lib/KonaLibInline.js'&gt;&lt;/script&gt;&lt;br /&gt;&lt;!-- Kontera ContentLink(TM) --&gt;&lt;br /&gt;&lt;br /&gt;Advantages of Pascal programming language is: &lt;br /&gt;Standard data types, data types that have been available standard in most programming languages. Pascal has a standard data types: boolean, integer, real, char, string, &lt;br /&gt;User defined Data Types, programmers can create other data types derived from standard data types. &lt;br /&gt;Strongly-typed, the programmer must specify the data type of a variable, and variables can not be used to store data type other than the specified format. &lt;br /&gt;Structured, has a syntax that allows the writing of programs broken down into smaller functions (procedures and functions) that can be used repeatedly. &lt;br /&gt;Simple and Expressive, has a simple structure and very close to human language (English) so easy to learn and understand.&lt;br /&gt;&lt;br /&gt;PASCAL language is the language used as the standard programming language for the national team's Olympic Komputer Indonesia (TOKI). In addition, language PASCAL is still used in IOI (International Olympiad in Informatics).&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6390047005201701735-6166860038781967522?l=programstudies.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programstudies.blogspot.com/feeds/6166860038781967522/comments/default' title='Poskan Komentar'/><link rel='replies' type='text/html' href='http://programstudies.blogspot.com/2009/10/basic-programming-with-pascal.html#comment-form' title='0 Komentar'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/6166860038781967522'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/6166860038781967522'/><link rel='alternate' type='text/html' href='http://programstudies.blogspot.com/2009/10/basic-programming-with-pascal.html' title='Basic Programming with Pascal'/><author><name>It's Gonna Be Me</name><uri>http://www.blogger.com/profile/07321805699767978812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6390047005201701735.post-8719883358881160672</id><published>2009-10-25T17:40:00.000+07:00</published><updated>2009-10-30T08:57:20.580+07:00</updated><title type='text'>SEQUENCE</title><content type='html'>The algorithm is of runs (sequences) one or more instructions, which means that:&lt;br /&gt;&lt;br /&gt;1. Each instruction is done one by one.&lt;br /&gt;&lt;br /&gt;2. Each instruction executed exactly once, no instruction is repeated.&lt;br /&gt;&lt;br /&gt;&lt;!-- Begin: AdBrite, Generated: 2009-10-28 10:25:46  --&gt;&lt;br /&gt;&lt;script type="text/javascript"&gt;var AdBrite_Title_Color = '0000FF';var AdBrite_Text_Color = '000000';var AdBrite_Background_Color = 'FFFFFF';var AdBrite_Border_Color = 'CCCCCC';var AdBrite_URL_Color = '008000';try{var AdBrite_Iframe=window.top!=window.self?2:1;var AdBrite_Referrer=document.referrer==''?document.location:document.referrer;AdBrite_Referrer=encodeURIComponent(AdBrite_Referrer);}catch(e){var AdBrite_Iframe='';var AdBrite_Referrer='';}&lt;/script&gt;&lt;br /&gt;&lt;script type="text/javascript"&gt;document.write(String.fromCharCode(60,83,67,82,73,80,84));document.write(' src="http://ads.adbrite.com/mb/text_group.php?sid=1395057&amp;zs=3330305f323530&amp;ifr='+AdBrite_Iframe+'&amp;ref='+AdBrite_Referrer+'" type="text/javascript"&gt;');document.write(String.fromCharCode(60,47,83,67,82,73,80,84,62));&lt;/script&gt;&lt;br /&gt;&lt;div&gt;&lt;a target="_top" href="http://www.adbrite.com/mb/commerce/purchase_form.php?opid=1395057&amp;afsid=1" style="font-weight:bold;font-family:Arial;font-size:13px;"&gt;Your Ad Here&lt;/a&gt;&lt;/div&gt;&lt;!-- End: AdBrite --&gt;&lt;br /&gt;&lt;br /&gt;&lt;!-- Kontera ContentLink(TM);--&gt;&lt;br /&gt;&lt;script type='text/javascript'&gt;var dc_AdLinkColor = 'blue' ;var dc_PublisherID = 119304 ;&lt;/script&gt;&lt;br /&gt;&lt;script type='text/javascript' src='http://kona.kontera.com/javascript/lib/KonaLibInline.js'&gt;&lt;/script&gt;&lt;br /&gt;&lt;!-- Kontera ContentLink(TM) --&gt;&lt;br /&gt;&lt;br /&gt;&lt;!-- You will NOT be able to see the ad on your site! This unit is hidden on your page, and will only display to your search engine traffic (from US and CA). To preview, paste the code up on your site, then add #chitikatest=mortgage to the end of your URL in your browser's address bar.  Example:  www.yourwebsite.com#chitikatest=mortgage. This will show you what the ad would look like to a user who is interested in "mortgages." --&gt;&lt;br /&gt;&lt;script type="text/javascript"&gt;&lt;!--ch_client = "gelangtangan";ch_type = "mpu";ch_width = 468;ch_height = 180;ch_non_contextual = 4;ch_vertical ="premium";ch_backfill =1;ch_sid = "Chitika Premium";var ch_queries = new Array( );var ch_selected=Math.floor((Math.random()*ch_queries.length));if ( ch_selected &lt; ch_queries.length ) {ch_query = ch_queries[ch_selected];}//--&gt;&lt;/script&gt;&lt;br /&gt;&lt;script  src="http://scripts.chitika.net/eminimalls/amm.js" type="text/javascript"&gt;&lt;/script&gt;&lt;br /&gt;&lt;br /&gt;3. Ordering instructions are carried out with the order processing instructions written in the algorithm.&lt;br /&gt;&lt;br /&gt;4. End of instruction is the end of the algorithm.&lt;br /&gt;&lt;br /&gt;Ordering instructions in the instruction penting.Urutan algorithm showed very logical sequence of problem-solving.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6390047005201701735-8719883358881160672?l=programstudies.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programstudies.blogspot.com/feeds/8719883358881160672/comments/default' title='Poskan Komentar'/><link rel='replies' type='text/html' href='http://programstudies.blogspot.com/2009/10/sequence.html#comment-form' title='0 Komentar'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/8719883358881160672'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/8719883358881160672'/><link rel='alternate' type='text/html' href='http://programstudies.blogspot.com/2009/10/sequence.html' title='SEQUENCE'/><author><name>It's Gonna Be Me</name><uri>http://www.blogger.com/profile/07321805699767978812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6390047005201701735.post-2172780331467725052</id><published>2009-10-23T08:59:00.000+07:00</published><updated>2009-10-23T09:01:16.095+07:00</updated><title type='text'>Algoritma Advenced</title><content type='html'>Writing Rules Algorithm&lt;br /&gt;&lt;br /&gt;The text contains a description of the algorithm steps masalah.Deskripsi solution can be written notation of any nature, provided easy to read and understand. There is no standard notation in writing the text algorithm. Each person can make rules and algorithms sendiri.Namun writing, so that the notation algorithm can be easily translated into programming language notation nature, then the algorithm notation should correspond with the notation of programming languages in general.&lt;br /&gt;&lt;br /&gt;Example command: Write the value of x and y&lt;br /&gt;&lt;br /&gt;In the notation algorithm becomes: write (x, y)&lt;br /&gt;&lt;br /&gt;In Turbo C language is written: printf ( "% d% d", x, y);&lt;br /&gt;&lt;br /&gt;&lt;!-- Kontera ContentLink(TM);--&gt;&lt;br /&gt;&lt;script type="text/javascript"&gt;var dc_AdLinkColor = 'blue' ;var dc_PublisherID = 119304 ;&lt;/script&gt;&lt;br /&gt;&lt;script src="http://kona.kontera.com/javascript/lib/KonaLibInline.js" type="text/javascript"&gt;&lt;/script&gt;&lt;br /&gt;&lt;!-- Kontera ContentLink(TM) --&gt;&lt;br /&gt;&lt;br /&gt;Type, Name, and Value&lt;br /&gt;&lt;br /&gt;Type&lt;br /&gt;&lt;br /&gt;In general, computer programs work by manipulating the object (data) in the memory. Object to be programmed a variety of types, for instance the type of numeric, character, string, and records (records).&lt;br /&gt;&lt;br /&gt;Type of data can be grouped into 2, namely: basic types and type of formation. Basic type is the type that can be used directly, whereas the formation of the type formed from the basic types or from other types of formations that have been defined.&lt;br /&gt;&lt;br /&gt;One type referred from namanya.Nilai-value covered by the declared type in the domain (domain) value. Operations (and operators) that can be done on these types are also defined. In other words a type indicated by its name, the domain values they contain, how to write the constants, and operations that can be done to him.&lt;br /&gt;&lt;br /&gt;Basic Type&lt;br /&gt;&lt;br /&gt;In a programming language that includes the basic types are:&lt;br /&gt;&lt;br /&gt;1. number of logic&lt;br /&gt;&lt;br /&gt;2. integers&lt;br /&gt;&lt;br /&gt;3. character or string&lt;br /&gt;&lt;br /&gt;4. real numbers&lt;br /&gt;&lt;br /&gt;Type formation&lt;br /&gt;&lt;br /&gt;Type of formation is the type that is defined by the programmer (user define). Type of formation drawn up by one or more basic types. There are two types of formation:&lt;br /&gt;&lt;br /&gt;Basic 1.Tipe labeled with the name of a new type of example: BilanganBulat type: integer&lt;br /&gt;&lt;br /&gt;BilanganBulat variable is an integer type is the same as type integer. Suppose we have a variable named X and type BilanganBulat, it means that the variable X is also of type integer.&lt;br /&gt;&lt;br /&gt;2.Rekaman (rekord).&lt;br /&gt;&lt;br /&gt;Tapes prepared by one or more fields storing data field.Tiap from certain basic types or from other types of formations that have been dideinisikan sebellumnya.Nama record itentukan by programmers. Because the diusun top stukturnya fields, the record also inamakan structured type (stuctured type).&lt;br /&gt;&lt;br /&gt;Name&lt;br /&gt;&lt;br /&gt;Every object in nature has given to nama.Nama easy to identify the object, referred to, and are distinguished from objects in the algorithm name lainya.Di used as identifiers, "something" and the programmer reference "something" that through his name. Therefore, each name must be unique, no two the same name.&lt;br /&gt;&lt;br /&gt;In the algorithm "something" that can be named:&lt;br /&gt;&lt;br /&gt;1.Variabel&lt;br /&gt;&lt;br /&gt;2.Konstanta&lt;br /&gt;&lt;br /&gt;3.Tipe formation&lt;br /&gt;&lt;br /&gt;4.Nama Function&lt;br /&gt;&lt;br /&gt;5.Nama Procedure&lt;br /&gt;&lt;br /&gt;An important thing to note is, the name should be interpretive, that reflects the intrinsic value or function dikandungnya.Pemrogram highly recommended to provide an explanation of the name defined.&lt;br /&gt;&lt;br /&gt;All names used in the algorithm should be defined or declared dibagian declaration. The declaration is used as a reference to an unknown word meanings or terjemahannya.Tempat to explain the name and type of the name.&lt;br /&gt;&lt;br /&gt;&lt;!-- Begin BidVertiser code --&gt;&lt;br /&gt;&lt;script language="JavaScript1.1" src="http://bdv.bidvertiser.com/BidVertiser.dbm?pid=272446&amp;bid=664500" type="text/javascript"&gt;&lt;/script&gt;&lt;br /&gt;&lt;noscript&gt;&lt;a href="http://www.bidvertiser.com"&gt;internet marketing&lt;/a&gt;&lt;/noscript&gt;&lt;br /&gt;&lt;!-- End BidVertiser code --&gt;&lt;br /&gt;&lt;br /&gt;Value&lt;br /&gt;&lt;br /&gt;Value is the amount of data types that have been didefinisikan.Nilai content can be stored by variable name or constant name, the value of the calculation, or the value sent by fungsi.Algoritma essentially manipulate the value stored in the memory element. The value contained by the manipulated variable such as by way of: filling the other variables the same type, used for calculations, or written to the output device.&lt;br /&gt;&lt;br /&gt;Example algorima: stirng print "Hello, how are you?" to the output device.&lt;br /&gt;&lt;br /&gt;Version 1. String "Hello, how are you?" Direct printing without using variables.&lt;br /&gt;&lt;br /&gt;Algorithm:&lt;br /&gt;&lt;br /&gt;Declaration&lt;br /&gt;&lt;br /&gt;(no)&lt;br /&gt;&lt;br /&gt;Description&lt;br /&gt;&lt;br /&gt;write ( "Hello, how are you?")&lt;br /&gt;&lt;br /&gt;Version 2.String "Hello, how are you?" stored in a variable of type string.&lt;br /&gt;&lt;br /&gt;Algorithm:&lt;br /&gt;&lt;br /&gt;Declaration&lt;br /&gt;&lt;br /&gt;saying: string&lt;br /&gt;&lt;br /&gt;Description&lt;br /&gt;&lt;br /&gt;&lt;------ saying 'Hello, how are you? "      write (words)Version 3.String "Hello, how are you?" stored as constantsAlgorithm:Declaration       const greeting = 'Hello, how are you? "Description       write (words) Output generated by the algorithm version 1, 2, and 3 are:      Hello, how are you?&gt; tukar&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6390047005201701735-2172780331467725052?l=programstudies.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programstudies.blogspot.com/feeds/2172780331467725052/comments/default' title='Poskan Komentar'/><link rel='replies' type='text/html' href='http://programstudies.blogspot.com/2009/10/algoritma-advenced.html#comment-form' title='0 Komentar'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/2172780331467725052'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/2172780331467725052'/><link rel='alternate' type='text/html' href='http://programstudies.blogspot.com/2009/10/algoritma-advenced.html' title='Algoritma Advenced'/><author><name>It's Gonna Be Me</name><uri>http://www.blogger.com/profile/07321805699767978812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6390047005201701735.post-2835229499078858883</id><published>2009-10-22T00:12:00.000+07:00</published><updated>2009-10-22T00:13:57.870+07:00</updated><title type='text'>ALGORITHM  ADVENCED</title><content type='html'>&amp;nbsp;Writing Rules Algorithm&lt;br /&gt;&lt;br /&gt;The algorithm contains a step-by-step problem-solving. These steps can be &lt;br /&gt;written in any notation, provided easy to read and understand, because it is not &lt;br /&gt;no standard notation in writing the algorithm. Each person can make writing rules &lt;br /&gt;and notation algorithm itself. Notation so that the algorithm easily translated into the notation &lt;br /&gt;programming language, the notation should berkorespnden algorithm with &lt;br /&gt;programming language notation in general. &lt;br /&gt;Writing Rules Algorithm &lt;br /&gt;Each algorithm will always consist of three parts namely: &lt;br /&gt;• Title (Header) &lt;br /&gt;• Dictionary &lt;br /&gt;• Algorithm &lt;br /&gt;In each of these sections will be written if the comments about each section &lt;br /&gt;is written between parentheses Kaurawas example (Comments). Notation algoritmis &lt;br /&gt;written between these marks will not be executed by the program.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: Arial, sans-serif; font-size: 10px; white-space: pre;"&gt;&lt;object height="344" width="425"&gt;&lt;param name="movie" value="http://www.youtube.com/v/P00xJgWzz2c&amp;amp;hl=en&amp;amp;fs=1&amp;amp;"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/P00xJgWzz2c&amp;amp;hl=en&amp;amp;fs=1&amp;amp;" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/span&gt;&lt;br /&gt;Example: &lt;br /&gt;Title (Header) &lt;br /&gt;The title is the text of the algorithm is used for defining the name &lt;br /&gt;to determine whether the text is a program, procedures, functions. After title &lt;br /&gt;advised to write a brief specification of the algorithm text. Name &lt;br /&gt;algorithm should be brief but fairly describes what will be done by &lt;br /&gt;algorithm. &lt;br /&gt;Example: &lt;br /&gt;Note: &lt;br /&gt;To separate between words in the title of the algorithm uses the sign "_" is not &lt;br /&gt;a must. You can write LuasLingkaran or Luas_Lingkaran. But &lt;br /&gt;You should not use the space "" to separate between words in the name of &lt;br /&gt;algorithm. &lt;br /&gt;Title &lt;br /&gt;(Comments on algorithms such as the workings of the program, initial condition and the condition &lt;br /&gt;the end of the algorithm) &lt;br /&gt;Dictionary &lt;br /&gt;(In this section, didefinifikan a constant, variable names, procedure names and &lt;br /&gt;name of the function) &lt;br /&gt;Algorithms &lt;br /&gt;(In this section written algorithm. All written text is not among the signs &lt;br /&gt;brackets Kaurawas notation will be considered as an algorithm that will affect &lt;br /&gt;the truth algorithm) &lt;br /&gt;Program Title Luas_Kubus ← (algorithm) &lt;br /&gt;(Calculate the area to the size of the cube that is read from the input devices and &lt;br /&gt;print results kepiranti output) ← (Specification Algorithm)&lt;br /&gt;3 &lt;br /&gt;Dictionary (Declaration) &lt;br /&gt;Dictionary algorithm is part of the text as a place to define: &lt;br /&gt;• Name type &lt;br /&gt;• Name of constant &lt;br /&gt;• Variable Name &lt;br /&gt;• Name the function &lt;br /&gt;• Name of procedure &lt;br /&gt;All the new name can be used in the algorithm if it has been defined prior &lt;br /&gt;first in the dictionary. Writing a set of names in the dictionary should be grouped &lt;br /&gt;according to the type name. &lt;br /&gt;Undefined variable name value as defined. Definition name &lt;br /&gt;constants as well as providing constant prices, the definition of a function &lt;br /&gt;performed well with the domain / range and specifications. Definition name &lt;br /&gt;procedures as well as the defining parameters (if any) and specification procedures &lt;br /&gt;(initial conditions "Initial State", Condition end "Final State" and the process is done). &lt;br /&gt;Example: &lt;br /&gt;Dictionary &lt;br /&gt;(Name type, only type that is not the basic type) &lt;br /&gt;type hours: &lt;hh,mm,ss :integer=""&gt; (Type-hour consists of 3 input is "hh" as &lt;br /&gt;watch. "Mm" for minutes and "ss" for seconds) &lt;br /&gt;(Name constants, must indicate the type and value) &lt;br /&gt;constant phi: real = 3.14159 &lt;br /&gt;constant name: string = 'Alex' &lt;br /&gt;constant true: boolean = true &lt;br /&gt;(Name Information, mentioned type) &lt;br /&gt;x, y: integer (a value) bertype integers &lt;br /&gt;NMax: real (bertype maximum value of real numbers) &lt;br /&gt;Name: string (a value which is a collection of character) &lt;br /&gt;P: point (a value in the field kartesian) &lt;br /&gt;Search for: Boolean logic values (a) &lt;br /&gt;4 &lt;br /&gt;Algorithm (Description) &lt;br /&gt;Algorithm is the core of an algorithm which contains the instructions or call &lt;br /&gt;actions that have been defined. Text component algorithm in procedural programming &lt;br /&gt;can be: &lt;br /&gt;• basic instructions such as input / output, assignment &lt;br /&gt;• Sequence (sequence) &lt;br /&gt;• Analysis of cases &lt;br /&gt;• Repetition &lt;br /&gt;Every step algorithm is read from the "top" to "down". The order of description writing &lt;br /&gt;menentuan command execution sequence. &lt;br /&gt;Example: &lt;br /&gt;Algorithms &lt;br /&gt;input (c, d) (accept input 2 numbers c and d) &lt;br /&gt;if c &lt;d (operation="" conditional)="" then=""&gt;&lt;br /&gt;e ← a + b (e in the assignment of the value of a and b) &lt;br /&gt;else &lt;br /&gt;e ← a - b &lt;br /&gt;output (e) (result output numbers of e) &lt;br /&gt;(Name of function, domain name and range) &lt;br /&gt;RealToInt function (x: real) → integer &lt;br /&gt;(change the price of x bertype real becomes equivalent to the price of bertype integer) &lt;br /&gt;(Name of the procedure, refer to "IS" initial state, "FS" and the final state) &lt;br /&gt;procedure exchange (input / output x, y: real) &lt;br /&gt;(IS-defining x and y, x = a and y = b &lt;br /&gt;FS x = b and y = a &lt;br /&gt;Process: swap the contents of the information numbers x and y) &lt;br /&gt;5 &lt;br /&gt;Note: &lt;br /&gt;For the words of inputs, outputs, if then else, output will be studied more deeply in &lt;br /&gt;subsequent chapters. &lt;br /&gt;Examples of Solving Problems By Algorithm &lt;br /&gt;Print a String "Good Learning Algorithms and Programming" to the output device. &lt;br /&gt;Determining the largest value of the integer read from input devices and &lt;br /&gt;write the result to the output device. &lt;br /&gt;Cetak_string Program &lt;br /&gt;(print the string "Good Learning Algorithms and Programming" to the device &lt;br /&gt;output) &lt;br /&gt;Dictionary &lt;br /&gt;(not) &lt;br /&gt;Algorithms &lt;br /&gt;Output ( 'Good Learning Algorithms and Programming') &lt;br /&gt;Nilai_Maksimal Program &lt;br /&gt;(Determine the highest value is read from the input devices and the results are printed &lt;br /&gt;to the output device) &lt;br /&gt;Dictionary &lt;br /&gt;results, x, y: integer (result is a variable to hold the output value) &lt;br /&gt;(x, y is the variable to hold the input value) &lt;br /&gt;Algorithms &lt;br /&gt;input (x, y) (read a value of x and y of input devices) &lt;br /&gt;if x &lt;y (operation="" conditional)="" then=""&gt;&lt;br /&gt;result ← x (results on assignment by the largest indigo) &lt;br /&gt;else &lt;br /&gt;result ← y &lt;br /&gt;output (result) (values printed in the result variable to the output device&lt;/y&gt;&lt;/d&gt;&lt;/hh,mm,ss&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6390047005201701735-2835229499078858883?l=programstudies.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programstudies.blogspot.com/feeds/2835229499078858883/comments/default' title='Poskan Komentar'/><link rel='replies' type='text/html' href='http://programstudies.blogspot.com/2009/10/algorithm-advenced.html#comment-form' title='1 Komentar'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/2835229499078858883'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/2835229499078858883'/><link rel='alternate' type='text/html' href='http://programstudies.blogspot.com/2009/10/algorithm-advenced.html' title='ALGORITHM  ADVENCED'/><author><name>It's Gonna Be Me</name><uri>http://www.blogger.com/profile/07321805699767978812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6390047005201701735.post-2368398731623156513</id><published>2009-10-21T21:27:00.000+07:00</published><updated>2009-10-21T21:28:38.251+07:00</updated><title type='text'>Basic Concepts of Algorithms</title><content type='html'>Introduction &lt;br /&gt;&lt;br /&gt;All agree that computers are tools to solve problems. So that the computer can solve the problem it is necessary to be formulated first steps in a series of instructions. A set of instructions that is solving a problem called "Program". &lt;br /&gt;&lt;br /&gt;So that the computer can run the program, it must be written in language understandable by a computer. Because the computer is a machine then the program must be written in a language specifically designed to communicate with the computer. Computer language used in writing a program called the programming language. One example is the programming language is language C. &lt;br /&gt;&lt;br /&gt;In solving problems with the help of a computer, the first step taken is to create a design (design). Design presents ways of thinking in solving problems programmers. This design contains a sequence of steps achieving solutions that are written in descriptive notations. The sequence of steps to solve problems systematically called algorithms.&lt;br /&gt;&lt;br /&gt;&lt;!-- Kontera ContentLink(TM);--&gt;&lt;br /&gt;&lt;script type="text/javascript"&gt;var dc_AdLinkColor = 'blue' ;var dc_PublisherID = 119304 ;&lt;/script&gt;&lt;br /&gt;&lt;script src="http://kona.kontera.com/javascript/lib/KonaLibInline.js" type="text/javascript"&gt;&lt;/script&gt;&lt;br /&gt;&lt;!-- Kontera ContentLink(TM) --&gt;&lt;br /&gt;&lt;br /&gt;Algorithm notation &lt;br /&gt;&lt;br /&gt;Notation algorithm is not a programming language notation, so anyone can make a notation algorithm berbeda.Hal important about the notation is easy to read and not dimengerti.Meskipun algorithm notation standard notation, but compliance with the notation should be noted to avoid confusion. &lt;br /&gt;&lt;br /&gt;Some notation in writing the algorithm: &lt;br /&gt;&lt;br /&gt;1.Notasi I: state algorithm steps with a string of descriptive phrases. &lt;br /&gt;&lt;br /&gt;With a stylish line descriptive notation, a description of each step can be explained by gamblang.Misalnya language, the process begins with a verb such as' read ',' count ',' change 'and sebagainya.Sedangkan conditional statement expressed by' if ....' , 'Then ....'. &lt;br /&gt;&lt;br /&gt;This notation is good for a short algorithm, but for large problems this notation it is not possible dipakai.Selain, conversion of notation algorithm tends to programming languages is relatively difficult. &lt;br /&gt;&lt;br /&gt;2.Notasi II: using the flow diagram (flow-chart). &lt;br /&gt;&lt;br /&gt;Flowchart popular in the early era of programming with more flow komputer.Diagram instructions describe the flow within the program instead of showing visually program.Notasi structure algorithm is also suitable for small problems, not suitable for large problems because it would require numerous pages to describe the flow of paper program process. &lt;br /&gt;&lt;br /&gt;3. Notation III: using pseudo-code &lt;br /&gt;&lt;br /&gt;Pseudocode (meaning quasi-pseudo or not actually) is a notation that resembles the notation a high level programming language like C language observations show that programming languages generally have a similar notation for some instructions, such as the notation if-then-else, while-do, repeat-until, read, write and so on. Based on these observations, it is defined that the notation algorithm that can explain ordered in clear language without confusing the reader can be called with the notation algorithm using pseudo-code. Unlike the troubled programming language with a semicolon and so forth, special words, index, format, and others, then the pseudo-code will be more easier and profitable. Advantages using pseudo-code notation is the ease of programming kebahasa convert it, because there is correspondence between each pseudo-code with program.Korespondensi language notation can be realized by the translation of the notation table algorithm into the programming language notation&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6390047005201701735-2368398731623156513?l=programstudies.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programstudies.blogspot.com/feeds/2368398731623156513/comments/default' title='Poskan Komentar'/><link rel='replies' type='text/html' href='http://programstudies.blogspot.com/2009/10/basic-concepts-of-algorithms.html#comment-form' title='0 Komentar'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/2368398731623156513'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/2368398731623156513'/><link rel='alternate' type='text/html' href='http://programstudies.blogspot.com/2009/10/basic-concepts-of-algorithms.html' title='Basic Concepts of Algorithms'/><author><name>It's Gonna Be Me</name><uri>http://www.blogger.com/profile/07321805699767978812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6390047005201701735.post-2590989332054274715</id><published>2009-10-21T10:04:00.000+07:00</published><updated>2009-10-21T10:04:30.476+07:00</updated><title type='text'>ALGORITHM</title><content type='html'>Before discussing the problem of notation algorithm, we first understand the insights and the basic concepts as below:&lt;br /&gt;Algorithm: the order of steps or instructions that must be implemented to solve the problem.&lt;br /&gt;Flowchart: (flow chart) is a sequence of instructions that described the program in the form of a diagram.&lt;br /&gt;Program: a series of instructions or commands (in a language understood by the computer) to perform certain tasks, resulting in an output / outputs expected.&lt;br /&gt;Language programming: programs that contain instructions understood by computers. There are 2 classification of programming languages, namely;&lt;br /&gt;&lt;br /&gt;&lt;!-- Begin: AdBrite, Generated: 2009-10-20 23:03:45  --&gt;&lt;br /&gt;&lt;script type="text/javascript"&gt;var AdBrite_Title_Color = '0000FF';var AdBrite_Text_Color = '000000';var AdBrite_Background_Color = 'FFFFFF';var AdBrite_Border_Color = 'CCCCCC';var AdBrite_URL_Color = '008000';try{var AdBrite_Iframe=window.top!=window.self?2:1;var AdBrite_Referrer=document.referrer==''?document.location:document.referrer;AdBrite_Referrer=encodeURIComponent(AdBrite_Referrer);}catch(e){var AdBrite_Iframe='';var AdBrite_Referrer='';}&lt;/script&gt;&lt;br /&gt;&lt;script type="text/javascript"&gt;document.write(String.fromCharCode(60,83,67,82,73,80,84));document.write(' src="http://ads.adbrite.com/mb/text_group.php?sid=1383045&amp;zs=3330305f323530&amp;ifr='+AdBrite_Iframe+'&amp;ref='+AdBrite_Referrer+'" type="text/javascript"&gt;');document.write(String.fromCharCode(60,47,83,67,82,73,80,84,62));&lt;/script&gt;&lt;br /&gt;&lt;div&gt;&lt;a target="_top" href="http://www.adbrite.com/mb/commerce/purchase_form.php?opid=1383045&amp;afsid=1" style="font-weight:bold;font-family:Arial;font-size:13px;"&gt;Your Ad Here&lt;/a&gt;&lt;/div&gt;&lt;!-- End: AdBrite --&gt;&lt;br /&gt;&lt;br /&gt;1. Low-level language / low-level language oriented machines, for example: machine language / machine language and assembly language / assembly language.&lt;br /&gt;2. High-level language / high-level language is a language-oriented programming in humans. For example: BASIC, PASCAL, COBOL, FORTRAN, C.&lt;br /&gt;&lt;br /&gt;An algorithm is a description of the implementation of a process, where the algorithm was developed by a series of logical steps instructions.&lt;br /&gt;&lt;br /&gt;The word logical is the key word in an algorithm. The steps in the algorithm must be logical, this means the result of a sequence of these steps must be determined, right or wrong. The steps that are not really able to give the wrong results.&lt;br /&gt;&lt;br /&gt;That the algorithm is the sequence of steps or instructions that must be implemented to solve the problem. This algorithm is written in a notation called notation algorithm. Notation algorithm is the basic thing that should be known by every person who wants to make a Vocational, because in this algorithm notations are skeletons of a program. Features of a good notation algorithm that can be translated into various languages. Notation algorithm is not a programming language notation, so that anyone can make a notation different algorithms. The important thing about the notation is easy to read and understand. However to avoid kekeliriuan, adherence to the notation should be noted. Below are 3 common notation used in the writing of algorithms, namely:&lt;br /&gt;&lt;br /&gt;1. Natural Notation&lt;br /&gt;2. Flowchart / Diagram Flow&lt;br /&gt;3. Pseudo-Code (such as code)&lt;br /&gt;&lt;br /&gt;1. NOTATION NATURAL&lt;br /&gt;Writing algorithms with natural notation is to write-instuksi instructions that must be implemented to solve the problem in the form of a string of descriptive phrases.&lt;br /&gt;&lt;br /&gt;With this sentence-style notation, a description of each step is described in vivid language. The process begins with a verb such as 'read', 'count', 'for', 'change', and so on, while the conditional statement expressed by 'if ... then ...'. This notation is good for a short algorithm, but the algorithm for large problems, the notation is certainly not efficient. In addition, the notation conversion algorithm into a programming language notation tends relatively difficult.&lt;br /&gt;&lt;br /&gt;2. Flowchart / DIAGRAM ALUR&lt;br /&gt;There are 2 types of Flowchart:&lt;br /&gt;a. flowchart system, is a picture that explains:&lt;br /&gt;- The files are processed by the program&lt;br /&gt;- Types of tools used by the file&lt;br /&gt;- Operation of the file (input or output).&lt;br /&gt;b. flowchart program (usually called just flowcharts), is a picture that explains the sequence:&lt;br /&gt;- Reading data&lt;br /&gt;- Processing of data&lt;br /&gt;- Decision making on the data&lt;br /&gt;- Presentation of the results of data processing&lt;br /&gt;&lt;br /&gt;Well .... That we discussed here is a flowchart program flowchart or commonly called just.&lt;br /&gt;&lt;br /&gt;Flowcharts / flow diagrams popular in the early era of computer programming (especially with Basic, Fortran, and Cobol). More flow diagram illustrates the flow of instructions in the program visually shows the structure of the program compared. Flowchart notation more suitable for small problems to large problems are not suitable because it requires numerous paper pages. In addition, the notation conversion algorithm into programming languages tend to be relatively difficult.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6390047005201701735-2590989332054274715?l=programstudies.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programstudies.blogspot.com/feeds/2590989332054274715/comments/default' title='Poskan Komentar'/><link rel='replies' type='text/html' href='http://programstudies.blogspot.com/2009/10/algorithm.html#comment-form' title='1 Komentar'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/2590989332054274715'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/2590989332054274715'/><link rel='alternate' type='text/html' href='http://programstudies.blogspot.com/2009/10/algorithm.html' title='ALGORITHM'/><author><name>It's Gonna Be Me</name><uri>http://www.blogger.com/profile/07321805699767978812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6390047005201701735.post-2870460503174000222</id><published>2009-10-19T02:33:00.000+07:00</published><updated>2009-10-19T02:44:28.838+07:00</updated><title type='text'>PHP LANGUAGE</title><content type='html'>php is a web programming language is most popular today, more than other languages such as Perl and ASP. php is free and open source. There are thousands of free web applications and commercial written in php. More about php can be seen diwww. php.net&lt;br /&gt;&lt;br /&gt;&lt;!-- Begin: AdBrite, Generated: 2009-10-18 15:43:46  --&gt;&lt;br /&gt;&lt;script type="text/javascript"&gt;var AdBrite_Title_Color = '0000FF';var AdBrite_Text_Color = '000000';var AdBrite_Background_Color = 'FFFFFF';var AdBrite_Border_Color = 'CCCCCC';var AdBrite_URL_Color = '008000';try{var AdBrite_Iframe=window.top!=window.self?2:1;var AdBrite_Referrer=document.referrer==''?document.location:document.referrer;AdBrite_Referrer=encodeURIComponent(AdBrite_Referrer);}catch(e){var AdBrite_Iframe='';var AdBrite_Referrer='';}&lt;/script&gt;&lt;br /&gt;&lt;script type="text/javascript"&gt;document.write(String.fromCharCode(60,83,67,82,73,80,84));document.write(' src="http://ads.adbrite.com/mb/text_group.php?sid=1383045&amp;zs=3330305f323530&amp;ifr='+AdBrite_Iframe+'&amp;ref='+AdBrite_Referrer+'" type="text/javascript"&gt;');document.write(String.fromCharCode(60,47,83,67,82,73,80,84,62));&lt;/script&gt;&lt;br /&gt;&lt;div&gt;&lt;a target="_top" href="http://www.adbrite.com/mb/commerce/purchase_form.php?opid=1383045&amp;afsid=1" style="font-weight:bold;font-family:Arial;font-size:13px;"&gt;Your Ad Here&lt;/a&gt;&lt;/div&gt;&lt;!-- End: AdBrite --&gt;&lt;br /&gt;&lt;br /&gt;PHP History&lt;br /&gt;&lt;br /&gt;At first PHP stands for Personal Home Page (Personal Site). PHP was first created by Rasmus Lerdorf in 1995. At that time, PHP was named FI (Form Interpreted), the realization of a set of scripts that are used to process data from the web form.&lt;br /&gt;&lt;br /&gt;Next Rasmus released the source code to the public and named PHP / FI. With the release of this source code into open source, so a lot of programmers who are interested to join PHP development.&lt;br /&gt;&lt;br /&gt;In November 1997, released PHP / FI 2.0. In this release the PHP interpreter program is implemented in C. In this release also included the extension modules that enhance the ability of PHP / FI significantly.&lt;br /&gt;&lt;br /&gt;In 1997, a company called Zend PHP interpreter to rewrite be cleaner, better, and faster. Then in June 1998, the company released a new interpreter for the PHP and the formalizing such as the release of PHP 3.0 and PHP acronym was changed to repeat the acronym PHP: Hypertext Preprocessing.&lt;br /&gt;&lt;br /&gt;In mid-1999, Zend released a new PHP interpreter and the release is known as the PHP 4.0. PHP version PHP 4.0 is the most widely used in the early 21st century. This version is widely used due to its ability to build complex web applications but still have the speed and stability.&lt;br /&gt;&lt;br /&gt;In June 2004, Zend PHP 5.0 release. In this version, the core of PHP interpreters experienced major changes. This version also includes object-oriented programming model into the development of PHP to respond to the programming language object-oriented paradigm.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6390047005201701735-2870460503174000222?l=programstudies.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programstudies.blogspot.com/feeds/2870460503174000222/comments/default' title='Poskan Komentar'/><link rel='replies' type='text/html' href='http://programstudies.blogspot.com/2009/10/php-language.html#comment-form' title='0 Komentar'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/2870460503174000222'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/2870460503174000222'/><link rel='alternate' type='text/html' href='http://programstudies.blogspot.com/2009/10/php-language.html' title='PHP LANGUAGE'/><author><name>It's Gonna Be Me</name><uri>http://www.blogger.com/profile/07321805699767978812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6390047005201701735.post-5976742602194194342</id><published>2009-10-14T12:56:00.001+07:00</published><updated>2009-10-14T12:56:43.507+07:00</updated><title type='text'>Javascript Tutorial</title><content type='html'>The origin of the name javascript is livescript. First developed in 1995 in kalipada Communications NEtscap. at the end of 1995 Netscap comunications collaborating with Sun Microsystems changed its name to javascript.&lt;br /&gt;&lt;br /&gt;java script is the scripting language embedded in HTML code and client side diprosespada. with the existence of this language, the ability of the HTML document to be more extensive.&lt;br /&gt;&lt;br /&gt;Javascript is different from the Java language. Javascript is interpreted by the client, while the java language compiled by the programmer.&lt;br /&gt;&lt;br /&gt;this is one example and tutorial javascript.&lt;br /&gt;&lt;br /&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/2t3ZysHg3Cc&amp;hl=en&amp;fs=1&amp;"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/2t3ZysHg3Cc&amp;hl=en&amp;fs=1&amp;" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6390047005201701735-5976742602194194342?l=programstudies.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programstudies.blogspot.com/feeds/5976742602194194342/comments/default' title='Poskan Komentar'/><link rel='replies' type='text/html' href='http://programstudies.blogspot.com/2009/10/javascript-tutorial.html#comment-form' title='1 Komentar'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/5976742602194194342'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/5976742602194194342'/><link rel='alternate' type='text/html' href='http://programstudies.blogspot.com/2009/10/javascript-tutorial.html' title='Javascript Tutorial'/><author><name>It's Gonna Be Me</name><uri>http://www.blogger.com/profile/07321805699767978812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6390047005201701735.post-7316534140336375722</id><published>2009-10-14T12:47:00.001+07:00</published><updated>2009-10-14T12:47:48.284+07:00</updated><title type='text'>AJAX TUTORIAL</title><content type='html'>here is the car to learn about ajax through dreamwever CS3. This is a tutorial that can make you much more understanding of the programming ajax. This tutorial would be better if practiced directly by the users, because without the direct practice will make us easily forget the tutorial.&lt;br /&gt;&lt;br /&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/PuOxSeo7qaY&amp;hl=en&amp;fs=1&amp;"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/PuOxSeo7qaY&amp;hl=en&amp;fs=1&amp;" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6390047005201701735-7316534140336375722?l=programstudies.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programstudies.blogspot.com/feeds/7316534140336375722/comments/default' title='Poskan Komentar'/><link rel='replies' type='text/html' href='http://programstudies.blogspot.com/2009/10/ajax-tutorial.html#comment-form' title='0 Komentar'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/7316534140336375722'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/7316534140336375722'/><link rel='alternate' type='text/html' href='http://programstudies.blogspot.com/2009/10/ajax-tutorial.html' title='AJAX TUTORIAL'/><author><name>It's Gonna Be Me</name><uri>http://www.blogger.com/profile/07321805699767978812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6390047005201701735.post-2069902909253119733</id><published>2009-10-14T09:49:00.000+07:00</published><updated>2009-10-14T09:50:45.757+07:00</updated><title type='text'>GAME PROGRAMMING</title><content type='html'>Game programming, a subset of game development, is the programming of computer, console or arcade games. Though often engaged in by professional game programmers, many novices may program games as a hobby. Some software engineering students program games as exercises for learning a programming language or operating system.&lt;br /&gt;&lt;br /&gt;&lt;object width="560" height="340"&gt;&lt;param name="movie" value="http://www.youtube.com/v/mIMhspJzC34&amp;hl=en&amp;fs=1&amp;"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/mIMhspJzC34&amp;hl=en&amp;fs=1&amp;" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="560" height="340"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6390047005201701735-2069902909253119733?l=programstudies.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programstudies.blogspot.com/feeds/2069902909253119733/comments/default' title='Poskan Komentar'/><link rel='replies' type='text/html' href='http://programstudies.blogspot.com/2009/10/game-programming.html#comment-form' title='0 Komentar'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/2069902909253119733'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/2069902909253119733'/><link rel='alternate' type='text/html' href='http://programstudies.blogspot.com/2009/10/game-programming.html' title='GAME PROGRAMMING'/><author><name>It's Gonna Be Me</name><uri>http://www.blogger.com/profile/07321805699767978812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6390047005201701735.post-5270362341757309689</id><published>2009-10-14T00:29:00.000+07:00</published><updated>2009-10-14T00:30:53.129+07:00</updated><title type='text'>Web Programming</title><content type='html'>If you love it in making a web, then you will not be separated from what is called a programming language. Programming language is a technique of command / instruction standards to govern the computer.&lt;br /&gt;Here is an explanation of what programming language used to create a website:&lt;br /&gt;&lt;br /&gt;1. Bahasa Pemrograman HTML&lt;br /&gt;HyperText Markup Language (HTML) is a markup language used to create a web page and display a variety of information in an Internet browser.&lt;br /&gt;HTML is currently the Internet standard defined and controlled use by the World Wide Web Consortium (W3C).&lt;br /&gt;HTML form tag code that instructs the browser to produce the display in accordance with the desired.&lt;br /&gt;A file is an HTML file can be opened by using a web browser such as Mozilla Firefox or Microsoft Internet Explorer.&lt;br /&gt;&lt;br /&gt;2. XML Programming Language&lt;br /&gt;Extensible Markup Language (XML) is a versatile markup language recommended by W3C to describe various kinds of data.&lt;br /&gt;XML uses markup tags as HTML, but its use is not limited to just display the web page.&lt;br /&gt;XML is a method of making bookmarks / markup in a document.&lt;br /&gt;&lt;br /&gt;3. PHP Programming Language&lt;br /&gt;PHP is a scripting programming language most widely used today.&lt;br /&gt;PHP was first created by Rasmus Lerdorf in 1995. At that time, PHP was named FI (Form Interpreted), the realization of a set of scripts that are used to process data from the web form.&lt;br /&gt;PHP is widely used to create dynamic web sites, although not closed the possibility for another use.&lt;br /&gt;PHP is usually run on linux operating system (PHP can also run with hosting windows).&lt;br /&gt;&lt;br /&gt;4. WML Programming Language&lt;br /&gt;WML stands for Wireless Markup Language, the programming language used in applications based on XML (Extensible Markup Langauge).&lt;br /&gt;WML is a programming language used in wireless applications.&lt;br /&gt;WML is analogous to the HTML that runs on the wireless protocol.&lt;br /&gt;&lt;br /&gt;5. PERL Programming Language&lt;br /&gt;Perl is a programming language for the machine with the Unix operating system (SunOS, Linux, BSD, HP-UX), also available for operating systems such as DOS, Windows, PowerPC, BeOS, VMS, EBCDIC, and PocketPC.&lt;br /&gt;PERL is a programming language programming language like C. &lt;br /&gt;&lt;br /&gt;6. Programming Languages ASP&lt;br /&gt;ASP stands for Active Server Pages, which is one of the web programming language for creating dynamic web pages.&lt;br /&gt;ASP is one of technology products provided by Microsoft.&lt;br /&gt;ASP working on a web server and a server side scripting.&lt;br /&gt;&lt;br /&gt;7. CFM Programming Languages&lt;br /&gt;Cfm ColdFusion tags created using the software Adobe ColdFusion / BlueDragon / Coldfusion Studio.&lt;br /&gt;Syntax based coldfusion html.&lt;br /&gt;&lt;br /&gt;8. CSS Programming Languages&lt;br /&gt;Cascading Style Sheets (CSS) is a stylesheet language used to set the display of a document written in markup language.&lt;br /&gt;The most common usage of CSS is for formatting web pages written in HTML and XHTML.&lt;br /&gt;Nevertheless, his own language can be used for all types of XML documents, including SVG and XUL.&lt;br /&gt;CSS specifications set by the World Wide Web Consortium (W3C).&lt;br /&gt;&lt;br /&gt;9. Javascript Programming Language&lt;br /&gt;Javascript is a powerful scripting language that runs on the client side.&lt;br /&gt;JavaScript is a scripting language developed by Netscape.&lt;br /&gt;To run scripts written in JavaScript that we need a JavaScript-enabled browser is a browser that can run JavaScript.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6390047005201701735-5270362341757309689?l=programstudies.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programstudies.blogspot.com/feeds/5270362341757309689/comments/default' title='Poskan Komentar'/><link rel='replies' type='text/html' href='http://programstudies.blogspot.com/2009/10/if-you-love-it-in-making-web-then-you.html#comment-form' title='0 Komentar'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/5270362341757309689'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/5270362341757309689'/><link rel='alternate' type='text/html' href='http://programstudies.blogspot.com/2009/10/if-you-love-it-in-making-web-then-you.html' title='Web Programming'/><author><name>It's Gonna Be Me</name><uri>http://www.blogger.com/profile/07321805699767978812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6390047005201701735.post-2767983497301545162</id><published>2009-10-13T08:16:00.001+07:00</published><updated>2009-10-13T08:16:34.898+07:00</updated><title type='text'>AJAX</title><content type='html'>AJAX was introduced by Jesse James Garrett of Adaptive Path in 2005. He describes how to develop different web with traditional methods. He published an article entitled "Ajax: A New Approach to Web Applications". In his article, Garrett believes that web application can close the gap between web and desktop applications.&lt;br /&gt;&lt;br /&gt;Traditional web development work synchronously, between applications and servers, each time doing a link or doing a "submit" on the form. Way, the browser sends the data to the server, the server responds and the page will be refreshed.&lt;br /&gt;&lt;br /&gt;Web applications that work with the AJAX work asynchronously, which means sending and receiving data from the user to the server without the need to load the entire page, but only to replace the web part to change. Use AJAX start popular when used by Google in 2005.&lt;br /&gt;&lt;br /&gt;AJAX is not a new programming language, but it is a new technique using existing standards. With AJAX we can become better, faster and add elements of user-friendly and interactive in our web application. AJAX is based on JavaScript and HTTP requests.&lt;br /&gt;&lt;br /&gt;AJAX is based on open standards such as:&lt;br /&gt;&lt;br /&gt;* JavaScript&lt;br /&gt;* XML&lt;br /&gt;* HTML / XHTML&lt;br /&gt;* CSS&lt;br /&gt;&lt;br /&gt;By using JavaScript AJAX can send and receive data between the web servers and web browsers. AJAX techniques will be held alternately exchange data and their re-load the entire page.&lt;br /&gt;&lt;br /&gt;That with, to learn AJAX, must understand the concept of the above standards. AJAX support in most popular browsers that AJAX applications are cross-platform applications and cross-browser.&lt;br /&gt;&lt;br /&gt;Through AJAX, JavaScript can be communicated directly with servers using XMLHttpRequest JavaScript object. This JavaScript object can trade data to a web server without having to reload (refresh) a web page.&lt;br /&gt;&lt;br /&gt;AJAX uses asynchronouse transfer data (in HTTP requests) between the browser and web server, which allows web pages to request small bits or all information from the server. AJAX technique makes Internet applications into smaller, faster and more user-friendly.&lt;br /&gt;&lt;br /&gt;AJAX is a web application better. Web applications add advantages over desktop applications:&lt;br /&gt;&lt;br /&gt;* Can reach a broad user&lt;br /&gt;* Easy to install&lt;br /&gt;* Easy to develop&lt;br /&gt;* Easily maintained&lt;br /&gt;&lt;br /&gt;As we know, Internet applications are not always hard and user friendly as desktop applications. With AJAX Internet applications smaller, faster and easy to use.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6390047005201701735-2767983497301545162?l=programstudies.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programstudies.blogspot.com/feeds/2767983497301545162/comments/default' title='Poskan Komentar'/><link rel='replies' type='text/html' href='http://programstudies.blogspot.com/2009/10/ajax.html#comment-form' title='0 Komentar'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/2767983497301545162'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/2767983497301545162'/><link rel='alternate' type='text/html' href='http://programstudies.blogspot.com/2009/10/ajax.html' title='AJAX'/><author><name>It's Gonna Be Me</name><uri>http://www.blogger.com/profile/07321805699767978812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6390047005201701735.post-2484751063418979420</id><published>2009-10-12T21:58:00.000+07:00</published><updated>2009-10-12T21:58:23.940+07:00</updated><title type='text'>Database Management  Systems.</title><content type='html'>Data is recorded on the phenomena / the fact that there is or there. or could also be said is that the data reflect the facts. data menngenai important facts must be recorded and organizations manage with good management that can be used efficiently so that the support operations and control data.&lt;br /&gt;&lt;br /&gt;1. file-based applications&lt;br /&gt;file-based application system is a collection of application programs that provide services to the user where each program to manage their own data. but the file-based application has a flaw, like a very bad control, formats, etc. that are not compatible.&lt;br /&gt;&lt;br /&gt;2. database management system&lt;br /&gt;database is a collection of data (elementary) that are logically related in fact represents a structured in a particular domain name to support a particular application state juga.basisdata describe the organization, when there are changes that alter the organization's state changes must be made to the data stored in the database.&lt;br /&gt;database management system is software that manages the database access. its function is to provide a basis for management information systems.&lt;br /&gt;The main purpose of a database management system is to provide a more comfortable environment for efficient storage and retrieval of data from the database.&lt;br /&gt;&lt;br /&gt;3. development needs of database&lt;br /&gt;functional needs which includes models, object, use, using a variety of other causes increased need for system features as follows.&lt;br /&gt;a. high availability&lt;br /&gt;b. high reliability&lt;br /&gt;c. high throughput&lt;br /&gt;d. Low response time&lt;br /&gt;e. long life time&lt;br /&gt;f. security&lt;br /&gt;&lt;br /&gt;4. database usage&lt;br /&gt;there are four types of database users, namely:&lt;br /&gt;1. application programmer&lt;br /&gt;2. advanced users&lt;br /&gt;3. specialized user&lt;br /&gt;4. ordinary user&lt;br /&gt;The main role of database management systems is to provide an abstract view hides the details of storage and manipulation of data physically.&lt;br /&gt;&gt; tukar&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6390047005201701735-2484751063418979420?l=programstudies.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programstudies.blogspot.com/feeds/2484751063418979420/comments/default' title='Poskan Komentar'/><link rel='replies' type='text/html' href='http://programstudies.blogspot.com/2009/10/database-management-systems.html#comment-form' title='1 Komentar'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/2484751063418979420'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/2484751063418979420'/><link rel='alternate' type='text/html' href='http://programstudies.blogspot.com/2009/10/database-management-systems.html' title='Database Management  Systems.'/><author><name>It's Gonna Be Me</name><uri>http://www.blogger.com/profile/07321805699767978812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6390047005201701735.post-7052162860801195</id><published>2009-10-12T07:31:00.000+07:00</published><updated>2009-10-12T08:04:22.869+07:00</updated><title type='text'>ENGINEERING SYSTEMS</title><content type='html'>About four hundred years ago, Machiavelli once said, "nothing is more difficult, more dangerous or more is not done pasyi in his success, from the lead in the opening of the new order.&lt;br /&gt;&lt;br /&gt;Software engineering occurs as a consequence of a process called system engineering. Engineering systems focusing on various elements, analysis, design, and organization of these elements into a system that could be a product, service, or technology to transform or control.&lt;br /&gt;&lt;br /&gt;1. computer-based systems&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;computer-based system is a series or order of the elements that are arranged to achieve predetermined objectives through the process of information.&lt;br /&gt;computer-based systems using a variety of system elements, including:&lt;br /&gt;a. software&lt;br /&gt;b. hardware&lt;br /&gt;c. human&lt;br /&gt;d. database&lt;br /&gt;e. documentation&lt;br /&gt;f. procedure&lt;br /&gt;&lt;br /&gt;2. hierarchy of systems engineering&lt;br /&gt;&lt;br /&gt;regardless of domain focus, engineering encompasses a set of methods from top to bottom and from bottom to top to control the hierarchy. systems engineering process usually begins with a world view that is where the entire business domain or in the test products to ensure that the business or the context of appropriate technologies can be built. WV (world view) was refined to focus on specific interest domain. in a particular domain, the need for a targeted system analyzed. finally, analysis, design, and construction of the target element is initiated. on top herarki, a broad context is built, and at the bottom complete technical activities undertaken by the relevant engineering disciplines do.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6390047005201701735-7052162860801195?l=programstudies.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programstudies.blogspot.com/feeds/7052162860801195/comments/default' title='Poskan Komentar'/><link rel='replies' type='text/html' href='http://programstudies.blogspot.com/2009/10/engineering-systems.html#comment-form' title='0 Komentar'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/7052162860801195'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/7052162860801195'/><link rel='alternate' type='text/html' href='http://programstudies.blogspot.com/2009/10/engineering-systems.html' title='ENGINEERING SYSTEMS'/><author><name>It's Gonna Be Me</name><uri>http://www.blogger.com/profile/07321805699767978812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6390047005201701735.post-5412716225987094635</id><published>2009-10-12T07:29:00.000+07:00</published><updated>2009-10-12T07:30:43.463+07:00</updated><title type='text'>Software Engineering</title><content type='html'>1. Software development&lt;br /&gt;&lt;br /&gt;Software engineering has crept into the four decades since its existence, a lot of strength and weakness experienced by humans from the same century. the nature of enthusiasm has been replaced by a reasonable expectation that supports years experience. Software engineering has reached middle age and has been recognized as a legitimate discipline and deserve attention. Software engineering has changed the work of programmers.&lt;br /&gt;&lt;br /&gt;2. The role of software development&lt;br /&gt;&lt;br /&gt;The current role of software there are 2 roles. on the one hand serves as a product and on the other side acts as the lead vehicles. as a product, delivering software built potential calculations by the computer device. as the vehicles that drive, the software serves as the basis for computer control, communications information, and the creation and control of other programs.&lt;br /&gt;&lt;br /&gt;3. Software characteristics&lt;br /&gt;&lt;br /&gt;Software is more of a logic element and not the elements of physical systems. software has the characteristics:&lt;br /&gt;&lt;br /&gt;a. software is built and developed, not created in a classic form.&lt;br /&gt;&lt;br /&gt;b. software is never worn&lt;br /&gt;&lt;br /&gt;c. most software is custom-made built, and can not be assembled from existing components.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6390047005201701735-5412716225987094635?l=programstudies.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programstudies.blogspot.com/feeds/5412716225987094635/comments/default' title='Poskan Komentar'/><link rel='replies' type='text/html' href='http://programstudies.blogspot.com/2009/10/software-engineering.html#comment-form' title='0 Komentar'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/5412716225987094635'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/5412716225987094635'/><link rel='alternate' type='text/html' href='http://programstudies.blogspot.com/2009/10/software-engineering.html' title='Software Engineering'/><author><name>It's Gonna Be Me</name><uri>http://www.blogger.com/profile/07321805699767978812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6390047005201701735.post-8726863537066177979</id><published>2009-10-12T07:24:00.000+07:00</published><updated>2009-10-12T07:24:00.380+07:00</updated><title type='text'>Expert System</title><content type='html'>Introduction to Expert System&lt;br /&gt;&lt;br /&gt;1. Introduction&lt;br /&gt;&lt;br /&gt;Expert System (Expert System) is a system that uses human knowledge in computers to solve problems that are usually done by an expert, for example: Doctor, Lawyer, Financial Analist, Tax Advisor. Expert system can encourage greater attention among computer experts and specialist information to develop a system to help managers and non managers solve problems.&lt;br /&gt;&lt;br /&gt;Expert system consists of 4 parts:&lt;br /&gt;&lt;br /&gt;    1. User Interface&lt;br /&gt;    2. Knowledge Base&lt;br /&gt;    3. Inference Engine&lt;br /&gt;    4. Development Engine&lt;br /&gt;&lt;br /&gt;Expert systems provide many advantages for the company's operations and managers, but have significant limitations.&lt;br /&gt;&lt;br /&gt;Artificial Intelligence is an activity to provide a variety of machines such as computer displays with the behavior of intelligent reasoning, if observed as human beings. Artificial Intelligence provides a variety of sophisticated computer applications to match the various types of human reasoning.&lt;br /&gt;&lt;br /&gt;History of Artificial Intelligence&lt;br /&gt;&lt;br /&gt;• John McCarty&lt;br /&gt;&lt;br /&gt;· Logic Theorist&lt;br /&gt;&lt;br /&gt;· General Problem Solver (GPS)&lt;br /&gt;&lt;br /&gt;The field of Artificial Intelligence&lt;br /&gt;&lt;br /&gt;1. Nerve Network (Neural Network)&lt;br /&gt;&lt;br /&gt;2. Perception System (Perceptive Systems)&lt;br /&gt;&lt;br /&gt;3. Learning (Learning)&lt;br /&gt;&lt;br /&gt;4. Robots (Robotics)&lt;br /&gt;&lt;br /&gt;Hardware 5.Perangkat Ai (Artificial Intelligence)&lt;br /&gt;&lt;br /&gt;Natural Language 6.Pemrosesan (Natural Language Processing)&lt;br /&gt;&lt;br /&gt;2. Types of Expert System&lt;br /&gt;&lt;br /&gt;· Interpretation: Generate a description of the situation based on sensor data.&lt;br /&gt;&lt;br /&gt;· Prediction: Predicting a result that may be of a given situation.&lt;br /&gt;&lt;br /&gt;· Diagnosis: Sums error based system symptoms (symptoms).&lt;br /&gt;&lt;br /&gt;· Design: Structuring the objects based on constraints.&lt;br /&gt;&lt;br /&gt;·. Planning: Plan of action&lt;br /&gt;&lt;br /&gt;· Monitoring: Comparing the observations with the planning process.&lt;br /&gt;&lt;br /&gt;· Debugging: Determining the resolution of system errors.&lt;br /&gt;&lt;br /&gt;· Repair: Implement improvement plans.&lt;br /&gt;&lt;br /&gt;· Instruction: diagnosis, debugging, and repairing the student's behavior.&lt;br /&gt;&lt;br /&gt;· Control: diagnosis, debugging, and repairing the system behavior.&lt;br /&gt;&lt;br /&gt;3. Expert System Components&lt;br /&gt;&lt;br /&gt;3.1. User Interface&lt;br /&gt;&lt;br /&gt;Manager's user interface is used to enter instructions and information from the system.&lt;br /&gt;&lt;br /&gt;Input method used by managers are:&lt;br /&gt;&lt;br /&gt;     * Menu&lt;br /&gt;     * Command&lt;br /&gt;     * Natural Language&lt;br /&gt;     * Output ES use 2 forms of explanation (explanation):&lt;br /&gt;     * Explanation of Question&lt;br /&gt;     * Explanation of Problem Solution&lt;br /&gt;&lt;br /&gt;3.2. Knowledge Base (KB)&lt;br /&gt;&lt;br /&gt;Knowledge base consists of facts that describe the problem or problem area of domain and presentation techniques are also used as logic facts.&lt;br /&gt;&lt;br /&gt;Rule / rules are detailed in a situation that does not change:&lt;br /&gt;&lt;br /&gt;· Condition true and not true&lt;br /&gt;&lt;br /&gt;· Action taken when the right conditions&lt;br /&gt;&lt;br /&gt;3.3. Interface Engine&lt;br /&gt;&lt;br /&gt;Inference Engine is part of the Expert System Reasoning that form by using the contents of the knowledge base in a particular order.&lt;br /&gt;&lt;br /&gt;Two methods used in the Expert System to observe Rule, namely:&lt;br /&gt;&lt;br /&gt;a. Reasoning forward (Forward) or a Forward Chaining&lt;br /&gt;&lt;br /&gt;- Evaluation Rule&lt;br /&gt;&lt;br /&gt;- The process of reasoning Recurring (Iterative Reasoning)&lt;br /&gt;&lt;br /&gt;b. Reasoning to the Rear (Revierse) or Backward Chaining.&lt;br /&gt;&lt;br /&gt;- Chronology of the First logic followed (Logical Path First)&lt;br /&gt;&lt;br /&gt;- Flow Logic Then followed (Next Logical Path)&lt;br /&gt;&lt;br /&gt;3.4. Development Engine&lt;br /&gt;&lt;br /&gt;Development Engine Rule Set building approach:&lt;br /&gt;&lt;br /&gt;1. Programming Language (Programming Language).&lt;br /&gt;&lt;br /&gt;2. Part Expert System (Expert System Shell)&lt;br /&gt;&lt;br /&gt;System Analist role as a Knowledge Engineer in the business organization with the skills to build a conventional computer applications, namely:&lt;br /&gt;&lt;br /&gt;     * Understand how to apply his skills Expert in solving problems.&lt;br /&gt;     * Can draw a Description Of Knowledge from Expert.&lt;br /&gt;&lt;br /&gt;System Development Process&lt;br /&gt;&lt;br /&gt;     * The beginning of the development process&lt;br /&gt;     * Prototype development of Expert System&lt;br /&gt;     * Participation Users&lt;br /&gt;     * Maintenance Expert System&lt;br /&gt;&lt;br /&gt;4. Advantages and disadvantages of Expert System&lt;br /&gt;&lt;br /&gt;Benefits Expert System for the manager.&lt;br /&gt;&lt;br /&gt;1. More presents alternatives.&lt;br /&gt;&lt;br /&gt;2. Applying high-level logic&lt;br /&gt;&lt;br /&gt;3. Provide time to evaluate the results of decisions.&lt;br /&gt;&lt;br /&gt;4. Provide a more consistent solution&lt;br /&gt;&lt;br /&gt;5. Creating a layman to work like an expert;&lt;br /&gt;&lt;br /&gt;6. Simplify work and increase work efficiency;&lt;br /&gt;&lt;br /&gt;7. Increasing the quality of work;&lt;br /&gt;&lt;br /&gt;8. Increased productivity also increases the performance so the company;&lt;br /&gt;&lt;br /&gt;9. Is a trusted archive, so as if direct consultation with experts (although the expert has gone)&lt;br /&gt;&lt;br /&gt;10. Extending the reach.&lt;br /&gt;&lt;br /&gt;Benefits Expert System for the company.&lt;br /&gt;&lt;br /&gt;1. Improving corporate performance.&lt;br /&gt;&lt;br /&gt;2. Maintaining control over the company's knowledge.&lt;br /&gt;&lt;br /&gt;Expert System Losses&lt;br /&gt;&lt;br /&gt;Two characteristics of the Expert System to limit the ability of equipment to solve business problems, namely:&lt;br /&gt;&lt;br /&gt;1. E.S. inkonsistesi can not handle the knowledge.&lt;br /&gt;&lt;br /&gt;2. E.S. can not apply judgment and instuisi as an essential ingredient to solving problems.&lt;br /&gt;&lt;br /&gt;Bottom Line&lt;br /&gt;&lt;br /&gt;Biggest obstacles to implementing the business into the Expert System is a structural problem.&lt;br /&gt;&lt;br /&gt;5. Decision-making using&lt;br /&gt;&lt;br /&gt;Expert System.&lt;br /&gt;&lt;br /&gt;Factors and conditions affecting consisting of:&lt;br /&gt;&lt;br /&gt;5.1. Public Reason&lt;br /&gt;&lt;br /&gt;Conventional programming (algorithm) is not satisfactory.&lt;br /&gt;&lt;br /&gt;Expert existence that can solve the problem.&lt;br /&gt;&lt;br /&gt;The experts are not always available.&lt;br /&gt;&lt;br /&gt;There are no alternative solutions available at one time.&lt;br /&gt;&lt;br /&gt;Completeness of the system is more adapted expenses.&lt;br /&gt;&lt;br /&gt;Selection problem domain presents the best combination.&lt;br /&gt;&lt;br /&gt;5.2. Problem Domain&lt;br /&gt;&lt;br /&gt;Problems domains characterized by the use of Expert Knowledge, Judgment and experience.&lt;br /&gt;&lt;br /&gt;Formal Knowledge is certainly in book form.&lt;br /&gt;&lt;br /&gt;Domain is more stable and Expert System will provide long-term needs.&lt;br /&gt;&lt;br /&gt;5.3. Domain Task.&lt;br /&gt;&lt;br /&gt;Task is not too easy and not too difficult.&lt;br /&gt;&lt;br /&gt;Task requires primarily Symbolic Reasoning.&lt;br /&gt;&lt;br /&gt;Task requires the use of heuristic.&lt;br /&gt;&lt;br /&gt;Task does not require knowledge of a wide field.&lt;br /&gt;&lt;br /&gt;Task must be clearly defined&lt;br /&gt;&lt;br /&gt;Some knowledge requires a large enough task using the knowledge base.&lt;br /&gt;&lt;br /&gt;Important concepts Task number no more than a hundred.&lt;br /&gt;&lt;br /&gt;Task skills can be taught to beginners.&lt;br /&gt;&lt;br /&gt;5.4. Domain Personnel.&lt;br /&gt;&lt;br /&gt;Is a strong management support.&lt;br /&gt;&lt;br /&gt;Potential users have realistic expectations&lt;br /&gt;&lt;br /&gt;Result is not a Politically Sensitive.&lt;br /&gt;&lt;br /&gt;The system uses a minimal standard procedures.&lt;br /&gt;&lt;br /&gt;5.5. Expert.&lt;br /&gt;&lt;br /&gt;Expert has qualified and punctual.&lt;br /&gt;&lt;br /&gt;Expert should be trusted.&lt;br /&gt;&lt;br /&gt;Expert must be cooperative and communicative.&lt;br /&gt;&lt;br /&gt;Expert may provide more Expertise.&lt;br /&gt;&lt;br /&gt;If many Expertise to The Right Answer.&lt;br /&gt;&lt;br /&gt;One must as Chief Expertise.&lt;br /&gt;&lt;br /&gt;5.6. System Analist&lt;br /&gt;&lt;br /&gt;System Analist must have understood the problem domain or can learn.&lt;br /&gt;&lt;br /&gt;System Analist can attract Expert Knowledge.&lt;br /&gt;&lt;br /&gt;6. Some Expert Systems Applications&lt;br /&gt;&lt;br /&gt;    1. Adver&lt;br /&gt;&lt;br /&gt;or Advertising is a prototype ES is used to using advertising media strategies in accordance with the internal conditions and external parameters of the company with advertising cost per thousand viewers.&lt;br /&gt;&lt;br /&gt;    1. Bert&lt;br /&gt;&lt;br /&gt;or Brickwork is an ES expert to design the building. Bert used to inspect a building design, and provides some recommendations for improvement. Inputs can be in the form of images.&lt;br /&gt;&lt;br /&gt;    1. DELTA&lt;br /&gt;&lt;br /&gt;is ES to diagnose damage to the machines Diesel Electric Locomotive.&lt;br /&gt;&lt;br /&gt;    1. DENDRAL&lt;br /&gt;&lt;br /&gt;To expert systems analysis of molecular structure of an unknown compound. Unknown compounds are analyzed by using the "mass Spectrometer" and "nuclear magnetic reconancy equipment". Data analysis was submitted to the DENDRAL which will make the structure of the molecule.&lt;br /&gt;&lt;br /&gt;    1. MYCIN&lt;br /&gt;&lt;br /&gt;ES is to diagnose bacterial infection and suggests types of drug and dosage for healing.&lt;br /&gt;&lt;br /&gt;    1. OPERA&lt;br /&gt;&lt;br /&gt;Advisor or service that is used to diagnose and deal damage to a computer network.&lt;br /&gt;&lt;br /&gt;OPERA run at night to replace Supervisor System Manager.&lt;br /&gt;&lt;br /&gt;    1. Prospector&lt;br /&gt;&lt;br /&gt;to help find the location that contains material mine. Knowledge base contains rules based on empirical data and taxonomy of some types of minerals and rocks.&lt;br /&gt;&lt;br /&gt;To determine if an area contains material mine, first state geological survey and soil sampling and rock.&lt;br /&gt;&lt;br /&gt;Based on survey data they will be given a recommendation whether the area they will be eligible to be explored and will decide if the excavation will be done or not.&lt;br /&gt;&lt;br /&gt;    1. HEATINGS&lt;br /&gt;&lt;br /&gt;To control the coal combustion process is continuously using sensors connected to the computer. If any damage is caused hazards (human &amp; equipment) can easily find and provide solutions. For example, if when HEATINGS detect levels of CO over the threshold will sound the alarm and ordered to open vents.&lt;br /&gt;&lt;br /&gt;    1. Shearer&lt;br /&gt;&lt;br /&gt;    1.&lt;br /&gt;&lt;br /&gt;k.&lt;br /&gt;&lt;br /&gt;To diagnose the damage type of coal cutting machines AM500.&lt;br /&gt;&lt;br /&gt;In coal mining, coal was cut with using cutting tools à Shearer (very expensive, consisting of: mechanical systems, hydraulic, and electrical), capacity of about 300 tons of coal per hour.&lt;br /&gt;&lt;br /&gt;Shearer can standby 24 hours a day and quickly made a diagnosis of damage (hydraulic, mechanical, and electrical).&lt;br /&gt;&lt;br /&gt;    1. MSUV-VIS&lt;br /&gt;&lt;br /&gt;To conduct a multi-component analysis of the active ingredient cold medicine in a variety of solvents, the pharmaceutical industry.&lt;br /&gt;&lt;br /&gt;In addition the system can be used for the determination of levels (pk) a mixture of other compounds with overlapping terms of spektranya additives.&lt;br /&gt;&lt;br /&gt;7. SUMMARY&lt;br /&gt;&lt;br /&gt;Expert System (Expert System) is a system that uses human knowledge in computers to solve problems that are usually done by an expert. Expert system can encourage greater attention among computer experts and specialist information to develop a system to help managers and non managers solve problems.&lt;br /&gt;&lt;br /&gt;Expert system consists of 4 parts, the User Interface, Knowledge Base, Inference Engine, and Engine Development.&lt;br /&gt;&lt;br /&gt;As for the types of the Expert System Interpretation, Prediction, Diagnosis, Design,&lt;br /&gt;&lt;br /&gt;     * Planning, Monitoring, Debugging, Repair, Instruction, and Control.&lt;br /&gt;&lt;br /&gt;Decision Making using Expert System is influenced by several factors and conditions that consist of the General Reasons, Problem Domain, Domain Task, Domain Personnel, Expert, and System Analist.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6390047005201701735-8726863537066177979?l=programstudies.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programstudies.blogspot.com/feeds/8726863537066177979/comments/default' title='Poskan Komentar'/><link rel='replies' type='text/html' href='http://programstudies.blogspot.com/2009/10/expert-system.html#comment-form' title='0 Komentar'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/8726863537066177979'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/8726863537066177979'/><link rel='alternate' type='text/html' href='http://programstudies.blogspot.com/2009/10/expert-system.html' title='Expert System'/><author><name>It's Gonna Be Me</name><uri>http://www.blogger.com/profile/07321805699767978812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6390047005201701735.post-3966860304711419948</id><published>2009-10-12T00:20:00.000+07:00</published><updated>2009-10-12T00:20:00.631+07:00</updated><title type='text'>Fourth Generation Language</title><content type='html'>What is a Fourth Generation Language?&lt;br /&gt;&lt;br /&gt;Fourth-generation language is also called 'Language High productivity', 'non-procedural language', 'Creator application'.&lt;br /&gt;&lt;br /&gt;Characteristic of fourth-generation languages are:&lt;br /&gt;&lt;br /&gt;- No need long training on DP.&lt;br /&gt;&lt;br /&gt;- Language to all users (DP professional to the end user)&lt;br /&gt;&lt;br /&gt;- Language query&lt;br /&gt;&lt;br /&gt;- Constructor application&lt;br /&gt;&lt;br /&gt;- Include a procedural language or nonprosedural&lt;br /&gt;&lt;br /&gt;Some fourth-generation language to meet the above criteria are not part of.&lt;br /&gt;&lt;br /&gt;Language Generation Computers:&lt;br /&gt;&lt;br /&gt;First generation language machine language&lt;br /&gt;&lt;br /&gt;- There is no interpreter / compiler&lt;br /&gt;&lt;br /&gt;- Programmed with the binary notation&lt;br /&gt;&lt;br /&gt;- Hard to not make mistakes.&lt;br /&gt;&lt;br /&gt;example: 011011 000000 000000 000001 110101&lt;br /&gt;&lt;br /&gt;means: clear the contents of the accumulator input 117 to a storage location dlmnya&lt;br /&gt;&lt;br /&gt;Second Generation Language assembly language (1950's)&lt;br /&gt;&lt;br /&gt;- Addressing a symbolic rather than physical addresses.&lt;br /&gt;&lt;br /&gt;- Consists of: SAP, AUTOCODER, SPS, BAL and EASYCODER.&lt;br /&gt;&lt;br /&gt;Example: CLA SALARY&lt;br /&gt;&lt;br /&gt;Salary indicates a memory location where the variable salary saved.&lt;br /&gt;&lt;br /&gt;Third generation language high-level language (1960s)&lt;br /&gt;&lt;br /&gt;- Use words English language&lt;br /&gt;&lt;br /&gt;- Emphasizing the formula in math notation&lt;br /&gt;&lt;br /&gt;- Camp programs converted to run pd yg machines differently.&lt;br /&gt;&lt;br /&gt;- Consists of: ALGOL, FORTRAN, COBOL, PL / I and ADA.&lt;br /&gt;&lt;br /&gt;Example: x = (a + b) / (c + d)&lt;br /&gt;&lt;br /&gt;Fourth Generation Language high productivity language (1970's)&lt;br /&gt;&lt;br /&gt;- Accelerate the process of making the application (fewer lines of code)&lt;br /&gt;&lt;br /&gt;- Simplify and accelerate the application changes.&lt;br /&gt;&lt;br /&gt;- Minimize the debugging problem.&lt;br /&gt;&lt;br /&gt;- Users can solve their own problems.&lt;br /&gt;&lt;br /&gt;- Consists of: Informix, Oracle&lt;br /&gt;&lt;br /&gt;Language of Fifth Generation Artificial Intelligence '(1980s)&lt;br /&gt;- Knowledge-based systems&lt;br /&gt;&lt;br /&gt;- Machine can describe the conclusions based on knowledge of complex code.&lt;br /&gt;- Consists of: Prolog, LISP&lt;br /&gt;&lt;br /&gt;Language Procedural and Non-Procedural&lt;br /&gt;&lt;br /&gt;* Language Procedural determine 'How' things done.&lt;br /&gt;&lt;br /&gt;* Language Nonprosedural decide 'Is' to be resolved.&lt;br /&gt;&lt;br /&gt;# Language Procedural:&lt;br /&gt;&lt;br /&gt;- Programmer provides detailed instructions on how each task completed.&lt;br /&gt;&lt;br /&gt;- Example: COBOL, PL / I&lt;br /&gt;&lt;br /&gt;# Language Nonprosedural:&lt;br /&gt;&lt;br /&gt;- Users get results fast, without saying how that procedure done.&lt;br /&gt;&lt;br /&gt;- Almost all language queries, preparing reports, graphs and creator package is nonprosedural application.&lt;br /&gt;&lt;br /&gt;- Example: Informix, Nomad&lt;br /&gt;&lt;br /&gt;Characteristics, Properties and Components&lt;br /&gt;&lt;br /&gt;Main criteria in 4GL:&lt;br /&gt;&lt;br /&gt;- Whether intended for routine calculations or making ad-hoc decision?&lt;br /&gt;&lt;br /&gt;- Whether destined for the end user or the DP professional?&lt;br /&gt;&lt;br /&gt;- Whether the need of a skilled programmer or analyst who used it?&lt;br /&gt;&lt;br /&gt;- Which features are provided? (exp. simple queries, preparing reports)&lt;br /&gt;&lt;br /&gt;- Whether on-line or off-line?&lt;br /&gt;&lt;br /&gt;- Whether running for mainframe, mini or pc?&lt;br /&gt;&lt;br /&gt;- Is quite easy to use and fast results obtained?&lt;br /&gt;&lt;br /&gt;4GL Property:&lt;br /&gt;&lt;br /&gt;In order for a language called 'Fourth Generation' must have the following characteristics:&lt;br /&gt;&lt;br /&gt;1. User-friendly.&lt;br /&gt;&lt;br /&gt;2. Non-professional programmer can get the results&lt;br /&gt;&lt;br /&gt;3. Using DBMS directly.&lt;br /&gt;&lt;br /&gt;4. Programs for all applications can be made with a single command fewer instructions.&lt;br /&gt;&lt;br /&gt;5. Arranged for operation on-line.&lt;br /&gt;&lt;br /&gt;6. Facilitate the understanding and treatment of other people code.&lt;br /&gt;&lt;br /&gt;7. Prototype can be created and modified quickly.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;· 4GL Components:&lt;br /&gt;&lt;br /&gt;In 4GL has pemrogramman non procedural components hidden in munkin procedural facilities. As shown in the following figure.&lt;br /&gt;&lt;br /&gt;Appli. Parameters: naming procedures, catalog, version and responsibility.&lt;br /&gt;&lt;br /&gt;Spec Data: specification of data and data files used.&lt;br /&gt;&lt;br /&gt;Screen spec: determining the form of display.&lt;br /&gt;&lt;br /&gt;Report Spec: determining specifications of reports based on data taken.&lt;br /&gt;&lt;br /&gt;Dialogue spec: providing the structure and computer interaction.&lt;br /&gt;&lt;br /&gt;Specification of Rules: the rules for determining the decision. Usually separated from the body of the application.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6390047005201701735-3966860304711419948?l=programstudies.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programstudies.blogspot.com/feeds/3966860304711419948/comments/default' title='Poskan Komentar'/><link rel='replies' type='text/html' href='http://programstudies.blogspot.com/2009/10/fourth-generation-language.html#comment-form' title='0 Komentar'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/3966860304711419948'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/3966860304711419948'/><link rel='alternate' type='text/html' href='http://programstudies.blogspot.com/2009/10/fourth-generation-language.html' title='Fourth Generation Language'/><author><name>It's Gonna Be Me</name><uri>http://www.blogger.com/profile/07321805699767978812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6390047005201701735.post-6866086599712545249</id><published>2009-10-11T22:03:00.000+07:00</published><updated>2009-10-11T22:03:00.290+07:00</updated><title type='text'>Algorithm and Program</title><content type='html'>The algorithm is a series of steps appropriate, detailed, and limited to solve a problem. Appropriate measures means a series of steps is always right to solve the problem given. Step that does not give the correct results for a given problem domain is not an algorithm.&lt;br /&gt;Detailed steps are given meaning that every step in detail and can be executed by the computer, instructions such as "lift a little to the left" is an example of incorrect instructions, because "little" does not state something correctly.&lt;br /&gt;Given step must be limited, meaning that a time step must be stopped, if the measures did not stop (for example: "get some water, put into the bath, repeat fetch water, and so on") then it is not a series of steps called the algorithm (if: " take water, put into the bath, repeat until the water take tub full ", then the algorithm can be called, but the steps get some water, put into the bath, must be itemized and can be executed by a machine).&lt;br /&gt;&lt;br /&gt;Sedangkang Dictionary meaning of the program according to Computer and Information Technology (http://www.total.or.id) can be interpreted as a series of events or commands to be executed by a computer. Then explained further that:&lt;br /&gt;&lt;br /&gt;The program instruction set is a collection that will be executed by the processor, namely the software. How can a thinking computer system regulated by this program. This program that controls all the activities available on the processor. The program contains the logic of construction made by humans, and have been translated into machine language in accordance with the existing format of the instruction set.&lt;br /&gt;&lt;br /&gt;Pengertiang algorithm of the program and understanding it can be concluded that: Programming algorithm are important steps in the right tersetruktur and detailed which is used to solve a problem in the process of designing a computer program, where the presentation of these measures tailored to the processor (software) that use the program designer.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6390047005201701735-6866086599712545249?l=programstudies.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programstudies.blogspot.com/feeds/6866086599712545249/comments/default' title='Poskan Komentar'/><link rel='replies' type='text/html' href='http://programstudies.blogspot.com/2009/10/algorithm-and-program.html#comment-form' title='0 Komentar'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/6866086599712545249'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/6866086599712545249'/><link rel='alternate' type='text/html' href='http://programstudies.blogspot.com/2009/10/algorithm-and-program.html' title='Algorithm and Program'/><author><name>It's Gonna Be Me</name><uri>http://www.blogger.com/profile/07321805699767978812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6390047005201701735.post-3920316871809611310</id><published>2009-10-11T09:34:00.000+07:00</published><updated>2009-10-11T09:35:29.081+07:00</updated><title type='text'>Dynamic programming</title><content type='html'>Abstract&lt;br /&gt;&lt;br /&gt;Dynamic programming is one method of solving a very well known and can be applied in all fields. Dynamic programming can be applied within the scope of sequence alignment. Sequence alignment is the basis of meode sequence analysis, which is used to study the evolution of sequences from the same ancestors (common ancestor). Therefore in this paper will be presented on dynamic programming.&lt;br /&gt;&lt;br /&gt;Keywords: dynamic programming, sequence alignment, global alignment, Nedleman-Wunsch&lt;br /&gt;&lt;br /&gt;1. Introduction&lt;br /&gt;&lt;br /&gt;The term dynamic programming (dynamic programming) of course we've heard in the literature, this term we find a lot of books on computer algorithms, operational research, or books related to applied mathematics. Some people are also familiar with dynamic programming as a method associated with the principle of optimization and can be applied in industry, banking, until the network planning and space travel applications. Application makes extensive discussion of dynamic programming becomes a common topic and interest. To try to find out more about the dynamic programming, in this article will discuss about the basics of dynamic programming theory briefly, also with a brief history of the origin of the term dynamic programming.&lt;br /&gt;&lt;br /&gt;Bioinformatics, as one of a growing multidisciplinary field and many computational methods, would be a fairly open field for such a method of dynamic programming methods, further in this paper applies dynamic programming applications as optimization methods in solving problems, and exemplified the problem of numbers Fibonacci and multistage graph, in the end, as the emphasis in this paper, the dynamic programming application in the field of bioinformatics, particularly in the Needleman-Wunsch algorithm for global sequence alignment.&lt;br /&gt;&lt;br /&gt;2. Dynamic Programming&lt;br /&gt;&lt;br /&gt;Dynamic Programming term, first introduced in the 1950s by Richard Bellman was a professor at Princeton University and also worked at the RAND corporation, please note that the RAND corporation in that era is a company formed to offer research and analysis for the United States armed forces . At that time, Bellman worked in the field of multi-stage decision-making (Desicion multistage process) and doing some mathematical methods, several years later after Bellman at RAND, was born the term dynamic programming. This term is not directly related to programming, but is used as the title of the project which proposed the RAND Corporation in the United States Air Force. Furthermore, the dynamic programming penerapanya widely used in process optimization problems.&lt;br /&gt;&lt;br /&gt;Dynamic programming is an algorithm solving the problem described by a set of solution steps or stages such that the solution of the problem can be viewed from a series of interrelated decisions. On completion of this method we use optimization requirements and constraints to limit the number of options that should be considered at some stage. Dynamic Program algorithm has the following characteristics:&lt;br /&gt;&lt;br /&gt;1. Form the problem can be divided into several stages, which at each stage is taken only one optimal decision.&lt;br /&gt;&lt;br /&gt;2. Each stage consists of a number of status associated with these stages.&lt;br /&gt;&lt;br /&gt;3. The results of the decisions taken at the stage transformed from a status corresponding to the next status at a later stage.&lt;br /&gt;&lt;br /&gt;4. Costs at a stage depends on the cost of the previous stages and increases regularly with increasing number of stages&lt;br /&gt;&lt;br /&gt;5. The best decision at an independent stage of the decision made earlier stage.&lt;br /&gt;&lt;br /&gt;6. The existence of a recursive relationship that identifies the best decision for each state at stage k gives the best decision for the previous stage.&lt;br /&gt;&lt;br /&gt;7. Optimality principle applies to the issue.&lt;br /&gt;&lt;br /&gt;The main characteristics of the Dynamic Program is the principle of optimality, which reads "if the optimal total solution, then the solution to the phase-k is optimal".&lt;br /&gt;&lt;br /&gt;From the characteristics of the 4 points above, we can conclude that the algorithm can be applied to the Dynamic program improvement costs if the linear and discrete so that the partial optimization can be done. In solving problems with dynamic program, we can use 2 different approaches, namely:&lt;br /&gt;&lt;br /&gt;a. Forward (forward or up-down): to move from stage 1, move forward to stage 2.3, .., n. The order of the decision variables are x1, x2, ..., xn&lt;br /&gt;&lt;br /&gt;b. Backward (backward or bottom-up): to move from stage n, and hold back to stage n-1, n-2, .., 2.1. The order is the decision variable xn xn-1, x2, x1. The time complexity of this algorithm is O (| s1 | * | s2 |), if the length of the string is 'n'. Space complexity is also the same if the entire matrix is stored for reverse-engineer to find the optimal alignment. If the value of the edit distance is required, only two rows of the matrix is allocated, the matrix can experience 'recycling', and so the space complexity O (n).&lt;br /&gt;&lt;br /&gt;The Dynamic programming is a strategy to build a multilevel optimal problem, ie problems that can be described as a series of stages daalam (stage) affect each other. Generally, each stage has 4 (four) variables that have an influence, either directly or indirectly to the other phases of the system&lt;br /&gt;&lt;br /&gt;The four variables are as follows:&lt;br /&gt;&lt;br /&gt;1. Input to stage n, Xn, which depends on the decisions made at earlier stages or depending on the origin of the fixed inputs in the system&lt;br /&gt;&lt;br /&gt;2. Set the decision to stage n, Dn which determine the operating conditions or requirements of the stage.&lt;br /&gt;&lt;br /&gt;3. The output from stage n, Xn-1 are used depending on the input to the decision stage n and Dn.&lt;br /&gt;&lt;br /&gt;4. Results from stage n, Rn which is the measure of contribution to stage n the overall system objective function (cost, profit, benefit or other measures). Usually this result is a picture of a stage n and the output at stage n.&lt;br /&gt;&lt;br /&gt;Graphically, the image of a stage can be shown as follows:&lt;br /&gt;&lt;br /&gt;gbr11&lt;br /&gt;&lt;br /&gt;In the dynamic programming are three basic elements namely, the alternative decision variable, the corresponding profit function, and the state (state) in each phase. Variable that provides the optimal solution obtained by tracing the state of stage n to stage 1.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6390047005201701735-3920316871809611310?l=programstudies.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programstudies.blogspot.com/feeds/3920316871809611310/comments/default' title='Poskan Komentar'/><link rel='replies' type='text/html' href='http://programstudies.blogspot.com/2009/10/dynamic-programming.html#comment-form' title='1 Komentar'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/3920316871809611310'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/3920316871809611310'/><link rel='alternate' type='text/html' href='http://programstudies.blogspot.com/2009/10/dynamic-programming.html' title='Dynamic programming'/><author><name>It's Gonna Be Me</name><uri>http://www.blogger.com/profile/07321805699767978812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6390047005201701735.post-4839455514037054470</id><published>2009-10-11T08:22:00.000+07:00</published><updated>2009-10-11T08:22:44.278+07:00</updated><title type='text'>Procedural Programming Paradigm</title><content type='html'>Programming paradigm is how we view the programming problem solving (or point of "attack" us in solving a programming problem). There are many ways to solve a problem, so there are many existing paradigms.&lt;br /&gt;&lt;br /&gt;Some examples of existing programming paradigms are: procedural, functional, declarative, and object. In short we can say that:&lt;br /&gt;&lt;br /&gt;• procedural paradigm at solving problems as a result of a series of steps to solve the sub problem.&lt;br /&gt;&lt;br /&gt;• look at functional paradigm for solving problems of composition and function application that maps the problem to the answer.&lt;br /&gt;&lt;br /&gt;• declarative paradigm of looking at solving problems as a result of the facts and inference rules given.&lt;br /&gt;&lt;br /&gt;• object paradigm at solving problems as a result of classroom interactions that form the object (the object in this concept is the representation of objects in the real world). (John Nugroho, Paradigm Mekadinme Programming and Program Execution).&lt;br /&gt;&lt;br /&gt;Procedural programming paradigm based on the concept of Von Newman machines, a group of storage (memory), which are divided into instruction memory and data memory, each of which can be named and the price. Instructions will be executed one by one sequentially by a single processor. Some instructions determine the next instruction to be executed. Reviewed and modified data sequentially as well. Programs in this paradigm is based on the structuring of information in memory and manipulation of information stored on them. Keywords that are often echoed in this approach are:&lt;br /&gt;&lt;br /&gt;Algorithms + Data Structures = Programs&lt;br /&gt;&lt;br /&gt;Programming with this paradigm is not "Human" and not "natural", because they have to think within the confines of the machine (computer), sometimes even this restriction is more binding than limits Problems own. The advantage of this programming paradigm is the efficiency of execution, because it close to the engine.&lt;br /&gt;&amp;gt; swap&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6390047005201701735-4839455514037054470?l=programstudies.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programstudies.blogspot.com/feeds/4839455514037054470/comments/default' title='Poskan Komentar'/><link rel='replies' type='text/html' href='http://programstudies.blogspot.com/2009/10/procedural-programming-paradigm.html#comment-form' title='0 Komentar'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/4839455514037054470'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/4839455514037054470'/><link rel='alternate' type='text/html' href='http://programstudies.blogspot.com/2009/10/procedural-programming-paradigm.html' title='Procedural Programming Paradigm'/><author><name>It's Gonna Be Me</name><uri>http://www.blogger.com/profile/07321805699767978812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6390047005201701735.post-4234429101572486089</id><published>2009-10-10T20:28:00.001+07:00</published><updated>2009-10-10T20:28:51.672+07:00</updated><title type='text'>Applications for the web master</title><content type='html'>Applications for the web master.&lt;br /&gt;&lt;br /&gt;1. FusionPHP&lt;br /&gt;&lt;br /&gt;php fusion is a free application created with the PHP language. FusionPHP an application used to manage / news management on the site. Using this application you can easily adjust the format of the news and the right log for people who will post news and there are a variety of other uses.&lt;br /&gt; &lt;br /&gt;This application does not require a database, but only use a flat file format. Txt. what we need in its use is only a little knowledge of HTML, how to do FTP, and know how to do the CHMOD of a file or directory. Also this program can only run on linux OS.&lt;br /&gt;&lt;br /&gt;2. Power Banner Manager&lt;br /&gt;&lt;br /&gt;Power Banner Manager is a PHP application used to manage impressions banner on a web page. power manager supports shared banner image formats including banner made with flash applications.&lt;br /&gt;&lt;br /&gt;with this application you can also monitor the number of clicks to the banner that you install, see the The access ip address, set the number of times a banner will be shown, and many other skills you would have encountered.&lt;br /&gt;&lt;br /&gt;to use web server that you use must support PHP and SQL applications.&lt;br /&gt;&lt;br /&gt;3. MX-Login&lt;br /&gt;&lt;br /&gt;MX-Log is a free application based on PHP and MySQL that are used to protect web pages, so that people can access these pages are the people who memiii access rights.&lt;br /&gt;&lt;br /&gt;This application is usually used on sites that require membership status.&lt;br /&gt;&lt;br /&gt;4. Olate Download&lt;br /&gt;&lt;br /&gt;Olate Download an application based on PHP and MySQL that can be used on the site, so the site has a download area that is structured.&lt;br /&gt;&lt;br /&gt;View this application looks very professional and like displays as can be found on the site hotscripts.com. The access can provide value to the downloaded file and also can see how many times and how popular the file.&lt;br /&gt;&lt;br /&gt;5. Abclick&lt;br /&gt;&lt;br /&gt;as a web master, you may have wondered how often your site is visited by someone else. Abcklick application will answer your question it.&lt;br /&gt;&lt;br /&gt;with this application you can easily monitor the number of clicks made on a link on your website. to use this application, you need a web server that supports PHP and MySQL.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6390047005201701735-4234429101572486089?l=programstudies.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programstudies.blogspot.com/feeds/4234429101572486089/comments/default' title='Poskan Komentar'/><link rel='replies' type='text/html' href='http://programstudies.blogspot.com/2009/10/applications-for-web-master.html#comment-form' title='1 Komentar'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/4234429101572486089'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/4234429101572486089'/><link rel='alternate' type='text/html' href='http://programstudies.blogspot.com/2009/10/applications-for-web-master.html' title='Applications for the web master'/><author><name>It's Gonna Be Me</name><uri>http://www.blogger.com/profile/07321805699767978812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6390047005201701735.post-6614961220874082860</id><published>2009-10-10T18:36:00.000+07:00</published><updated>2009-10-11T08:10:18.490+07:00</updated><title type='text'>Most Populer Programming Language</title><content type='html'>Debate over the most popular programming language can become an emotional, almost religious battle.  And sometimes there’s no debate at all, such as when a developer is assigned to repair legacy software.  “It was written in COBOL?” is a popular refrain.&lt;br /&gt;&lt;br /&gt;A programming language is just one tool in a developer’s expansive collection of specialty software and hardware.  So does it really matter which programming language a developer uses, as long as he or she is meeting customer requirements on time and within budget?&lt;br /&gt;&lt;br /&gt;Yes, yes it does.  Ford or Chevy.  Stihl or Husky.  Coke or Pepsi.  Let’s face it, we all get passionate about our tools.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Most Popular?&lt;br /&gt;&lt;br /&gt;There are a number of ways to measure the popularity of a programming language, for example, based on the number of:&lt;br /&gt;&lt;br /&gt;* New applications written in the language&lt;br /&gt;* Existing applications written in the language&lt;br /&gt;* Developers that use the language primarily&lt;br /&gt;* Developers that use the language ever&lt;br /&gt;* Web searches&lt;br /&gt;* Available jobs that require skills in the language&lt;br /&gt;* Developers’ favorites&lt;br /&gt;&lt;br /&gt;The following surveys attempt to rank which programming languages are most popular, each using a different measure:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Tiobe.com&lt;br /&gt;&lt;br /&gt;Tiobe is a popular site for ranking programming languages.  Tiobe bases its rankings on world-wide availability of skilled engineers, courses and third party vendors.  Rankings are not about the best programming language or the language in which most lines of code have been written.  Tiobe uses Google, MSN and Yahoo! search engines to measure the Web “chatter” and hence the popularity of each programming language.  The Tiobe top 11 for May 2007 are:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;1. Java – 19.1%&lt;br /&gt;2. C – 15.2%&lt;br /&gt;3. C++ – 10.1%&lt;br /&gt;4. PHP – 8.7%&lt;br /&gt;5. Visual Basic – 8.4%&lt;br /&gt;6. Perl – 6.2%&lt;br /&gt;7. Python – 3.8%&lt;br /&gt;8. C# – 3.7%&lt;br /&gt;9. JavaScript – 3.1%&lt;br /&gt;10. Ruby – 2.6%&lt;br /&gt;11. Delphi – 2.1%&lt;br /&gt;&lt;br /&gt;Dice.com&lt;br /&gt;&lt;br /&gt;A September 2006 eWeek article ranks programming languages based on nationwide queries on Dice.com, a job site for technology professionals.  Following are percentage of jobs listed on Dice.com that require skills in each programming language:&lt;br /&gt;&lt;br /&gt;1. Java – 35.7%&lt;br /&gt;2. C, C++ – 15.3%&lt;br /&gt;3. C# – 12.7%&lt;br /&gt;4. Perl – 11.9%&lt;br /&gt;5. JavaScript – 10.9%&lt;br /&gt;6. Visual Basic .NET – 5.2%&lt;br /&gt;7. PHP – 2.9%&lt;br /&gt;8. Ajax – 2.7%&lt;br /&gt;9. Python – 2.0%&lt;br /&gt;10. Ruby – 0.7%&lt;br /&gt;&lt;br /&gt;Evans Data&lt;br /&gt;&lt;br /&gt;Evans Data Corporation conducted a Winter 2006 developer survey that ranks programming languages based on how many developers use that language at least some of the time:&lt;br /&gt;&lt;br /&gt;1. Java – 45%&lt;br /&gt;2. C, C++ – 40%&lt;br /&gt;3. C# – 32%&lt;br /&gt;4. Ajax – 28%&lt;br /&gt;5. Visual Basic &amp; VB.NET – 21%&lt;br /&gt;&lt;br /&gt;Computerworld&lt;br /&gt;&lt;br /&gt;In early 2005, Computerworld conducted a developer survey that measured which programming languages are in use by the developer’s company:&lt;br /&gt;&lt;br /&gt;1. C# – 72%&lt;br /&gt;2. Java – 66%&lt;br /&gt;3. Visual Basic – 62%&lt;br /&gt;4. C++ – 54%&lt;br /&gt;5. JavaScript – 50%&lt;br /&gt;6. Unix Shell Scripts – 42%&lt;br /&gt;7. Perl – 34%&lt;br /&gt;8. C – 32%&lt;br /&gt;9. PHP – 16%&lt;br /&gt;10. Python – 8%&lt;br /&gt;11. Delphi – 7%&lt;br /&gt;12. TCL – 6%&lt;br /&gt;13. Ruby – 1%&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6390047005201701735-6614961220874082860?l=programstudies.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programstudies.blogspot.com/feeds/6614961220874082860/comments/default' title='Poskan Komentar'/><link rel='replies' type='text/html' href='http://programstudies.blogspot.com/2009/10/most-populer-programming-language.html#comment-form' title='0 Komentar'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/6614961220874082860'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/6614961220874082860'/><link rel='alternate' type='text/html' href='http://programstudies.blogspot.com/2009/10/most-populer-programming-language.html' title='Most Populer Programming Language'/><author><name>It's Gonna Be Me</name><uri>http://www.blogger.com/profile/07321805699767978812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6390047005201701735.post-9109245772489780823</id><published>2009-10-10T05:02:00.000+07:00</published><updated>2009-10-10T05:22:05.304+07:00</updated><title type='text'>Understanding MySQL</title><content type='html'>MySQL, pronounced "my Ess Que El," is an open source, Enterprise-level, multi-threaded, relational database management system. That sounds like a lot of sales or marketing hype, but it truly defines MySQL. You may not be familiar with some of these terms but, by the end of today, you will be. MySQL was developed by a consulting firm in Sweden called TcX. They were in need of a database system that was extremely fast and flexible. Unfortunately (or fortunately, depending on your point of view), they could not find anything on the market that could do what they wanted. So, they created MySQL, which is loosely based on another database management system called mSQL. The product they created is fast, reliable, and extremely flexible. It is used in many places throughout the world. Universities, Internet service providers and nonprofit organizations are the main users of MySQL, mainly because of its price (it is mostly free). Lately, however, it has begun to permeate the business world as a reliable and fast database system. Some examples of commercial use are available on the CD-ROM that accompanies this book.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;The reason for the growth of MySQL's popularity is the advent of the Open Source Movement in the computer industry. The Open Source Movement, in case you haven't heard about it, is the result of several computer software vendors providing not only a product but the source code as well. This allows consumers to see how their program operates and modify it where they see fit. This, and the popularity of Linux, has given rise the use of open source products in the business world. Because of Linux's skyrocketing popularity, users are looking for products that will run on this platform. MySQL is one of those products.&lt;br /&gt;&lt;br /&gt;MySQL is often confused with SQL, the structured query language developed by IBM. It is not a form of this language but a database system that uses SQL to manipulate, create, and show data. MySQL is a program that manages databases, much like Microsoft's Excel manages spreadsheets. SQL is a programming language that is used by MySQL to accomplish tasks within a database, just as Excel uses VBA (Visual Basic for Applications) to handle tasks with spreadsheets and workbooks. Other programs that manage databases include Microsoft's SQL Server, Sybase Adaptive Server, and DB2. Now that you know where MySQL came from, look at what it is. To begin with, start with the term database. What is a database? You have probably used one in your lifetime. If you've ever bought anything over the Internet or have a driver's license, you can be assured that you have used one. A database is a series of structured files on a computer that are organized in a highly efficient manner. These files can store tons of information that can be manipulated and called on when needed. A database is organized in the following hierarchical manner, from the top down. You start with a database that contains a number of tables. Each table is made up of a series of columns. Data is stored in rows, and the place where each row intersects a column is known as a field. Figure 1.1 depicts this breakdown. For example, at your favorite online book store there is a database. This database is made up of many tables. Each table contains specific, common data. You would probably see an Authors table or a Books table. These tables are made up of named columns that tell what data is contained in them. When a record is inserted into a table, a row of data has been created. Where a row and a column intersect, a field is created. This how databases are broken down&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6390047005201701735-9109245772489780823?l=programstudies.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programstudies.blogspot.com/feeds/9109245772489780823/comments/default' title='Poskan Komentar'/><link rel='replies' type='text/html' href='http://programstudies.blogspot.com/2009/10/understanding-mysql.html#comment-form' title='1 Komentar'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/9109245772489780823'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/9109245772489780823'/><link rel='alternate' type='text/html' href='http://programstudies.blogspot.com/2009/10/understanding-mysql.html' title='Understanding MySQL'/><author><name>It's Gonna Be Me</name><uri>http://www.blogger.com/profile/07321805699767978812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6390047005201701735.post-4513891073553380817</id><published>2009-10-10T04:51:00.000+07:00</published><updated>2009-10-10T05:02:31.127+07:00</updated><title type='text'>ABOUT RUBY</title><content type='html'>Wondering why Ruby is so popular? Its fans call it a beautiful, artful language. And yet, they say it’s handy and practical. What gives?&lt;br /&gt;The Ideals of Ruby’s Creator&lt;br /&gt;&lt;br /&gt;Ruby is a language of careful balance. Its creator, Yukihiro “matz” Matsumoto, blended parts of his favorite languages (Perl, Smalltalk, Eiffel, Ada, and Lisp) to form a new language that balanced functional programming with imperative programming.&lt;br /&gt;&lt;br /&gt;He has often said that he is “trying to make Ruby natural, not simple,” in a way that mirrors life.&lt;br /&gt;&lt;br /&gt;Building on this, he adds:&lt;br /&gt;&lt;br /&gt;    Ruby is simple in appearance, but is very complex inside, just like our human body1.&lt;br /&gt;&lt;br /&gt;About Ruby’s Growth&lt;br /&gt;&lt;br /&gt;Since its public release in 1995, Ruby has drawn devoted coders worldwide. In 2006, Ruby achieved mass acceptance. With active user groups formed in the world’s major cities and Ruby-related conferences filled to capacity.&lt;br /&gt;&lt;br /&gt;Graph courtesy of Gmane.&lt;br /&gt;&lt;br /&gt;Ruby-Talk, the primary mailing list for discussion of the Ruby language has climbed to an average of 200 messages per day.&lt;br /&gt;&lt;br /&gt;The TIOBE index, which measures the growth of programming languages, ranks Ruby as #9 among programming languages worldwide. Much of the growth is attributed to the popularity of software written in Ruby, particularly the Ruby on Rails web framework2.&lt;br /&gt;&lt;br /&gt;Ruby is also totally free. Not only free of charge, but also free to use, copy, modify, and distribute.&lt;br /&gt;Seeing Everything as an Object&lt;br /&gt;&lt;br /&gt;Initially, Matz looked at other languages to find an ideal syntax. Recalling his search, he said, “I wanted a scripting language that was more powerful than Perl, and more object-oriented than Python3.”&lt;br /&gt;&lt;br /&gt;In Ruby, everything is an object. Every bit of information and code can be given their own properties and actions. Object-oriented programming calls properties by the name instance variables and actions are known as methods. Ruby’s pure object-oriented approach is most commonly demonstrated by a bit of code which applies an action to a number.&lt;br /&gt;&lt;br /&gt;5.times { print "We *love* Ruby -- it's outrageous!" }&lt;br /&gt;&lt;br /&gt;In many languages, numbers and other primitive types are not objects. Ruby follows the influence of the Smalltalk language by giving methods and instance variables to all of its types. This eases one’s use of Ruby, since rules applying to objects apply to all of Ruby.&lt;br /&gt;Ruby’s Flexibility&lt;br /&gt;&lt;br /&gt;Ruby is seen as a flexible language, since it allows its users to freely alter its parts. Essential parts of Ruby can be removed or redefined, at will. Existing parts can be added upon. Ruby tries not to restrict the coder.&lt;br /&gt;&lt;br /&gt;For example, addition is performed with the plus (+) operator. But, if you’d rather use the readable word plus, you could add such a method to Ruby’s builtin Numeric class.&lt;br /&gt;&lt;br /&gt;class Numeric&lt;br /&gt;  def plus(x)&lt;br /&gt;    self.+(x)&lt;br /&gt;  end&lt;br /&gt;end&lt;br /&gt;&lt;br /&gt;y = 5.plus 6&lt;br /&gt;# y is now equal to 11&lt;br /&gt;&lt;br /&gt;Ruby’s operators are syntactic sugar for methods. You can redefine them as well.&lt;br /&gt;Blocks, a Truly Expressive Feature&lt;br /&gt;&lt;br /&gt;Ruby’s block are also seen as a source of great flexibility. A programmer can attach a closure to any method, describing how that method should act. The closure is called a block and has become one of the most popular features for newcomers to Ruby from other imperative languages like PHP or Visual Basic.&lt;br /&gt;&lt;br /&gt;Blocks are inspired by functional languages. Matz said, “in Ruby closures, I wanted to respect the Lisp culture4.”&lt;br /&gt;&lt;br /&gt;search_engines = &lt;br /&gt;  %w[Google Yahoo MSN].map do |engine|&lt;br /&gt;    "http://www." + engine.downcase + ".com"&lt;br /&gt;  end&lt;br /&gt;&lt;br /&gt;In the above code, the block is described inside the do ... end construct. The map method applies the block to the provided list of words. Many other methods in Ruby leave a hole open for a coder to write their own block to fill in the details of what that method should do.&lt;br /&gt;Ruby and the Mixin&lt;br /&gt;&lt;br /&gt;Unlike many object-oriented languages, Ruby features single inheritance only, on purpose. But Ruby knows the concept of modules (called Categories in Objective-C). Modules are collections of methods.&lt;br /&gt;&lt;br /&gt;Classes can mixin a module and receive all its methods for free. For example, any class which implements the each method can mixin the Enumerable module, which adds a pile of methods that use each for looping.&lt;br /&gt;&lt;br /&gt;class MyArray&lt;br /&gt;  include Enumerable&lt;br /&gt;end&lt;br /&gt;&lt;br /&gt;Generally, Rubyists see this as a much clearer way than multiple inheritance, which is complex and can be too restrictive.&lt;br /&gt;Ruby’s Visual Appearance&lt;br /&gt;&lt;br /&gt;While Ruby often uses very limited punctuation and usually prefers English keywords, some punctuation is used to decorate Ruby. Ruby needs no variable declarations. It uses simple naming conventions to denote the scope of variables.&lt;br /&gt;&lt;br /&gt;    * var could be a local variable.&lt;br /&gt;    * @var is an instance variable.&lt;br /&gt;    * $var is a global variable.&lt;br /&gt;&lt;br /&gt;These sigils enhance readability by allowing the programmer to easily identify the roles of each variable. It also becomes unnecessary to use a tiresome self. prepended to every instance member.&lt;br /&gt;Beyond the Basics&lt;br /&gt;&lt;br /&gt;Ruby has a wealth of other features, among which are the following:&lt;br /&gt;&lt;br /&gt;    * Ruby has exception handling features, like Java or Python, to make it easy to handle errors.&lt;br /&gt;&lt;br /&gt;    * Ruby features a true mark-and-sweep garbage collector for all Ruby objects. No need to maintain reference counts in extension libraries. As Matz says, “This is better for your health.”&lt;br /&gt;&lt;br /&gt;    * Writing C extensions in Ruby is easier than in Perl or Python, with a very elegant API for calling Ruby from C. This includes calls for embedding Ruby in software, for use as a scripting language. A SWIG interface is also available.&lt;br /&gt;&lt;br /&gt;    * Ruby can load extension libraries dynamically if an OS allows.&lt;br /&gt;&lt;br /&gt;    * Ruby features OS independent threading. Thus, for all platforms on which Ruby runs, you also have multithreading, regardless of if the OS supports it or not, even on MS-DOS!&lt;br /&gt;&lt;br /&gt;    * Ruby is highly portable: it is developed mostly on GNU/Linux, but works on many types of UNIX, Mac OS X, Windows 95/98/Me/NT/2000/XP, DOS, BeOS, OS/2, etc.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6390047005201701735-4513891073553380817?l=programstudies.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programstudies.blogspot.com/feeds/4513891073553380817/comments/default' title='Poskan Komentar'/><link rel='replies' type='text/html' href='http://programstudies.blogspot.com/2009/10/about-ruby.html#comment-form' title='0 Komentar'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/4513891073553380817'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/4513891073553380817'/><link rel='alternate' type='text/html' href='http://programstudies.blogspot.com/2009/10/about-ruby.html' title='ABOUT RUBY'/><author><name>It's Gonna Be Me</name><uri>http://www.blogger.com/profile/07321805699767978812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6390047005201701735.post-4180310884268327651</id><published>2009-10-09T21:37:00.000+07:00</published><updated>2009-10-11T08:00:07.067+07:00</updated><title type='text'>SMALL TALK  PROGRAM</title><content type='html'>History&lt;br /&gt;&lt;br /&gt;The Learning Research Group at Xerox PARC designed a language to support Alan Kay's programming paradigm. This led to the Smalltalk-72 software. After experiments were performed on Smalltalk-72, a sequence of languages ending in Smalltalk-80 were developed   .&lt;br /&gt;Significant Language Features&lt;br /&gt;&lt;br /&gt;    * Object-Oriented - Smalltalk is a language in which reusable objects exchange messages.&lt;br /&gt;    * Graphical Programming Environment - First look at cut/copy/paste in programming language for most people.&lt;br /&gt;    * Versatile - Has many applications and uses.&lt;br /&gt;    * Graphic primitives and drawing programs - Supports quickly and easily created graphics.&lt;br /&gt;&lt;br /&gt;Areas of Application&lt;br /&gt;&lt;br /&gt;The demand for Smalltalk programmers is growing in areas where the telecommunications industry is strong.&lt;br /&gt;&lt;br /&gt;    * Business Information System&lt;br /&gt;          o Chosen because of Technical merit and flexibility&lt;br /&gt;          o Well suited for large projects&lt;br /&gt;    * Embedded in an oscilloscope&lt;br /&gt;    * Manages the telephone system of an entire country&lt;br /&gt;    * Batch programs for large mainframes&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6390047005201701735-4180310884268327651?l=programstudies.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programstudies.blogspot.com/feeds/4180310884268327651/comments/default' title='Poskan Komentar'/><link rel='replies' type='text/html' href='http://programstudies.blogspot.com/2009/10/smalltalk-program.html#comment-form' title='0 Komentar'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/4180310884268327651'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/4180310884268327651'/><link rel='alternate' type='text/html' href='http://programstudies.blogspot.com/2009/10/smalltalk-program.html' title='SMALL TALK  PROGRAM'/><author><name>It's Gonna Be Me</name><uri>http://www.blogger.com/profile/07321805699767978812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6390047005201701735.post-5317834941291564680</id><published>2009-10-09T04:50:00.000+07:00</published><updated>2009-10-10T19:21:12.290+07:00</updated><title type='text'>A SIMPLE Pascal Program</title><content type='html'>A SIMPLE Pascal Program&lt;br /&gt;Write a program to print the words 'Hello. How are you?' on the console screen.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt; program MYFIRST (output);&lt;br /&gt; begin&lt;br /&gt;    writeln('Hello. How are you?')&lt;br /&gt; end.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;The keyword writeln writes text to the console screen. The text to be displayed is written inside single quotes. After printing the text inside the single quotes, the cursor is positioned to the beginning of the next line.&lt;br /&gt;&lt;br /&gt;To print a single quote as part of the text, then use two quotes, eg,&lt;br /&gt;&lt;br /&gt;&lt;br /&gt; program TWOQUOTES (output);&lt;br /&gt; begin&lt;br /&gt;    writeln('Hello there. I''m fine.')&lt;br /&gt; end.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt; program output is;&lt;br /&gt; Hello there. I'm fine.&lt;br /&gt; _&lt;br /&gt;&lt;br /&gt;Note the underscore character represents the position of the cursor&lt;br /&gt;&lt;br /&gt;write versus writeln&lt;br /&gt;The write statement leaves the cursor at the end of the current ouput, rather than going to a new line. By replacing the above program with a write statement, the result is,&lt;br /&gt;&lt;br /&gt;&lt;br /&gt; program TWOQUOTES (output);&lt;br /&gt; begin&lt;br /&gt;    write('Hello there. I''m fine.')&lt;br /&gt; end.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt; program output is;&lt;br /&gt; Hello there. I'm fine._&lt;br /&gt;&lt;br /&gt;Note the underscore character represents the position of the cursor&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6390047005201701735-5317834941291564680?l=programstudies.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programstudies.blogspot.com/feeds/5317834941291564680/comments/default' title='Poskan Komentar'/><link rel='replies' type='text/html' href='http://programstudies.blogspot.com/2009/10/simple-pascal-program.html#comment-form' title='0 Komentar'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/5317834941291564680'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/5317834941291564680'/><link rel='alternate' type='text/html' href='http://programstudies.blogspot.com/2009/10/simple-pascal-program.html' title='A SIMPLE Pascal Program'/><author><name>It's Gonna Be Me</name><uri>http://www.blogger.com/profile/07321805699767978812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6390047005201701735.post-6856138899711533351</id><published>2009-10-09T04:49:00.000+07:00</published><updated>2009-10-10T19:21:12.290+07:00</updated><title type='text'>Introducing About Pascal</title><content type='html'>IF YOU KNOW NOTHING ABOUT PASCAL&lt;br /&gt;&lt;br /&gt;Assuming that you know nothing at all about Pascal, and in fact, that you may know nothing about programming in general, we will begin to study Pascal. If you are already somewhat familiar with programming and especially Pascal, you will probably want to skip very quickly through the first few chapters. You should at least skim these chapters, and you should read the remainder of this introduction.&lt;br /&gt;&lt;br /&gt;A few comments are in order to get us started in the right direction. The sample programs included with this tutorial are designed to teach you the basics of Pascal and they do not include any clever or tricky code. Nearly all of the programs are really quite dumb as far as being useful programs, but all will teach one or more principles of Pascal. I have seen one tutorial that included a 12 page program as the first example. In fact there were only 2 example programs in the entire tutorial, and it was impossible to glean the essentials of programming from that system. For this reason, I will completely bypass any long programs until the very end of this tutorial. In order to illustrate fundamental concepts used in Pascal programming, all programs will be very short and concise until we reach the last chapter.&lt;br /&gt;&lt;br /&gt;LARGER PASCAL PROGRAMS&lt;br /&gt;&lt;br /&gt;Chapter 16 has some rather large programs to illustrate to you how to write a large program. It would be a disservice to you to show you all of the constructs of Pascal and not show you how to put them together in a meaningful way to build a large program. After completing all of the fundamentals of Pascal, it will then be very easy for you to use the tools learned to build as large a program as you desire or require for your next programming project.&lt;br /&gt;&lt;br /&gt;Another problem I have noticed in example programs is the use of one word for all definitions. For example, a sort program is stored in a file called SORT, the program is named Sort, and various parts of the program are referred to as Sort1, Sort2, etc. This can be confusing since you have no idea if the program name must be the same as the filename, or if any of the other names were chosen to be the same because of some obscure rule not clearly documented. For this reason, the example programs use completely arbitrary names whenever the choice of a name adds nothing to the readability or clarity of a program. As an illustration of this, the first program is named Puppy_Dog. This adds nothing to the understanding of the program but does illustrate that the program name means nothing to the Pascal compiler concerning what the program does.&lt;br /&gt;&lt;br /&gt;Due to the fundamental design of the Pascal language, certain words are "reserved" and can only be used for their defined purposes. These are listed in your TURBO Pascal reference manual. All of the sample programs in this tutorial are written with the reserved words in all lower-case letters, and the user variables in lower case with the first letter capitalized since this is becoming an accepted industry standard. Don't worry about what reserved words are yet, they will be completely defined later.&lt;br /&gt;&lt;br /&gt;In this tutorial, all reserved words, type names, variable names, and procedure and function names will be listed in boldface type within the text as an aid to the student.&lt;br /&gt;&lt;br /&gt;WHAT IS A COMPILER?&lt;br /&gt;&lt;br /&gt;There are two methods used to run any computer program that is written in a readable form of English. The first method is to use an interpreter. An interpreter is a program that looks at each line of the "English" program, decides what the "English" on that line means, and does what it says to do. If one of the lines is executed repeatedly, it must be scanned and analyzed each time, greatly slowing down the solution of the problem at hand. A compiler, on the other hand, is a program that looks at each "English" statement one time and converts it into a code that the computer understands directly. When the compiled program is actually run, the computer does not have to figure out what each statement means, it is already in a form that the computer can run directly, resulting in much faster execution of the program.&lt;br /&gt;&lt;br /&gt;This tutorial is written especially for Borland International's TURBO Pascal compilers version 5.0 through 7.0. These are very high quality compilers that can do nearly anything you will ask them to do since they are so flexible. The original intent of this tutorial was to write it in such a way that it would be completely generic and usable with any good Pascal compiler. The programmers at Borland included a great many nonstandard aids for the Pascal language and resulted in a very good product that has dominated the market for microcomputers. To completely omit all of the extensions would do those of you with the Borland compiler a real disservice, and to include the extensions would not allow other compilers to be used effectively with this tutorial.&lt;br /&gt;&lt;br /&gt;The decision was made to use the Borland extensions which may make the tutorial difficult to use with other compilers. If you have a need to use Pascal with some other compiler, TURBO Pascal is so inexpensive that it would be a wise decision to purchase a copy solely for the purpose of learning the Pascal programming language, then moving to the other compiler on a minicomputer or a mainframe using the accumulated knowledge to very quickly learn the extensions provided by that particular compiler. At any rate, this tutorial will not teach you everything you will ever need to know about Pascal. It will, however, teach you the fundamentals and the advanced features of Pascal, but of even more importance is the knowledge of Pascal terminology needed to progress on your own into more advanced topics of Pascal and programming in general. You will find that experience will be your best teacher.&lt;br /&gt;&lt;br /&gt;WHICH VERSION OF TURBO PASCAL?&lt;br /&gt;&lt;br /&gt;Some of the example programs will not work with some of the earlier versions of TURBO Pascal. This is primarily due to the fact that object oriented programming capabilities were added to version 5.5, and improved on in later versions. Most of the example programs will work with any version however. It should be pointed out that each successive version of TURBO Pascal has been an improvement over the previous version since additional capabilities have been added, and each new one compiles a little faster and results in smaller but faster executable code than the previous version. Any of the versions of TURBO Pascal can be used to learn to program in Pascal, so whichever version you have on hand will be adequate. Later, when you become more versed in programming techniques, you may wish to upgrade to the absolute latest version.&lt;br /&gt;&lt;br /&gt;EARLY VERSIONS OF TURBO PASCAL&lt;br /&gt;&lt;br /&gt;Most of the files will compile properly with TURBO Pascal versions 2.0 through 4.0. No warning will be given about which files will not compile with these versions since they have been superseded for so long. If you are still using one of the earlier versions, it would be good for you to purchase a newer version because of the flexibility.&lt;br /&gt;&lt;br /&gt;WHAT ABOUT TURBO PASCAL VERSION 5.5 &amp; NEWER?&lt;br /&gt;&lt;br /&gt;Chapters 14 and 15 of this tutorial are written especially for TURBO Pascal version 5.5 and newer to discuss the use of object oriented programming and how to use the Borland extensions. Since the topic of object oriented programming is a very large and diverse field of study and only a limited space is available to discuss it in this tutorial, these chapters will give you only a brief overview of what it is and how to use it. You will find 13 complete example programs to get you started in this new and very meaningful endeavor and this introduction should whet your appetite to continue your study in more depth.&lt;br /&gt;&lt;br /&gt;If you are using an early version of TURBO Pascal without the object oriented extensions, it would pay you to upgrade so you can learn how to use this new programming method. Object oriented programming has the potential to greatly improve the quality of your code and to reduce the debugging time required.&lt;br /&gt;&lt;br /&gt;PREPARATION FOR USE OF THIS TUTORIAL.&lt;br /&gt;&lt;br /&gt;Copy the example files into your TURBO Pascal working directory and you are ready to begin, provided of course that you have already learned how to start the TURBO system and how to edit a Pascal file.&lt;br /&gt;&lt;br /&gt;If you are not using TURBO Pascal, you will still be able to compile and execute many of these Pascal files, since most of the examples use standard Pascal syntax. There will be some statements used which are unique to TURBO Pascal and will not work with your compiler. This will be especially true when you come to the chapter on standard input and output since this is where most compilers differ. Unfortunately, this is one of the most important aspects of any programming language, since it is required to get data into and out of the computer to do anything useful. You will also find that chapter 13, covering the topic of units, is unique to TURBO Pascal and will not work with any Pascal compilers other than TURBO Pascal.&lt;br /&gt;&lt;br /&gt;WHAT ABOUT THE PROGRAMMING EXERCISES?&lt;br /&gt;&lt;br /&gt;It is highly suggested that you do the programming exercises after you complete the study for each chapter. They are carefully selected to test your understanding of the material covered in that chapter. If you do not write, enter, debug, and run these programs, you will only be proficient at reading Pascal. If you do the exercises completely, you will have a good start at being a Pascal program writer.&lt;br /&gt;&lt;br /&gt;It should also be mentioned that this tutorial will not teach you everything you will ever need to know about Pascal. You will continue to learn new techniques as long as you continue to write programs. Experience is the best teacher here just as it is in any endeavor. This tutorial will teach you enough about Pascal that you should feel very comfortable as you search through the reference manual for some topic. You will also be able to read and understand any Pascal program you find in textbooks or magazines. Although the primary goal of this tutorial is to teach you the syntax and use of Pascal, the most important byproduct is the knowledge of Pascal terminology you will gain. This terminology will enable you to learn even more about Pascal and programming in general.&lt;br /&gt;&lt;br /&gt;THE ANSWERS TO PROGRAMMING EXERCISES&lt;br /&gt;&lt;br /&gt;The file pasans.zip contains an answer to each of the programming exercises given at the end of the chapters. You should attempt to do original work on each of the exercises before referring to these answers, in order to gain your own programming experience. These answers are given for your information in case you are completely stuck on how to solve a particular problem. These answers are not meant to be the only answer, since there are many ways to program anything, but they are meant to illustrate one way to solve the suggested programming problem.&lt;br /&gt;&lt;br /&gt;The answers are all in compilable files named in the format CHnn_m.PAS where nn is the chapter number, and m is the exercise number. If there is more than one answer required, an A, B, or C is included following the exercise number.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6390047005201701735-6856138899711533351?l=programstudies.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programstudies.blogspot.com/feeds/6856138899711533351/comments/default' title='Poskan Komentar'/><link rel='replies' type='text/html' href='http://programstudies.blogspot.com/2009/10/introducing-about-pascal.html#comment-form' title='0 Komentar'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/6856138899711533351'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/6856138899711533351'/><link rel='alternate' type='text/html' href='http://programstudies.blogspot.com/2009/10/introducing-about-pascal.html' title='Introducing About Pascal'/><author><name>It's Gonna Be Me</name><uri>http://www.blogger.com/profile/07321805699767978812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6390047005201701735.post-8404365029118182559</id><published>2009-10-08T11:47:00.000+07:00</published><updated>2009-10-10T19:21:12.290+07:00</updated><title type='text'>Contrived Example</title><content type='html'>Assume we have a list of n items:&lt;br /&gt;&lt;br /&gt;The a's are ordered by frequency of access&lt;br /&gt;&lt;br /&gt;Probability of accessing item : P( ) =&lt;br /&gt;&lt;br /&gt;Probability of looking for an item not in the list is&lt;br /&gt;&lt;br /&gt;Average cost&lt;br /&gt;&lt;br /&gt;U = set of all possible events&lt;br /&gt;P(e) = probability of event e&lt;br /&gt;C(e) = cost of event e&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;We have:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;What is ?&lt;br /&gt;&lt;br /&gt;We have:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;So&lt;br /&gt;&lt;br /&gt;Thus Ave Cost =&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6390047005201701735-8404365029118182559?l=programstudies.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programstudies.blogspot.com/feeds/8404365029118182559/comments/default' title='Poskan Komentar'/><link rel='replies' type='text/html' href='http://programstudies.blogspot.com/2009/10/contrived-example.html#comment-form' title='0 Komentar'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/8404365029118182559'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/8404365029118182559'/><link rel='alternate' type='text/html' href='http://programstudies.blogspot.com/2009/10/contrived-example.html' title='Contrived Example'/><author><name>It's Gonna Be Me</name><uri>http://www.blogger.com/profile/07321805699767978812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6390047005201701735.post-363934318158781207</id><published>2009-10-07T21:02:00.000+07:00</published><updated>2009-10-10T19:21:12.290+07:00</updated><title type='text'>Books on ACE</title><content type='html'>This page describes the three books that have been published on ACE written by Douglas C. Schmidt, Steve Huston, Umar Syyid, and James Johnson. A novel aspect of ACE is its use of patterns to integrate&lt;br /&gt;&lt;br /&gt;    * C++ language features, e.g., classes, parameterized types, inheritance, and dynamic binding;&lt;br /&gt;    * Advanced OS mechanisms, e.g., dynamic linking, multi-threading, and event demultiplexing; and&lt;br /&gt;    * Efficient low-level IPC mechanisms, e.g., Sockets, TLI, SSL, and shared memory. &lt;br /&gt;&lt;br /&gt;into a powerful OO toolkit that simplifies the development of concurrent networked applications.&lt;br /&gt;&lt;br /&gt;C++ Network Programming (C++NP)&lt;br /&gt;The C++NP books are published by Addison-Wesley in the Bjarne Stroustrup "In-depth C++ Series". These books explain how the ACE toolkit can be used to simplify the development of concurrrent and networked object-oriented software. The two books in the C++NP series thus far are:&lt;br /&gt;&lt;br /&gt;   1. C++ Network Programming: Mastering Complexity Using ACE and Patterns&lt;br /&gt;&lt;br /&gt;      C++NPv1 describes how middleware and the ACE toolkit help address key challenges associated with developing networked applications. We review the core native OS mechanisms available on popular OS platforms and illustrate how C++ and patterns are applied in ACE to encapsulate these mechanisms in class library wrapper facades that improve application portability and robustness. The book's primary application example is a networked logging service that transfers log records from client applications to a logging server.&lt;br /&gt;&lt;br /&gt;      C++NPv1 was published in mid-December, 2001. The Table of Contents is available online.&lt;br /&gt;&lt;br /&gt;   2. C++ Network Programming: Systematic Reuse with ACE and Frameworks&lt;br /&gt;&lt;br /&gt;      C++NPv2 describes a family of object-oriented network programming frameworks provided by the ACE toolkit. These frameworks help reduce the cost and improve the quality of networked applications by reifying proven software designs and implementations. ACE's framework-based approach expands reuse technology far beyond what can be achieved by reusing individual classes or even class libraries. We describe the design of these frameworks, show how they can be applied to real networked applications, and summarize the design rules that underly the effective use of these frameworks.&lt;br /&gt;&lt;br /&gt;      C++NPv2 was published in early November, 2002. &lt;br /&gt;&lt;br /&gt;ACE Programmer's Guide (APG)&lt;br /&gt;The ACE Programmer's Guide (APG) is a practical, hands-on guide to ACE for C++ programmers building networked applications and next-generation middleware. The book first introduces ACE to beginners. It then explains how you can tap design patterns, frameworks, and ACE to produce effective, easily maintained software systems with less time and effort. The book features discussions of programming aids, interprocess communication (IPC) issues, process and thread management, shared memory, the ACE Service Configurator framework, timer management classes, the ACE Naming Service, and more.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6390047005201701735-363934318158781207?l=programstudies.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programstudies.blogspot.com/feeds/363934318158781207/comments/default' title='Poskan Komentar'/><link rel='replies' type='text/html' href='http://programstudies.blogspot.com/2009/10/books-on-ace.html#comment-form' title='1 Komentar'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/363934318158781207'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/363934318158781207'/><link rel='alternate' type='text/html' href='http://programstudies.blogspot.com/2009/10/books-on-ace.html' title='Books on ACE'/><author><name>It's Gonna Be Me</name><uri>http://www.blogger.com/profile/07321805699767978812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6390047005201701735.post-7260094708828971980</id><published>2009-10-07T11:41:00.000+07:00</published><updated>2009-10-10T19:21:12.291+07:00</updated><title type='text'>HTML with STYLE</title><content type='html'>Who's responsible for HTML with Style?&lt;br /&gt;&lt;br /&gt;My name is Stephanos Piperoglou (you can even learn to pronounce that if you read this page through) and I'm in charge of this place. I write everything you read here and am solely responsible for all of it. I claim to be an expert on HTML and CSS.&lt;br /&gt;&lt;br /&gt;This is not a way to boost my overinflated ego. I've been invlolved in HTML and CSS for quite a long time, both in a professional and an amateur fashion. So I think I know my way around the topic pretty well. I am also, to the best of my knowledge, relatively close to being human (no, conspiracy theorists, unfortunately this page is not written by aliens. But I might be under their influence without knowing it, if that makes you any happier). So I might get things wrong from time to time. If I do, get in touch with me. I might have a reason for putting something here, or it might be an oversight or just a simple mistake. In the first case, I'll make sure I clarify why I wrote what caused your complaint. In the latter cases, I'll correct the error.&lt;br /&gt;What can I find here?&lt;br /&gt;&lt;br /&gt;HTML with Style is an area of WebReference.com dedicated to HTML and CSS. It is updated with a new feature every other Wednesday.&lt;br /&gt;&lt;br /&gt;The most important section in HTML with Style is the Tutorials. Our tutorials follow the KISS principle: Keep It Simple, Stupid. They contain examples you can use when creating your own Web pages. The aim is to teach everyone, from beginners to experienced Web developers, how to create Web pages using HTML and CSS. The point is to destroy any misconceptions you might have about Web development and start anew, doing it the Right Way. You can read our manifesto to find out the philosophy behind the tutorials.&lt;br /&gt;&lt;br /&gt;Our tutorials start from the basics of HTML and expand to cover as many features of HTML and CSS as possible. So, if you're new to this thing and want to get a head start, you can start from the beginning and read through them. If, on the other hand, you think you know it all and just need to look up something specific, you can go to the relevant tutorial and look at whatever interests you. The aim is to make a complete guide to authoring Web pages using HTML and CSS.&lt;br /&gt;&lt;br /&gt;The tutorials are written with the current technologies in mind (currently, HTML 4.0 and CSS2). But since the Web is a fast-moving area of technology, these technologies might soon be as useful as a 1981 IBM PC running DOS. But have no fear; all our tutorials will be updated when the need arises, so that you can keep up to date with the latest and greatest features the Web has to offer.&lt;br /&gt;&lt;br /&gt;The tutorials are not all you're going to find in HTML with Style. Style Watch is our area devoted to industry news, product reviews and opinions (those are my opinions, by the way). Whenever something momentous happens in the HTML/CSS arena, or when I just feel like being vocal, you'll probably find an article about it in Style Watch.&lt;br /&gt;&lt;br /&gt;The tools section is where you'll find Web-based tools that will help you author Web pages using HTML and CSS. Utilizing Java, JavaScript and other technologies, these tools will do all the hard work for you - and you don't have to download or install anything. And yes, they're free to use by anyone.&lt;br /&gt;&lt;br /&gt;So how do you keep track of all these wonderful things appearing on HTML with Style? The easiest way is to subscribe to The WebReference Update, WebReference.com's weekly e-mail newsletter, that arrives in your mailbox every Monday with everything new on WebReference.com as well as news from other Internet.com sites and the Web in general. It's free, it's hassle-free, it'll make you go "WHOOPEE!" (sorry, I couldn't think of a better rhyme).&lt;br /&gt;&lt;br /&gt;If you want to get in touch with me, the easiest way is to fill out the Suggestions Form, address it to Stephanos Piperoglou, and press the submit button. I reply to all messages sent through the submissions box, although I might take a while to get round to your message because of the huge amount of e-mail I have to sort through every day.&lt;br /&gt;&lt;br /&gt;Alternatively, you can post a message on Internet.com's HTML forum. You can also find a lot of other Web authors and Internet.com writers in the forum that will be happy to help you with your authoring woes.&lt;br /&gt;What else can I look forward to?&lt;br /&gt;&lt;br /&gt;"Is that all?", you ask. For those of you not satisfied with what we offer already, the answer is no. We plan to expand this place with more stuff. I have a lot of stuff still up my sleeve (and it's a huge sleeve) but you'll just have to wait and see.&lt;br /&gt;How do you pronounce your name?&lt;br /&gt;&lt;br /&gt;That's STE-fah-noss Pee-PEH-rho-glu. I'm sure it's all Greek to you.&lt;br /&gt;What's your philosophy?&lt;br /&gt;&lt;br /&gt;As with all things, the use of HTML and CSS can be seen from many angles (read: it's slightly political). In fact, the way with which you should use these technologies is something that has created a lot of discussion (read: hate-infested flames) and speculation (read: air-filled futurology). So it might be useful to outline our principles before we go any further.&lt;br /&gt;1. Use the right tool for the right job&lt;br /&gt;&lt;br /&gt;The need for hackish methods is long gone from the Web. There is no need to abuse the technology to achieve a desired effect. All our methods will focus around proper use of HTML and CSS. We will also give proper alternatives to many of the hacks that are used on the Web today.&lt;br /&gt;2. You can do everything the right way&lt;br /&gt;&lt;br /&gt;Stephanos' 1st rule of the Web: If it can be done, someone's going to do it. Our first rule does not mean that we will simply tell you not to do something just because it's not in the specification. We're not in the habit of compromising your ability to create powerful, complete, well-featured Web pages simply because we adhere to a philosophy. But we'll make sure that what we do is done in a consistent way, that is both accessible to people with limited technology and will not break when the next version of Browser X comes out.&lt;br /&gt;3. Not everyone has the latest and greatest&lt;br /&gt;&lt;br /&gt;Many of the techniques that will be presented in HTML with Style are only supported by some of the newest browsers. However, it is well known that a lot of people don't have access to the latest technology, and simply insisting on an upgrade isn't enough. There are lots of users with older hardware, insufficient technical knowledge to upgrade and even people who browse the Web at school or at work and cannot install new software on their computers without the intervention of an administrator. Although we will showcase features of the latest browsers, we will be sure to show you how the pages you create can be viewed by any browser on any platform.&lt;br /&gt;4. We have to live with browser "features"&lt;br /&gt;&lt;br /&gt;Although browser manufacturers will let you believe otherwise, most browsers today have a horrible record of supporting HTML and CSS. While overloading their browsers with other features, programmers often neglect to make sure their implementations are consistent. We will make every effort to trace these bugs in browsers and find ways to work around them while making sure we don't write broken Web pages in the process. In most cases, it is possible to do both. When it isn't, we'll make sure we tell you about both the Right Way To Do It and The Way That Works.&lt;br /&gt;5. We lead by example&lt;br /&gt;&lt;br /&gt;When you view the pages of HTML with Style, you'll see our methods and philosophy in action. Have you seen our front page with a new browser? Do you like the layout? Think that's a table? Nope. It's layout, alright, but it's done with CSS. The Right Way. Have you seen the same page with a browser that doesn't support Tables? Try it, you'll be pleasantly surprised. All our pages will work, and work right, and act as an example of our techniques. From time to time, we'll point you to other sites that showcase our philosophy, so you can get a feel of what it's like to do things right.&lt;br /&gt;6. What we do, we do with Style&lt;br /&gt;&lt;br /&gt;The Web is about information. It's about expression, it's about reaching out and touching someone (metaphorically speaking, though there are some kinds of Web sites that take this to the extreme...). What we're here to teach you is how to put what's in your head into a Web page and tell it to the world. That's a fun thing to do. Web development is fun, and we won't let anyone tell us otherwise. It's a business, an industry, but it's fun. It's more fun than show business. It's more fun than anything. So relax, sit back, and enjoy. We don't just have a way of doing things. We have an attitude. We've got Style.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6390047005201701735-7260094708828971980?l=programstudies.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programstudies.blogspot.com/feeds/7260094708828971980/comments/default' title='Poskan Komentar'/><link rel='replies' type='text/html' href='http://programstudies.blogspot.com/2009/10/html-with-style.html#comment-form' title='1 Komentar'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/7260094708828971980'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/7260094708828971980'/><link rel='alternate' type='text/html' href='http://programstudies.blogspot.com/2009/10/html-with-style.html' title='HTML with STYLE'/><author><name>It's Gonna Be Me</name><uri>http://www.blogger.com/profile/07321805699767978812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6390047005201701735.post-9164803654284426794</id><published>2009-10-06T11:33:00.000+07:00</published><updated>2009-10-10T19:21:12.291+07:00</updated><title type='text'>Programed interactivity</title><content type='html'>You don't need to store all values in the program. A program can learn by interacting with the user and asking him what it needs to give him a result.&lt;br /&gt;&lt;br /&gt;The raw_input() function is what is needed to make a program ask for a text value:&lt;br /&gt;&lt;br /&gt;name = raw_input("Type your name: ")&lt;br /&gt;&lt;br /&gt;print "Hello", name&lt;br /&gt;&lt;br /&gt;When run this program will output whatever you type:&lt;br /&gt;&lt;br /&gt;[cpn@dkt my_programs]$ python input.py&lt;br /&gt;Type your name: cpn&lt;br /&gt;Hello cpn&lt;br /&gt;&lt;br /&gt;The mileage calculus can be made generic to be used for any car. Just make the program ask the right questions:&lt;br /&gt;&lt;br /&gt;gallon_price = 2.41&lt;br /&gt;&lt;br /&gt;print&lt;br /&gt;print "This program calculates a car mileage"&lt;br /&gt;print&lt;br /&gt;&lt;br /&gt;# A line starting with a # is a comment&lt;br /&gt;# Use it to comment important parts of your code&lt;br /&gt;&lt;br /&gt;#&lt;br /&gt;# The raw_input() function asks the user for a text&lt;br /&gt;# As a text can't be multiplied or divided the&lt;br /&gt;# float() function tranforms the text into a decimal number&lt;br /&gt;#&lt;br /&gt;distance = float(raw_input("How many miles were measured ? "))&lt;br /&gt;print&lt;br /&gt;consumed = float(raw_input("How many gallons of gas were consumed ? "))&lt;br /&gt;&lt;br /&gt;mpg = distance / consumed&lt;br /&gt;cost = gallon_price / mpg&lt;br /&gt;&lt;br /&gt;print&lt;br /&gt;print "mileage is", mpg, "miles per gallon"&lt;br /&gt;print&lt;br /&gt;print "cost is US$", cost, "per mile"&lt;br /&gt;print&lt;br /&gt;&lt;br /&gt;Save it as mileage_interactive.py and run. Note that if you're using Windows just type mileage_interactive.py at the command prompt and if using Linux type python mileage_interactive.py&lt;br /&gt;&lt;br /&gt;[cpn@dkt my_programs]$ python mileage_interactive.py&lt;br /&gt;&lt;br /&gt;This program calculates a car mileage&lt;br /&gt;&lt;br /&gt;How many miles were measured ? 221.27&lt;br /&gt;&lt;br /&gt;How many gallons of gas were consumed ? 10.87&lt;br /&gt;&lt;br /&gt;mileage is 20.356025759 miles per gallon&lt;br /&gt;&lt;br /&gt;cost is US$ 0.118392461698 per mile&lt;br /&gt;&lt;br /&gt;[cpn@dkt my_programs]$&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6390047005201701735-9164803654284426794?l=programstudies.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programstudies.blogspot.com/feeds/9164803654284426794/comments/default' title='Poskan Komentar'/><link rel='replies' type='text/html' href='http://programstudies.blogspot.com/2009/10/programed-interactivity.html#comment-form' title='0 Komentar'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/9164803654284426794'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/9164803654284426794'/><link rel='alternate' type='text/html' href='http://programstudies.blogspot.com/2009/10/programed-interactivity.html' title='Programed interactivity'/><author><name>It's Gonna Be Me</name><uri>http://www.blogger.com/profile/07321805699767978812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6390047005201701735.post-2976610944108440499</id><published>2009-10-05T11:25:00.000+07:00</published><updated>2009-10-10T19:21:12.291+07:00</updated><title type='text'>HTML 101: Back to Basics</title><content type='html'>Our first tutorial aims to teach you plain HTML, from scratch. It would be nice if you forgot everything you knew about HTML and take a fresh look at things for this tutorial.&lt;br /&gt;&lt;br /&gt;I'm going to assume that the reader of this tutorial knows nothing about creating Web pages, but has a basic familiarity with browsing the Web. After all, if you couldn't browse the Web, you probably wouldn't be reading this! If you have some passing familiarity with creating Web pages, you can quickly go through this tutorial and make sure you're familiar with everything here, though as we've mentioned before, even experienced Web developers might be surprised by learning something new here, and we're going to use these concepts a lot in future tutorials.&lt;br /&gt;&lt;br /&gt;In particular, we will discuss the following:&lt;br /&gt;&lt;br /&gt;   1. What is HTML?&lt;br /&gt;   2. Authoring HTML documents&lt;br /&gt;   3. HTML Elements&lt;br /&gt;   4. The global structure of an HTML document&lt;br /&gt;   5. Paragraph and heading elements &lt;br /&gt;&lt;br /&gt;That's not much to start with, but it's enough to make your first complete HTML document. I know you're anxious to get to it, so start off with finding out what HTML is.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6390047005201701735-2976610944108440499?l=programstudies.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programstudies.blogspot.com/feeds/2976610944108440499/comments/default' title='Poskan Komentar'/><link rel='replies' type='text/html' href='http://programstudies.blogspot.com/2009/10/html-101-back-to-basics.html#comment-form' title='2 Komentar'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/2976610944108440499'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/2976610944108440499'/><link rel='alternate' type='text/html' href='http://programstudies.blogspot.com/2009/10/html-101-back-to-basics.html' title='HTML 101: Back to Basics'/><author><name>It's Gonna Be Me</name><uri>http://www.blogger.com/profile/07321805699767978812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6390047005201701735.post-7067938616337917868</id><published>2009-10-04T11:25:00.000+07:00</published><updated>2009-10-10T19:21:12.291+07:00</updated><title type='text'>tutorial</title><content type='html'>Dynamic programming is a powerful technique for solving problems that might otherwise appear to be extremely difficult to solve in polynomial time. Algorithms built on the dynamic programming paradigm are used in many areas of CS, including many examples in AI (from solving planning problems to voice recognition).&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Dynamic programming works by solving subproblems and using the results of those subproblems to more quickly calculate the solution to a larger problem. Unlike the divide-and-conquer paradigm (which also uses the idea of solving subproblems), dynamic programming typically involves solving all possible subproblems rather than a small portion.&lt;br /&gt;&lt;br /&gt;Often, dynamic programming algorithms are visualized as "filling an array" where each element of the array is the result of a subproblem that can later be reused rather than recalculated. One way of calculating fibonacci numbers is to use the fact that&lt;br /&gt;&lt;br /&gt;fibonacci(n) = fibonacci(n-1) + fibonacci(n-2)&lt;br /&gt;&lt;br /&gt;And then write a recursive function such as&lt;br /&gt;&lt;br /&gt;int fibonacci(int n)&lt;br /&gt;{&lt;br /&gt;    if(n == 0)&lt;br /&gt;    {&lt;br /&gt;        return 0;&lt;br /&gt;    }&lt;br /&gt;    if(n == 1)&lt;br /&gt;    {&lt;br /&gt;        return 1;&lt;br /&gt;    }&lt;br /&gt;    else&lt;br /&gt;    {&lt;br /&gt;        return fibonacci(n - 1) + fibonacci(n - 2);&lt;br /&gt;    }&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;This algorithm is excruciatingly slow (it will take exponential time to run) because every time fibonacci(n - 1) is calculated, it will recalculate every value of fibonacci(n - 2) to fibonacci(0). The heart of dynamic programming is to avoid this kind of recalculation by saving the results. In the case of fibonacci numbers, other, even simpler approaches exist, but the example serves to illustrate the basic idea.&lt;br /&gt;&lt;br /&gt;One use of dynamic programming is the problem of computing "all pairs shortest paths" in a weighted graph. Although Dijkstra's algorithm solves the problem for one particular vertex, it would be necessry to run it for every vertex, and would be a somewhat complicated algorithm. Dynamic programming produces a simpler, cleaner algorithm (though one that is not inherently faster).&lt;br /&gt;&lt;br /&gt;The trick here is to find a useful subproblem that, by solving, we can use to solve a larger problem. In this case, it turns out that a useful subproblem is to consider the shortest path for any pair of vertices that goes through only the first k vertices. For simplicity, we'll just number each vertex 1 through n, where n is the total number of vertices. Now, each subproblem is just to find the distance from vertex i to vertex j using only the vertices less than k.&lt;br /&gt;&lt;br /&gt;We'll store the distances of all the shortest paths from i to j that don't use k in a two-dimensional array, D_k, indexed by the start and end vertices, storing the value of the shortest path using only vertices numbered less than k as intermediate nodes. (It's OK for one of the vertices to be numbered greater than or equal to k.)&lt;br /&gt;&lt;br /&gt;D_k[i, j] = length of shortest path from i to j going through intermediate vertices&lt;br /&gt;            less than k &lt;br /&gt;&lt;br /&gt;Now, let's say that we've already processed D_k for k from 1 to n. That means we have all of the shortest paths from any two nodes i and j where that path doesn't include any vertex labelled greater than n. Now, we know that any path for vertices i to j that may include node n+1 is either going to be the same as before, or it will include the vertex n+1, in which case the path must be a combination of the shortest path from i to n+1 and from n+1 to j; both of these paths, of course, using intermediate nodes less than n+1 (i.e., using D_n[i, n+1] and D_n[n+1, j].&lt;br /&gt;&lt;br /&gt;We can express the definition of D_k in the following form (notice that anything in braces is just being grouped together -- D_{k-1} is the distance array for k-1, for instance).&lt;br /&gt;&lt;br /&gt;D_k[i, j] = min(D_{k-1}[i, j], D_{k-1}[i, k] + D_{k-1}[k, j])&lt;br /&gt;&lt;br /&gt;Once the definition is expressed in this recursive format, it should be easy to see how this could be coded up -- we just fill a three-dimensional array with rows and columns for each vertex and a depth equal to the number of vertices. But we can actually do a bit better than this! Notice that we never need to keep around more than the current array being calculated and the last array calculated. (In fact, it turns out that all we really need is one array, so we can get away with using O(|V|^2) space.)&lt;br /&gt;&lt;br /&gt;The key point to take away is that using dynamic programming, we can reduce the problem of finding all of the shortest paths to solving a series of subproblems that can be reused again and again to solve larger problems. Whenever you try to solve a problem using dynamic programming, think about how you can break the problem up into subparts--perhaps you really only need to computer a small number of subparts (in which case you might be able to use a divide-and-conquer aproach, a la merge sort)--but if you find that you need to know every possible subproblem, then dynamic programming may be the right solution.&lt;br /&gt;&lt;br /&gt;Another point to keep in mind is that it often helps to solve simpler versions of the same problem before trying to tackle the full task at hand. For instance, you might have noticed that in the all-pairs shortest paths problem, we actually solved a slightly simpler problem: what is the distance of the shortest path from i to j. This problem is a bit easier to conceptualize and write a recurrence for. But now that we have the idea, it's easy to turn it into a solution to the actual problem in question--we just add in a new array that stores the intermediate node, k, through which the shortest path extends. In this way, the problem is reduced to finding the shortest path from i to k and from k to j, which we can again solve. (The base case here is just when the route between two nodes is a direct path that goes through no additional vertices.)&lt;br /&gt;&lt;br /&gt;Moreover, the code for dynamic programming can be surprisingly simple. The pseudocode for the above example can be written in only a few lines, and it turns out that we only need to fill a single array (as long as we fill in a reasonable order).&lt;br /&gt;&lt;br /&gt;/* Note that this is c-like pseudo-code */&lt;br /&gt;int D[n][n];&lt;br /&gt;&lt;br /&gt;/* initialize D so that each edge, (i, j), has the correct weight at D[i][j]&lt;br /&gt; * and all other elements of the array are set to INFINITY */&lt;br /&gt;&lt;br /&gt;/* n is the number of vertices */&lt;br /&gt;for(int k = 0; k &lt; n; k++)&lt;br /&gt;{&lt;br /&gt;    for(int i = 0; i &lt; n; i++)&lt;br /&gt;    {&lt;br /&gt;        for(int j = 0; j &lt; n; j++)&lt;br /&gt;        {&lt;br /&gt;            if(D[i][j] &gt; D[i][k] + D[k][j])&lt;br /&gt;            {&lt;br /&gt;                D[i][j] = D[i][k] + D[k][j];&lt;br /&gt;            }&lt;br /&gt;        } &lt;br /&gt;    } &lt;br /&gt;}&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6390047005201701735-7067938616337917868?l=programstudies.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programstudies.blogspot.com/feeds/7067938616337917868/comments/default' title='Poskan Komentar'/><link rel='replies' type='text/html' href='http://programstudies.blogspot.com/2009/10/tutorial.html#comment-form' title='2 Komentar'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/7067938616337917868'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/7067938616337917868'/><link rel='alternate' type='text/html' href='http://programstudies.blogspot.com/2009/10/tutorial.html' title='tutorial'/><author><name>It's Gonna Be Me</name><uri>http://www.blogger.com/profile/07321805699767978812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6390047005201701735.post-1092170641226513155</id><published>2009-10-04T11:17:00.000+07:00</published><updated>2009-10-10T19:21:12.291+07:00</updated><title type='text'>BASIC Compilers</title><content type='html'>thinBasic   new&lt;br /&gt;&lt;br /&gt;This is a Basic-like modular language and interpreter designed for task automation under Windows Operating System.&lt;br /&gt;&lt;br /&gt;Visual Basic 2008 Express Edition&lt;br /&gt;&lt;br /&gt;Visual Basic Express provides a lightweight experience for first-time programmers and hobbyists who are interested in building Windows Forms applications, console applications, and class libraries.&lt;br /&gt;&lt;br /&gt;KBasic 1.0&lt;br /&gt;&lt;br /&gt;Free full featured Object orientated modern BASIC language for Windows and Linux (personal edition is free, professional version is not). A Mac OS X version is supposed to be coming in early 2006.&lt;br /&gt;&lt;br /&gt;Chipmunk Basic Home Page&lt;br /&gt;&lt;br /&gt;Chipmunk Basic is an old fashioned BASIC interpreter which runs on almost all Macs, and is accelerated for PowerMacs.&lt;br /&gt;&lt;br /&gt;ExtremeBasic&lt;br /&gt;&lt;br /&gt;ExtremeBasic is comprised of three components: An Integrated Development Environment with code editors, GUI tools, debugger, etc; a clean and powerful BASIC dialect; and a rich class library covering GUI applications, networking, multimedia, etc. See the Quick Start guide on the website for more details.&lt;br /&gt;&lt;br /&gt;FreeBASIC&lt;br /&gt;&lt;br /&gt;FreeBASIC is a free, open-source, 32-bit, MS-QuickBASIC's syntax-compatible compiler, that adds new features such as pointers, unsigned data types, inline-assembly and many others.&lt;br /&gt;&lt;br /&gt;Gambas&lt;br /&gt;&lt;br /&gt;Gambas ist a quite mature programming GUI for Linux KDE. Gambas is, before all, a Basic language with object extensions. A program written with Gambas is a set of files. Each file describes a class, in terms of object programming. The class files are compiled, then executed by an interpreter. A Windows version appears to be under development.&lt;br /&gt;&lt;br /&gt;Just BASIC&lt;br /&gt;&lt;br /&gt;Just BASIC, a free Windows BASIC derived from Liberty BASIC.&lt;br /&gt;&lt;br /&gt;Basic4GL&lt;br /&gt;&lt;br /&gt;Basic4GL is a free BASIC programming language for Win32 platforms with built in OpenGL v1.1 support. Basic4GL is a compiler and virtual machine, using a easy, simple syntax based on traditional BASIC. It is designed to be an easy to learn, easy to use language for writing games, 3D demos and utilities without all the setup hassle associated with most language compilers.&lt;br /&gt;&lt;br /&gt;GNU/Liberty Basic Compiler Collection (GLBCC)&lt;br /&gt;&lt;br /&gt;The GNU/Liberty Basic Compiler Collection (GLBCC) is a suite of tools designed to allow Windows and Linux users to compile Liberty Basic code to a standalone application. GLBCC uses entirely independent and entirely free libraries to generate super small and super fast executables that have no external dependency.&lt;br /&gt;&lt;br /&gt;XBasic&lt;br /&gt;&lt;br /&gt;A comprehensive program development environment that integrates an editor, compiler, debugger, function libraries and GuiDesigner into an environment that encompasses the process of creating fast, efficient, reliable, portable 32/64 bit programs. Compatib&lt;br /&gt;&lt;br /&gt;MoonRock&lt;br /&gt;&lt;br /&gt;MoonRock is a BASIC-like compiler and development language with several extensions. Produces executables for DOS real mode or DPMI protected mode. Archive includes compiler, ArrowSoft assembler, documentation and sample programs.&lt;br /&gt;&lt;br /&gt;XBLite&lt;br /&gt;&lt;br /&gt;XBLite is an XBasic language program compiler. XBasic, developed by Max Reason, is a clean, readable, powerful, and complete BASIC programming language. XBLite is free, open-source, and published under GPL and LGPL.&lt;br /&gt;&lt;br /&gt;smallBasic&lt;br /&gt;&lt;br /&gt;Free BASIC interpreter.&lt;br /&gt;&lt;br /&gt;GNU/Liberty Basic Compiler Collection&lt;br /&gt;&lt;br /&gt;GLBCC is a front-end to the GNU Compiler Collection. GLBCC adds Liberty Basic to the GCC language collection so that Liberty Basic code can be compiled directly to an executable. Since GLBCC uses GCC, the object files can also be linked with object file&lt;br /&gt;&lt;br /&gt;Bas&lt;br /&gt;&lt;br /&gt;Bas is an interpreter for the programming language BASIC, written in ANSI C for UNIX systems.&lt;br /&gt;&lt;br /&gt;wxBasic&lt;br /&gt;&lt;br /&gt;A free, Open Source Basic interpreter for creating portable GUI applications in Windows and Linux. Can create stand-alone executables.&lt;br /&gt;&lt;br /&gt;NBASIC Version 1.0&lt;br /&gt;&lt;br /&gt;NBASIC is a classic BASIC interpreter that provides an environment similar in operation to microcomputers of the early 1980's. NBASIC is available in two versions, shareware and standard. The shareware version is free and does not include some of the features found in the standard version such as graphics, advanced editing, debugging, and configuration options.&lt;br /&gt;&lt;br /&gt;Yabasic&lt;br /&gt;&lt;br /&gt;Yet another BASIC for Unix and Windows.&lt;br /&gt;&lt;br /&gt;Envelop Visual Basic&lt;br /&gt;&lt;br /&gt;A clone of Visual Basic 3 that is no longer supported.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6390047005201701735-1092170641226513155?l=programstudies.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programstudies.blogspot.com/feeds/1092170641226513155/comments/default' title='Poskan Komentar'/><link rel='replies' type='text/html' href='http://programstudies.blogspot.com/2009/10/basic-compilers.html#comment-form' title='0 Komentar'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/1092170641226513155'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/1092170641226513155'/><link rel='alternate' type='text/html' href='http://programstudies.blogspot.com/2009/10/basic-compilers.html' title='BASIC Compilers'/><author><name>It's Gonna Be Me</name><uri>http://www.blogger.com/profile/07321805699767978812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6390047005201701735.post-147163016130796853</id><published>2009-10-03T11:16:00.000+07:00</published><updated>2009-10-10T19:04:50.409+07:00</updated><title type='text'>programming language</title><content type='html'>A vocabulary and set of grammatical rules for instructing a computer to perform specific tasks. The term programming language usually refers to high-level languages, such as BASIC, C, C++, COBOL, FORTRAN, Ada, and Pascal. Each language has a unique set of keywords (words that it understands) and a special syntax for organizing program instructions.&lt;br /&gt;&lt;br /&gt;High-level programming languages, while simple compared to human languages, are more complex than the languages the computer actually understands, called machine languages. Each different type of CPU has its own unique machine language.&lt;br /&gt;&lt;br /&gt;Lying between machine languages and high-level languages are languages called assembly languages. Assembly languages are similar to machine languages, but they are much easier to program in because they allow a programmer to substitute names for numbers. Machine languages consist of numbers only.&lt;br /&gt;&lt;br /&gt;Lying above high-level languages are languages called fourth-generation languages (usually abbreviated 4GL). 4GLs are far removed from machine languages and represent the class of computer languages closest to human languages.&lt;br /&gt;&lt;br /&gt;Regardless of what language you use, you eventually need to convert your program into machine language so that the computer can understand it. There are two ways to do this:&lt;br /&gt;# compile the program&lt;br /&gt;&lt;br /&gt;    * interpret the program &lt;br /&gt;&lt;br /&gt;See compile and interpreter for more information about these two methods.&lt;br /&gt;&lt;br /&gt;The question of which language is best is one that consumes a lot of time and energy among computer professionals. Every language has its strengths and weaknesses. For example, FORTRAN is a particularly good language for processing numerical data, but it does not lend itself very well to organizing large programs. Pascal is very good for writing well-structured and readable programs, but it is not as flexible as the C programming language. C++ embodies powerful object-oriented features, but it is complex and difficult to learn.&lt;br /&gt;&lt;br /&gt;The choice of which language to use depends on the type of computer the program is to run on, what sort of program it is, and the expertise of the programmer.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6390047005201701735-147163016130796853?l=programstudies.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programstudies.blogspot.com/feeds/147163016130796853/comments/default' title='Poskan Komentar'/><link rel='replies' type='text/html' href='http://programstudies.blogspot.com/2009/10/programming-language.html#comment-form' title='1 Komentar'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/147163016130796853'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/147163016130796853'/><link rel='alternate' type='text/html' href='http://programstudies.blogspot.com/2009/10/programming-language.html' title='programming language'/><author><name>It's Gonna Be Me</name><uri>http://www.blogger.com/profile/07321805699767978812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6390047005201701735.post-8880770637099965071</id><published>2009-10-02T11:12:00.000+07:00</published><updated>2009-10-10T19:04:50.409+07:00</updated><title type='text'>what is programming</title><content type='html'>Computer Programming is the art of making a computer do what you want it to do.&lt;br /&gt;&lt;br /&gt;At the very simplest level it consists of issuing a sequence of commands to a computer to achieve an objective. In the Microsoft world MS DOS users used to create text files with lists of commands called BAT files. These simply executed the sequence of commands as a BATCH, hence the name. You can still produce these in Windows environments today but in practice they are rarely seen.&lt;br /&gt;&lt;br /&gt;For example you might be producing a document (such as this tutorial) which comprises lots of separate files. Your word processor may produce backup copies of each file as it saves a new version. At the end of the day you may want to put the current version of the document (all the latest files) into a 'backup' directory/folder. Finally, to tidy up, delete all the backup files ready to start work the next day. A simple BAT file to do this would be:&lt;br /&gt;&lt;br /&gt;COPY *.HTM BACKUP&lt;br /&gt;DEL *.BAK&lt;br /&gt;&lt;br /&gt;If the file were called SAVE.BAT then at the end of each day I could simply type SAVE at a DOS prompt and the files would be saved and backups deleted. This is a program.&lt;br /&gt;&lt;br /&gt;Note: Users of Linux or other operating systems have their own versions of these files often known as shell scripts. Unix shell scripts are much more powerful than DOS BAT files, and support most of the programming techniques that we will be discussing in this course.&lt;br /&gt;Let me say that again&lt;br /&gt;&lt;br /&gt;If you were a little daunted by that, please don't be. A computer program is simply a set of instructions to tell a computer how to perform a particular task. It's rather like a recipe: a set of instructions to tell a cook how to make a particular dish. It describes the ingredients (the data) and the sequence of steps (the process) needed to convert the ingredients into the cake or whatever. Programs are very similar in concept.&lt;br /&gt;A little history&lt;br /&gt;&lt;br /&gt;Just as you speak to a friend in a language so you 'speak' to the computer in a language. The only language that the computer understands is called binary and there are several different dialects of it - which is why that cool iMac program won't run on your PC and vice versa. Binary is unfortunately very difficult for humans to read or write so we have to use an intermediate language and get it translated into binary for us. This is rather like watching the American and Russian presidents talking at a summit meeting - One speaks in English, then an interpreter repeats what has been said in Russian. The other replies in Russian and the interpreter again repeats the sentence, this time in English.&lt;br /&gt;&lt;br /&gt;Surprisingly enough the thing that translates our intermediate language into binary is also called an interpreter. And just as you usually need a different interpreter to translate English into Russian than you do to translate Arabic into Russian so you need a different computer interpreter to translate Python into binary from the one that translates VBScript into binary.&lt;br /&gt;&lt;br /&gt;The very first programmers actually had to enter the binary codes themselves, this is known as machine code programming and is incredibly difficult. The next stage was to create a translator that simply converted English equivalents of the binary codes into binary so that instead of having to remember that the code 001273 05 04 meant add 5 to 4 programmers could now write ADD 5 4. This very simple improvement made life much simpler and these systems of codes were really the first programming languages, one for each type of computer. They were known as assembler languages and Assembler programming is still used for a few specialized programming tasks today.&lt;br /&gt;&lt;br /&gt;Even this was very primitive and still told the computer what to do at the hardware level - move bytes from this memory location to that memory location, add this byte to that byte etc. It was still very difficult and took a lot of programming effort to achieve even simple tasks.&lt;br /&gt;&lt;br /&gt;Gradually computer scientists developed higher level computer languages to make the job easier. This was just as well because at the same time users were inventing ever more complex jobs for computers to solve! This competition between the computer scientists and the users is still going on and new languages keep on appearing. This makes programming interesting but also makes it important that as a programmer you understand the concepts of programming as well as the pragmatics of doing it in one particular language.&lt;br /&gt;&lt;br /&gt;I'll discuss some of those common concepts next, but we will keep coming back to them as we go through the course.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6390047005201701735-8880770637099965071?l=programstudies.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://programstudies.blogspot.com/feeds/8880770637099965071/comments/default' title='Poskan Komentar'/><link rel='replies' type='text/html' href='http://programstudies.blogspot.com/2009/10/what-is-programming.html#comment-form' title='2 Komentar'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/8880770637099965071'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6390047005201701735/posts/default/8880770637099965071'/><link rel='alternate' type='text/html' href='http://programstudies.blogspot.com/2009/10/what-is-programming.html' title='what is programming'/><author><name>It's Gonna Be Me</name><uri>http://www.blogger.com/profile/07321805699767978812</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry></feed>
