Wednesday, November 28, 2012

Command Prompt : Command " attrib "

ATTRIB.exe

Display or change file attributes. Find Filenames.
Syntax
      ATTRIB [ + attribute | - attribute ] [pathname] [/S [/D]]

Key
     +    : Turn an attribute ON
     -    : Clear an attribute OFF

 pathname : Drive and/or filename e.g. C:\*.txt
    /S    : Search the pathname including all subfolders.
    /D    : Process folders as well

   attributes: 

        R  Read-only (1)
        H  Hidden (2)
        A  Archive (32)
        S  System (4)

   extended attributes:
        E  Encrypted
        C  Compressed (128:read-only)
        I  Not content-indexed
        L  Symbolic link/Junction (64:read-only)
        N  Normal (0: cannot be used for file selection)
        O  Offline
        P  Sparse file
        T  Temporary 
The numeric values may be used when changing attributes with VBS/WSH
If no attribute is specified attrib will return the current attribute settings. Used with just the /S option ATTRIB will quickly search for a particular filename.

Hidden and System attributes take priority.


If a file has both the Hidden and System attributes set, you can clear both attributes only with a single ATTRIB command.

For example, to clear the Hidden and System attributes for the RECORD.TXT file, you would type:
ATTRIB -S -H RECORD.TXT

File Attributes

You can use wildcards (? and *) with the filename parameter to display or change the attributes for a group of files.

Remember that, if a file has the System or Hidden attribute set, you must clear that attribute before you can change any other attributes.

Directory Attributes

You can display or change the attributes for a directory/folder. To use ATTRIB with a directory, you must explicitly specify the directory name; you cannot use wildcards to work with directories.
For example, to hide the directory C:\SECRET, you would type the following:

ATTRIB +H C:\SECRET

The following command would affect only files, not directories: ATTRIB +H C:*.*
The Read-only attribute for a folder is generally ignored by applications, however the Read-only and System attributes are used by Windows Explorer to determine whether the folder is a special folder, such as My Documents, Favorites, Fonts, etc.
Setting the Read-Only attribute on a folder can affect performance, particularly on shared drives because Windows Explorer will be forced to request the Desktop.ini of every sub-folder to see if any special folder settings need to be set.

Viewing archive attributes

The Archive attribute (A) is used to mark files that have changed since they were previously backed up. The (A) flag is automatically updated by Windows as the file is saved.

If the (A) flag is present - the file is new or has been changed since the last backup.

The MSBACKUP, RESTORE, and XCOPY commands use these Archive attributes, as do many (but not all) 3rd party backup solutions.
Extended Attributes
File attributes can be read with fsutil usn readdata filename.ext
Constants - the following attribute values are returned by the GetFileAttributes function:
FILE_ATTRIBUTE_READONLY = 1 (0x1)
FILE_ATTRIBUTE_HIDDEN = 2 (0x2)
FILE_ATTRIBUTE_SYSTEM = 4 (0x4)
FILE_ATTRIBUTE_DIRECTORY = 16 (0x10)
FILE_ATTRIBUTE_ARCHIVE = 32 (0x20)
FILE_ATTRIBUTE_NORMAL = 128 (0x80)
FILE_ATTRIBUTE_TEMPORARY = 256 (0x100)
FILE_ATTRIBUTE_SPARSE_FILE = 512 (0x200)
FILE_ATTRIBUTE_REPARSE_POINT = 1024 (0x400)
FILE_ATTRIBUTE_COMPRESSED = 2048 (0x800)
FILE_ATTRIBUTE_OFFLINE = 4096 (0x1000)
FILE_ATTRIBUTE_NOT_CONTENT_INDEXED = 8192 (0x2000)
FILE_ATTRIBUTE_ENCRYPTED = 16384 (0x4000)
For example, a file attribute of 0x120 indicates the Temporary + Archive attributes are set (0x100 + 0x20 = 0x120.)
DFSR will not replicate files if they have the temporary attribute set.
The temporary attribute can be removed by using PowerShell to subtract 0x100:
PS C:\> Get-childitem D:\Data -recurse | ForEach-Object -process {if (($_.attributes -band 0x100) -eq 0x100) {$_.attributes = ($_.attributes -band 0xFEFF)}}
"The moral sense of conscience is by far the most important.. it is the most noble of all the attributes of man" - Charles Darwin

@reference site : http://ss64.com/nt/attrib.html

Tuesday, August 14, 2012

Java_code : month showing


import java.util.Scanner;
public class month_show {

/**
* @param args
*/
public static void check_name_of_month(int mon){
System.out.println("=======================================================");
System.out.print("\t\t\t");
switch(mon){
case 1:System.out.println("January");break;
case 2:System.out.println("Febulary");break;
case 3:System.out.println("March");break;
case 4:System.out.println("April");break;
case 5:System.out.println("May");break;
case 6:System.out.println("June");break;
case 7:System.out.println("July");break;
case 8:System.out.println("August");break;
case 9:System.out.println("September");break;
case 10:System.out.println("Octorber");break;
case 11:System.out.println("November");break;
case 12:System.out.println("December");break;
default:System.out.print("");
}
System.out.println("=======================================================");
}
public static int count_month(int mon){
int day ;
check_name_of_month(mon);
if ( mon == 2)
day = 28;
else if (mon > 7 && mon <= 12)
if (mon%2==0)
day = 31;
else
day = 30;
else if (mon < 8 && mon > 0)
if (mon%2==0)
day = 30;
else
day = 31;
else
day = 0;
return day;
}
public static void show_month(int mon){
int day = count_month(mon);
if (day == 0){
System.out.println("INCORRECT MONTH(1-12)");
}else{
System.out.print("Sun\t");
System.out.print("Mon\t");
System.out.print("Tue\t");
System.out.print("Wed\t");
System.out.print("Thur\t");
System.out.print("Fri\t");
System.out.println("Sat\t");
int con_day ;
for (int i=1 ;i<=day;i++){
System.out.print(i+"\t");
con_day = i%7;
if(con_day==0)
System.out.println("");
}
System.out.println("\n=======================================================");
}
}
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner sc = new Scanner(System.in);
System.out.print("Month:");
int day = sc.nextInt();
show_month(day);
}

}

Saturday, June 30, 2012

How to Install .deb File [iPhone/iPod/iPad Cydia Tutorial]


How to Install .deb File [iPhone/iPod/iPad Cydia Tutorial]
4 Methods to install a .deb file  into your iOS, choose the easier  for you! Applicable to:
  • iPhone (3G/3Gs/4/4s), iPod touch (3G/4G), iPad/iPad 2/iPad3
  • iOS 4.0+/ iOS 5.0 +

1st Method: Install with iOS Safari Browser + iFile

Requirements:  iPhone/iPod/iPad Safari Browser + iFile 
  1. Download .deb file with iPhone/iPod/iPad Safari browser
  2. Choose >> Open in “iFile”
  3. Once iFile opens >> Select  Installer
  4. Respring
  5. YOU ARE DONE

2nd Method: Install with SSH Client + iFile

Requirements: SSH Client (iFunbox for Windows/Cyberduck for MacOS) + iFile
  1. Download iFunbox >> (www.i-funbox.com) Windows , or Cyberduck for MacOS
  2. Download desired (.deb) file to your desktop
  3. Run iFunbox and connect your iOS (iPhone, iPod or iPad)
  4. iFunBox will show your device contents, Now navigate to any folder for example:  var/mobile/Documents
  5. Move (.deb) file from your desktop to var/mobile/Documents
  6. Run iFile from your iOS, and navigate to the same folder i.e. var/mobile/Documents
  7. Click on (.deb) file and select install
  8. YOU ARE DONE
TIP : I can not SSH into my iPhone/iPod/iPad!
  • I can not find var/root?
  • I can not SSH into my iPhone/iPad?
  • I have jailbroken device, my SSH client is discovering my iPhone/iPad as (JAILED)?
>> Install OpenSSH from Cydia, reboot, then try again.
>> If you still having problems>> Install afc2add from Cydia then reboot.

3rd Method: AutoInstallation Folder

Requirements: SSH Client (iFunbox for Windows/Cyberduck for MacOS)
  1. Download iFunbox >> (www.i-funbox.com) Windows , or Cyberduck for MacOS
  2. Download desired (.deb) file to your desktop
  3. Run iFunbox and connect your iOS (iPhone, iPod or iPad)
  4. iFunBox will show your device contents, Now navigate to var/root/Media/
  5. Create the folder Cydia/AutoInstall (if not already created)
  6. Move (.deb) file from your desktop to var/root/Media/Cydia/AutoInstall
  7. Reboot your iOS
  8. YOU ARE DONE

4th Method: Install with Mobile Terminal

Requirements: Mobile Terminal + OpenSSH
“Steps 2 and 3 are only if you have never installed a .deb file with this method”
  1. Download the .deb file you want (example : LockInfo)
  2. Start Cydia, go to “Search”, type “Mobile Terminal” and install it
  3. Repeat step 2 for “OpenSSH”
  4. Start “MobileTerminal”
  5. Type the following commands , then reboot:

Friday, June 15, 2012

SQL :: Standard Query Language :: Basic commands and Advances


Login & Change / Set password to MySQL :

$ mysql -h hostname -u username -p

$ mysql -u username -p

$ mysql -u username

$ mysqladmin -u root password
Set password for root

SQL : Standard Query Language :

:: Show / Delete / Create Databases ::

mysql> SHOW DATABASES;
show list database in mysql

mysql> DROP DATABASE database_name;
delete database in mysql

mysql> CREATE DATABASE database_name;
create new database


:: Cancel command typing ::

mysql> .....\c
cancel the command while type

:: Logout mysql ::

mysql> quit
to logout of mysql

:: Using Database & Create / Show / Delete Table ::

mysql> USE database_name;
choose database to use

mysql> CREATE TABLE table_name(
-> field_name1 field_type,
-> field_name2 field_type,
-> ........ );
Create a table with fields,
field_type : CHAR(N),VARCHAR(N),INT,DOUBLE,FLOAT,DATE....

mysql> SHOW TABLES;
To show all table in database you selected.

mysql> DROP TABLE table_name;
To delete table in database you selected.





:: Inserting Data to Table ::

mysql> INSERT INTO table_name SET
-> field_name1 = value1,
-> field_name2 = value2,
-> .....
-> ;
OR

mysql> INSERT INTO table_name
-> ( field_name1 , field_name2 , .... )
-> VALUES ( value1 , value2 , ....);

OR

mysql> INSERT INTO table_name VALUES
-> ( field_name1 = value1 ,
-> field_name2 = value2 ,
-> .....
-> );
Ex.
mysql> INSERT INTO person VALUES
-> ( birth = "1987-06-12" ,
-> name = "MR.KEOVESSNA" ,
-> sex = 'm',
-> id = 53160083 );

:: Viewing Stored Data ::

mysql> SELECT * FROM person;
show all fields' values in table person.

mysql> SELECT * FROM person WHERE name = "MR.KEOVESSNA";
show all field's value of table person which name = "MR.KEOVESSNA".

mysql> SELECT name FORM person WHERE sex = 'm';
show all name value of table person which sex = 'm'.

mysql> SELECT name,sex,birth FROM person;
show all name,sex,birth values of table person.

mysql> SELECT ID, LEFT(name,5) FROM person;
show id number and 5 characters from name field at from left of person.
Ex. name = "123456789" => LEFT(name,5) = "12345" .

mysql> SELECT COUNT(*) FORM person;
To count the number of result returned.

mysql> SELECT name FORM person WHERE name LIKE "%EO%";
Show name which are contented ..EO.. .

mysql> SELECT name FORM person WHERE sex = 'f' AND birth < "1980-1-1" ; Show name which are sex = 'f' and birth under year 1980. Logical operator : AND , OR Operator : = , < , > , <= , >= , !=

mysql> SELECT name FORM person WHERE
-> name IN (SELECT name FROM person WHERE sex = 'f')
-> AND name IN (SELECT name FROM person WHERE sex = 'm');
Find name from set of 2 sets who are sex = 'm' and 'f' to Intersection.
IN use to make as Set.



mysql> SELECT * FROM pet
> ORDER BY date;
To show all data in table pet by order by field date

:::: Cartesian Product :::

 
Ex. we have a table pet in manageries database.
if want to show the who fet both bird and dog

mysql> SELECT p1.owner FROM pet AS p1 , pet As p2
// pet AS p1 , pet AS p2 : p1 x p2 ( cartesian product which p1,p2 // from pet table ).













Wednesday, June 13, 2012

How to install MySQL server on Mac OSX 10.x or Lion with using terminal


:: How to download MySQL community server on Mac OSX 10.7 or Lion
:: How to install MySQL command in terminal on Mac OSX 10.7or Lion

1. MySQL Community Server
2. Then install the *.dmg file with two of *.pkg and one *.prefpanel
3. How to make your terminal work with mysql command :
     ::follow these instructions::

Bash will complain that it can’t find mysql. So we have to help it like so:

1. Create a file .bash_profile with your own editor with content below
* make sure you check that it has existed directory mysql in /usr/local/ ?
export PATH=$PATH:/usr/local/mysql/bin 
2. Save .bash_profile to /Users/%username% which %username% is your username directory
3. Restart the terminal the make a command :
source ~/.bash_profile

4. Checking your PATH by type :
$PATH

5. There will be showed look like this :
/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/usr/local/mysql/bin

6. Now you should able to run mysql:
mysql -u -root 

*Note : which means you have no password for root.

mysqladmin -u root password



By Jack@COMPUTER-SCIENCE

Monday, June 11, 2012

How to burn Image Disk *.ios to Blank disk in Mac OX

Disc images are a fairly common packaging standard for large software programs. If you want to try out a new Linux distribution, for example, chances are you'll need to download a disc image in ISO format and burn it to a blank CD-ROM or DVD.

But ever since I began using Mac OS X, I've been perpetually confused about how to burn ISO images. I'm used to disc burning utilities that have an obvious, explicit command like "Burn ISO Image to CD." To make life even more confusing, OS X's Disk Utility does have a Burn command, but it becomes disabled when you click on the blank disc you'd like to use for the burn.

The problem here is that most Mac disc utilities, including the built-in Disk Utility, take a different approach when it comes to image burning. Instead of telling the program you want to burn an image, then choosing the file, you're supposed to do the reverse: You choose the file, then tell the program you want to burn it. So, to burn an ISO image to disc, here's what to do:
  1. Insert a blank disc.
  2. Start Disk Utility.
  3. From the File menu, choose Open Disk Image and select the ISO to be burned.
  4. In the list of volumes, you will now see an item representing the ISO file. Select it.
  5. Click the Burn button and follow the instructions.
That's it! Sure, it may seem simple enough, but when you've been using Linux and Windows utilities for years, these steps can be a little perplexing and hard to remember.

Thursday, March 22, 2012

UNIX TOOLS - commad grep utility find match content in files

Unix Tools and Programming

Finding matching pattern using grep utility

Syntax:
grep "word-to-find" {file-name}
 
Create text file as follows:

$vi emo-file
hello world!
cartoons are good
especially toon like tom (cat)
what
the number one song
12221
they love us
I too


After saving file, issue following command,
$ grep "too" demofile
cartoons are good
especially toon like tom (cat)
I too
grep will locate all lines for the "too" pattern and print all (matched) such line on-screen. grep prints too, as well as cartoons and toon; because grep treat "too" as expression. Expression by grep is read as the letter t followed by o and so on. So if this expression is found any where on line its printed. grep don't understand words.

UNIX TOOLS - Conditional : if else fi

Unix Tools and programming :
if else fi

Syntax:
           if condition
           then
                       condition is zero (true - 0)
                       execute all commands up to else statement

           else
                       if condition is not true then
                       execute all commands up to fi
           fi

For e.g. Write Script as follows:
$ vi isnump_n
#!/bin/sh
#
# Script to see whether argument is positive or negative
#
if [ $# -eq 0 ]
then
echo "$0 : You must give/supply one integers"
exit 1
fi

if test $1 -gt 0
then
echo "$1 number is positive"
else
echo "$1 number is negative"
fi
Try it as follows:
$ chmod 755 isnump_n

$ isnump_n 5

5 number is positive

$ isnump_n -45

-45 number is negative

$ isnump_n

./ispos_n : You must give/supply one integers

$ isnump_n 0

0 number is negative
Detailed explanation
First script checks whether command line argument is given or not, if not given then it print error message as "./ispos_n : You must give/supply one integers". if statement checks whether number of argument ($#) passed to script is not equal (-eq) to 0, if we passed any argument to script then this if statement is false and if no command line argument is given then this if statement is true. The echo command i.e.
echo "$0 : You must give/supply one integers"
         |              |
         |              |
        1             2
1 will print Name of script
2 will print this error message
And finally statement exit 1 causes normal program termination with exit status 1 (nonzero means script is not successfully run).
The last sample run $ isnump_n 0 , gives output as "0 number is negative", because given argument is not > 0, hence condition is false and it's taken as negative number. To avoid this replace second if statement with if test $1 -ge 0.

UNIX TOOLS - String compare in Shell Script

For string Comparisons use
OperatorMeaning
string1 = string2string1 is equal to string2
string1 != string2 string1 is NOT equal to string2
string1 string1 is NOT NULL or not defined 
-n string1 string1 is NOT NULL and does exist
-z string1 string1 is NULL and does exist

UNIX TOOLS - Operator conditional in Shell Script

For Mathematics, use following operator in Shell Script

Mathematical Operator in  Shell Script MeaningNormal Arithmetical/ Mathematical StatementsBut in Shell
   For test statement with if commandFor [ expr ] statement with if command
-eqis equal to5 == 6if test 5 -eq 6if [ 5 -eq 6 ]
-ne is not equal to5 != 6if test 5 -ne 6if [ 5 -ne 6 ]
-lt is less than5 < 6if test 5 -lt 6if [ 5 -lt 6 ]
-le is less than or equal to5 <= 6if test 5 -le 6if [ 5 -le 6 ]
-gt is greater than5 > 6if test 5 -gt 6if [ 5 -gt 6 ]
-ge is greater than or equal to5 >= 6if test 5 -ge 6if [ 5 -ge 6 ]
NOTE: == is equal, != is not equal.

Monday, March 19, 2012

UNIX TOOLs - Version Control with Mercurial (using single-user local repository)

  * Version Control

    + Gives the ability to pull out any version ever created
    + Allows tracking WHO made each change (committer id)
    + Allows tracking WHAT each change was (diffs)
    + Allows tracking WHY each change was made (commit comments)
    + Allows seeing history (log of commits)
    + Less disk space than many backups, easier to use
    + file-based (old school, SCCS, RCS, CVS)
    + FOSS centralized vs. distributed
      * CVS, SVN                     (centralized)
      * git, hg, bzr, mtn, darcs, arch, fossil     (distributed)
    + proprietary names you may know (non-free, closed source)
      * Visual SourceSafe            (single-user)
      * ClearCase, Perforce          (centralized)
      * Bitkeeper                    (distributed)

  * Version Control with Mercurial (using single-user local repository)

    + Home site is http://mercurial.selenic.com/
    + Based on 'changeset' concept with named tag support
    + Example usage for single developer
      * hg init       (initialize)
      * hg add        (add a file to be tracked)
      * hg remove     (stop tracking a file)
      * hg rename     (rename a file, maybe with -A)
      * hg stat       (report current status)
      * hg diff       (see changes between working copy and repository)
        can use -r to specify revisions
      * hg commit     (permanently save changes in repository)
        Must use -u and -m, optionally can specify path list
      * hg tag        (create a tag)
      * hg tags       (display tags)
      * hg log        (show changelog)
      * hg update     (change to revision with -r)
      * hg revert     (for those OOPS! moments...)
      * hg help       (get online help)
      * hg cat -r X f (dump specific version of file f to stdout)
    + backing up repository to USB stick on BLS2
    + backing up repository to another machine with rsync

UNIX TOOLs - Basic vi editor and some advance key commands

Basic vi editor and some advance key commands

In vi editor , three are contented 3 kinds of mode : 
  1.Insert Mode : to be able edit or insert more word contents by press i or a from Esc Mode.
  2.Esc Mode : to be able in using key commands as navigation, modification, change mode to ex mode etc... 
  3.Ex Mode : a kind of using ":" for more experts.

1.INSERT MODE:
 This mode you can use left side of your keyboard (Unix like this).
 Change to Esc Mode : pree esc button.

2.Esc Mode: 
 a.Navigation
   # Moving cursor
    h = left     j = down     k = up     l = right
   # Big moving cursor
    w = forward by each word
    b = backward by each word
    0 = move to the end of current line of cursor
    $ = move to the beginning of current line of cursor

    gg = move to the first line of text
    G =  move to the end line of text
    12G = move to line 12 of text
    ctrl+f = page down
    ctrl+b = page up
    ctrl+g = to see where am I ? what I am doing ?
 b.Modification
   # Deleting

    x = delete what cursor is standing on

    D = delete everything after cursor is standing on til end of current line
    dd = delete current line cursor standing on
    d4d = delete 4 lines from cursor standing on

   # Editing

    r = change only one _ which cursor is standing on then ESC MODE is being

    cw = change only one word which cursor is standing on but Will change to INSERT MODE

    O = insert text in the front of current line and change to INSERT MODE

    A = insert text at the end of current line and change to INSERT MODE
   # Copying & Pasting
    yy = copy to current line cursor standing on
    y5y = copy 5 lines from the cursor standing on
    p = past what you have copied before to the next line cursor standing on
   # Undo
    u = revert what you have done once . ( undo )
   # How to cut / move text
    ESC MODE : press v (VISUAL) then move your cursor with ( h,j,k,l ) to make a  
    selection then press c after pressed it will be changed to INSERT MODE then 
    return ECS MODE and move to where you want to place the text you have selected 
    before then press p.
c.Exit editing session

    ZQ = exit without saving

    ZZ = exit with saving
3.EX MODE:
  Enter EX MODE by being in ESC MODE then press : and following <command>
 a.Exit editing session
   :q   =  quit editing without saving
   :wq  =  save then quit
   :q!  = force to quit
   :w!  = force to save
   :wq! = save then force to quit
b.Saving to other file
   :w newfile.xx
c.Go to Line
   :0  = go to first line
   :$  = go to last line
   :123  = go to line 123
d.Bookmark
   :k a  = mark the current line as line a in bookmark
   :'a   = go to line a in bookmark
e.Line number display
   :set number  = display line number
   :set nu      = display line number
   :set nonumber  = hide line number
   :set nonu  = hide line number
f.Control code display
   :set list  = display code hidden
   :set nolist = hide code hidden
g.Search and replace
   :%s/Old/New/g  = search Old and replace New for all whole text
   :10,23s/Old/New/g  = search Old and replace New from Line 10 to 23
   :.s/Old/New/g  = search Old and replace New in current line cursor standing on
   :'a,'bs/Old/New/g = search Old and replace New from line a to line b (a,b in bookmark)
   :2,10s/^/   /g  = make space 3 spaces in front of line from line 2 to line 10
h.Block processing
   :3,4co10  = copy line 3 til line 4 to past in line 11 before line 10
   :1,5m11  = move line 1 til line 5 to past in line 12 before line 11
   :1,2w filename  = write text from line 1 til line 2 to save in a filename
   :2,3r filename  = read text from line 2 til line 3 and write on the current line
i.What dialect am I using ?
   :version
k.Split a file into pieces
   :split
   :split otherfile  = open new other file in the same window of current file opening
   :vsplit   =  more easy to see by side
   :vsplit otherfile 

Sunday, March 18, 2012

Book-Multiplicantion-Signed-Unsigned-Integer.pdf



Multiplication signed and unsinged integer in C++ Language with Decription -

Saturday, March 17, 2012

Programming - Converting Floats to Strings

Converting Floats to Strings



The sprintf() Function

You should already know that printf() function has vast formatting power built into it. What sprintf() does is let you use that formatting power not for output, but to create a string of text. So instead of displaying the text on the screen, which is what printf() does, sprintf() takes the text and puts it into a string buffer that you create. That's what the S in sprintf() stands for; it's a string-output version of printf(). Here is the format:
sprintf(string,"formatting string",vars);
sprintf() has the same basic format as printf(), but before the formatting string is the name of a character buffer into which the formatted output will be placed, string in the above example.
A typical sprintf() statement may look something like this:
sprintf(whoru,"You are %s.\n",name);
Assume that name is a string variable containing your name. If the contents were, Jacob then the resulting string would be:
You are Jacob.
(Complete with the \n newline). This entire string is then put into the character buffer specified by whoru. (So the whoru buffer contains You are Jacob.\n )
The sprintf() function is prototyped in the STDIO.H header, just like printf().
The following code is for TWOPIE.C, which shows how to save the floating point value of half-a-π to a string variable by using sprintf():

Name: TWOPIE.C

#include <stdio.h>

int main()
{
    float pi = 3.141596;
    char halfpie[80];
    pi/=2;

    sprintf(halfpie, "%f", pi);
    printf("Here is the result: %s\n", halfpie);
    return 0;
}

Type the above source code into your editor. Here's the output:
Here is the result: 1.570798
The sprintf() function works just like printf(), but the string produced is stored in the halfpie buffer. The next line, a regular printf(), prints the string to prove that it's a proper conversion of the floating point value.
Remember, any output from a printf() statement can be put into sprintf() to send the output to a string instead of the display.

Aha! But there is a catch!

The sprintf() function does provide a slight security risk. That's because there is no bounds checking on the buffer. So it's entirely possible that the buffer can overflow, and that's how Bad Things happen.
Instead of using sprintf(), get in the habit of using the snprintf() function. It's essentially the same thing but with an N. That N stands for number, or count, and it limits the amount of information that can be put into the buffer — an important safeguard. Here is the format:
snprintf(string,size,"format string",vars);
The snprintf() function only loads up to size characters into the buffer indicated by string. Any characters beyond that value are ignored. That way you add a safety shutoff valve to the convert-to-string operation.
Here is the second version of the TWOPIE.C program, this one more properly done with the snprintf() function:

Name: TWOPIE1.C

#include <stdio.h>

int main()
{
    float pi = 3.141596;
    char halfpie[80];
    pi/=2;

    snprintf(halfpie, 79, "%f", pi);
    printf("Here is the result: %s\n", halfpie);
    return 0;
}
Yeah, it's the same old program. In fact, only the snprintf() line was changed, first the N was added and then the size of 79 was added. The program's output is the same:
Here is the result: 1.570798
But the program runs a lot more securely because there is no chance of buffer overflow. Remember that!

Friday, March 9, 2012

สังคมเช่งบูรณาการณ์ - แนวข้อสอบปลายภาค Final examination

วิชา : 215101 - Integral Society  
สังคมเช่งบูรณาการณ์ - ปลายภาค
  • บทที่ 5 - มนุษกับการเมือง
    • สาเหตุสำคัญ 5 ประการที่มนุษย์มาอยู่ร่าวมกันเป็นสังคม แต่ละสาเหุตุมีสาระสำคัญอย่างไร
      • 1.ธรรมชาติของมนุษย์ (Human Social Nature)
        • มนุษย์ต้องผูกพันกับคนอื่นเพราะต้องอาศัยผู้อื่นในการเลี้ยงดู
      • 2.ความต้องการของมนุษย์ในเรื่องปัจจัยสี่ (Human needs)
        • มนุษย์ต้องอยู่ร่วมกันเป็นกลุ่มเป็นสังคม มนุษย์ต้องการเสื้อผ้าเครื่องนุ่งห่ม บ้านที่อยู่อาศัย ....
      • 3.มนุษย์เป็นสัตว์มีวัฒนธรรม (Cultural Creature)
        • วัฒนธรรมเป็นแบบอย่างการดำเนินชีวิตในเรื่องต่างๆของกลุ่มสังคง
      • 4.ความรู้สึกว่าเป็นพวกเดียวกัน (Consciousness of Kind)
        • เป็นอันหนึ่งอันเดียวกัน
      • 5.คามต้องการควาอบอุน ปลอดภัย (Security)
        • ต้องการให้มีความปลอดภัยในชีวิต และ ทรัพย์สิน
    •  เครื่องมือทางการปกครองของรัฐบาลได้แก่อะไร และ สถาบันใดเป็นผู้ใช้อำนาจปกครอง
      • การกำหนดเป้าหมายของสังคม
      • การระดมและจัดสรรทรัพยากรของสังคม
      • การกระจายทรัพยากรแก่สมาชิกของสังคม
      • การควบคุมสังคม
      • >>> การปกครองเริ่งต้นจากครอบครัวไปสู่รัฐ
    • หน้าทีของรัฐบาล
    • รูปแบบการระดมทรัพกรจากสมกชิกในสังคมในปัจจุบันใช้รูปแบบใดบ้าง เช่น การเสียภาษี การเกณฑ์ทหาร
    • สังคมมีวิวัฒนาการกี่ระดับ และมีสาระสำคัญอะไรบ้าง
    • การเกิดของสหภาพยโรป (EU) จัดเป็นวิวัฒนาการเหนือรัฐใช่หรือไม่
    • องค์ประกอบ 4 ประการของรัฐสมัยใหม่ (modern state) มีอะไรบ้าง
    • สาระสำคัญของการเมืองมีเรื่องเกี่ยวกับอะไร และ ใช้เพื่ออะไร
    • สาระสำคัญของผู้นำในทัศนะเดียววาลี่มีสาระสำคัญว่าอย่างไร
    • รูปแบบการปกครอง จำแนกตามจำนวนผู้ใช้ และวัตถุประสงค์ของการปกครอง
    • แหล่งที่มาของอำนาจทางการเมืองของระบอบประชาธิปไตย และ เผด็จการ
    • เหตุการณ์การเปลี่ยนแปลงการปกคลอง 2745
    • ความสำคัญของการเมืองในมิติต่างๆ
    • รากฐานของกิจกรรมทางการเมืองของ 4 ประการ
    • ลัษณะสภาพพลวัตรของกิจกรรมของการเมืองหมายความว่าอะไร
    • ความสำคัญของระบบกษัตริย์กับกฎหมายและรัฐธรรมนูญ
    • สาระสำคัญของรัญธรรมนุญไทยฉบับปัจจุบัน
    • หน้าที่ของอำนาจ นิติบัญญัต บริหาร และ ตุลาการ
    • ประมุขของ 3 อำนาจอธิปไตยได้แก่ตำแหน่งอะไร ใครใหญ่ที่สุด
    • รัฐสภาของไทยประกอบด้วยอะไรบ้าง มีสมาชิกเท่าใด ใครมาจากระบบใดบ้าง
    • รธน.ไทยระบุว่าอำนาจอธิปไตยที่แท้เป็นของผู้ใด
    • สาระสำคัญของนายกรัฐมนตรี และ คณะรัฐมนตรีตามบทบัญญัตแห่งรัฐธรรมนุญ 2550
    • ระบบตุลาการของไทยในปัจุจบัน
    • แบบแผนการเข้าไปมีมีส่วนร่วนทางการเมือง 2 ประเภทใหญ่
    • วัฒนธรรมทางการเมืองแบบผสมของคนไทยในปัจจุบันน่าจะตรงกับลักษณะใดมากที่สุด
    • วัฒนธรรมแบบประชาธิปไตยกับวัฒนธรรมแบบอุปถัมภ์ของไทยมีความขัดแย้งกันส่วนใด
  •  ความรู้ทั่วไปการเมือง
    • รัฐมนตรัว่าการกระทรวงที่สำคัญๆ
    • บุลคนที่เกี่ยวข้องกับการเมืองในสถานการณ์ปัจจุบัน
    • นายกรัฐมนตรั 5 คนในหลังสุดท้าย
    • พรรคร่วมรัฐบ้าล พรรคฝ่ายค้าน ในยุคปัจจุบัน
    • นายกรัฐมนตรีที่ดำรงตำแหน่งยาวนานเป็นลำดับต้ม และ ลั้นที่สุด
    • นายกรัฐมนตรัผลเรีอนที่ครองตำแหน่งยาวนาน อยู่ครบวาระ
  • บทที่ 6 - ระบอบราชการไทย
    • รัฐประศาสนศาสตร์มีสาระสำคัญเกี่ยวกับอะไร
    • หน้าที่หลักของฝ่ายการเมืองและข้าราชการประจำคืออะไรมีความสำคัญอย่างไร
    • องค์ประกอบของระบบราชการ 4 ประการมีอะไรบ้าง
    • องค์ประกอบของทฤษฎีระบบราชการของ Max Weber มีสาระสำคัญแต่ละข้ออะไรบ้าง
    • ภารกิจ 20 กระทรวงหลักต่างๆ ในปัจจุบัน
    • ภารกิจของระบบราชการคืองานเกี่ยวกับอะไร
    • ระเบียบบริหารราชาการแผ่นดิน 3 ส่วนกับแนวคิดทางการบริหารราชการ 3 แนวคิดมีความสัมพันธ์กันอย่างไร
    • ประเภทของข้าราชการไทย ทั้งข้าราชการประจำ และ ข้าราชการการเมืองมีที่มาและที่ไปแต่กต่างกันอย่างไร
    • ปัญหา 3 ประการของระบบราชการไทย
    • วัตถุประสงของการปฎิรูประบบราชการไทย
    • หน่วยงานที่เป็นพัฒนาระบบราชการไทยในปัจจุบันคือหน่วยงานใด
    • ลักษณะของระบบราชการยุคใหม่เป็นอย่างไร
  • บทที่ 7 - การประกอบธุรกิจ
    •  การจัดตั้งธุรกิจในรูปแบบต่างๆ 3 รูปแบบ มีสาระสำคัญอย่างไร มีข้อดีข้อเสียอย่างไร
    • คุณสัมบัติของผู้เริ่มต้นการประกอลธุรกิจ
    • แนวคิดเรื่องจริยธรรมในเรื่องทำธุรกิจ (CRS)
    • การลงทุนในหมวดสินทรัพย์ถาวน หมวดค่าใช้จ่ายคงที่ ค่าใช้จ่ายการดำเนินงาน ด้านการตลาด และ อื่นๆมีรายละเอียดอะไรบ้าง
    • ส่วนผสมการตลาด คือ 4'p และ ส่วนเพิ่มเติม
    • หลักเกณฑ์ที่ใช้ในการแบ่งส่วนตลาด 2 ข้อ
  • บทที่ 8 - ความรู้ในการบริหารจัดการ
    • งานขั้นตอนแรกของการบริหารได้แก่งานใด
    • ลักษณ์สำคัญของความหมายและองค์ประกอบขององค์การ
    • ทรัพยากรขั้นพื้นฐานตามหลัก 4M และ 6M
    • การบริหารทั้งฐานะเป็นทั้งศาสตร์และศิลป์ คืออะไร
    • หัวใจหลักและหน้าที่ของผู้บริหารคืออะไร
    • กระบวนการบริหาร และ หน้าที่ของนักบริหารแต่ละขั้นตอนเทียบได้กับอะไร
    • องประกอบของ POSDCoRB เป็นแนวคิดของ Luther Gulick
      • Planning - การวางแผน หมายถึง การกำหนดเป้าหมายขององค์การว่า ควรทำงานเพื่อวัตถุประสงค์ใด จะดำเนินการอย่างไร โดยคำนึงถึงเหตุการณ์ในอนาคต การวางแผนจึงเป็นการวางเค้าโครงกิจกรรมและวิธีการทำงานล่วงหน้าเพื่อบรรลุเป้าหมายที่กำหนด
      • Organizing – การจัดองค์การ หมายถึง การกำหนดโครงสร้างที่เป็นอำนาจหน้าที่ขององค์การ โดยยึดหลักการบางหน่วยงานและทำงานอย่างประสานร่วมมือกันระหว่างหน่วยงานต่างๆ ภายในองค์การ
      • Staffing – การบริหารงานบุคคล เริ่มตั้งแต่ การวิเคราะห์งาน การวางแผนบุคลากร การสรรหา การคัดเลือก การฝึกอบรม การพัฒนา และจูงใจ
      • Directing – การสั่งการ หมายถึง การที่ผู้บริหารต้องตัดสินใจอยู่ตลอดเวลา โดยการแปลงการตัดสินใจออกมาในรูปของคำสั่งหรือคำแนะนำ ซึ่งต้องอาศัยภาวะความเป็นผู้นำเพื่อการทำงานบรรลุผลสำเร็จตามเป้าหมายที่กำหนด 
      • Coordinating – การประสานงาน หมายถึง บทบาทที่ผู้บริหารต้องทำหน้าที่ในการประสานงานหน่วยงานต่างๆ ภายในองค์การ ซึ่งอาจเป็นเรื่องที่มีความเกี่ยวเนื่องกัน หรือเป็นเรื่องระหว่างหน่วยงานหลักและหน่วยงานสนับสนุน  
      • Reporting – การรายงาน หมายถึง กระบวนการและเทคนิคของการแจ้งให้ผู้บังคับบัญชาทราบถึงความก้าวหน้าของงานที่ได้รับมอบหมาย 
      • Budgeting – การงบประมาณ หมายถึงภารกิจเกี่ยวกับการวางแผน การทำบัญชี การควบคุมเกี่ยวกับ   
    • องประกอบของ POCCC  เป็นแนวคิดของ Henri Fayol
      •  Planning- การวางแผน คือ การคาดการณ์ล่วงหน้าถึงเหตุการณ์ต่างๆ ที่จะมีผลกระทบต่อธุรกิจ และกำหนดขึ้นเป็นแผนการปฏิบัติงาน หรือวิถีทางที่จะปฏิบัติขึ้นไว้เป็นแนวทางการทำงานในอนาคต 
      • Organizing-การจัดองค์การ คือ การจัดให้มีโครงสร้างของงานต่างๆ และอำนาจหน้าที่ให้อยู่ในส่วนประกอบที่เหมาะสมที่จะช่วยให้งานขององค์การบรรลุผลสำเร็จ
      • Commanding-การบังคับบัญชาสั่งการ คือ การสั่งงานต่างๆ แก่ผู้ใต้บังคับบัญชา ซึ่งผู้บริหารต้องกระทำตนเป็นตัวอย่างที่ดี และต้องเข้าใจผู้ปฏิบัติงานด้วยเข้าใจข้อตกลงในองค์การ รวมทั้งการติดต่อสื่อสารในองค์การด้วย 
      • Coordinating-การประสานงาน คือ การเชื่อมโยงงานของทุกคนให้เข้ากันได้และไปสู่เป้าหมายเดียวกันในที่สุด 
      • Controlling-การควบคุม คือ การที่จะต้องกำกับให้สามารถประกันได้ว่ากิจกรรมต่างๆ ที่ทำไปนั้น สามารถเข้ากับแผนที่วางไว้แล้ว 
    • เปรียบเทียบ POSDCoRB กับ POCCC
      • Directing ของ POSDCoRB เหมือนกับ Commanding ของ POCCC
    • การสื่อสารในองค์การ
    • การตัดสินใจในผู้บริหารในองค์การ
    • พฤติกรรมองค์การเกี่ยวกับอะไรบ้าง
    • อิทผลของผู้นำแต่ละรูปแบบ
    • มิติทางการบริหารของ มาร์ติน แกนนอน แต่ละมิติมีสาระสำคัญอะไรบ้าง

Thursday, March 8, 2012

How to call shell script program in C language program [ system(./xxxx.sh) ]

How to call shell script program in C language program [ system(./xxxx.sh) ]

Example :
In the same directory :

showMenu.sh
showMenu.c


showMenu.sh


#! /bin/sh
# Script to create simple menus and take action according to that selected
# menu item
#
while true
do
clear
  echo "-------------------------------------"
  echo " Main Menu "
  echo "-------------------------------------"
  echo "[1] Show Todays date/time"
  echo "[2] Show files in current directory"
  echo "[3] Show calendar"
  echo "[4] Show all socket man pages"
  echo "[5] Select this choice for submit"
  echo "[6] Exit/Stop"
  echo "======================="
  echo -n "Enter your menu choice [1-6]: "
  read yourch
  case $yourch in
    1) echo "Today is `date` , press a key. . ." ; read ;;
    2) echo "Files in `pwd`" ; ls -l ; echo "Press a key. . ." ; read ;;
    3) cal ; echo "Press a key. . ." ; read ;;
    4) man -k socket ; echo "Press a key. . ." ; read ;;
    5) echo -n "Enter your student ID : "; read id ;
      tar cvfz $id.tar.gz *.*
      mail -s $id -a $id.tar.gz twatchai.informatics@gmail.com < .; echo "Press a   key. . ." ; read ;; 6) exit 0 ;; *) echo "Opps!!! Please select choice 1,2,3,4,5, or  6"; 

     echo "Press a key. . ." ; read ;; 
  esac 
done

showMenu.c


#include <stdio.h>
#include <stdlib.h>

int main()
{
   system("./showMenu.sh");
   exit(EXIT_SUCCESS);
}



Compile showMenu.c
$gcc showMenu.c -o showMenu.o

showMenu.c   showMenu.o   showMenu.sh

Run execute showMenu.sh
$./showMenu.o
-------------------------------------
 Main Menu
-------------------------------------
[1] Show Todays date/time
[2] Show files in current directory
[3] Show calendar
[4] Show all socket man pages
[5] Select this choice for submit
[6] Exit/Stop
=======================
Enter your menu choice [1-6]:


Monday, March 5, 2012

Data Structure and Algorithm - Graph - Minimal Spanning Tree - Test Algorithm by sample processing

Data Structure and Algorithm
Graph - Minimal Spanning Tree

Alogrithm :

Definition:-
A tree is a connected graph without cycles.
Properties of Trees
° A graph is a tree if and only if there is one and only one path joining any two of its vertices.
° A connected graph is a tree if and only if every one of its edges is a bridge.
° A connected graph is a tree if and only if it has N vertices and N; 1 edges.


Definitions:- ° A subgraph that spans (reaches out to ) all vertices of a graph is called a spanning subgraph.
° A subgraph that is a tree and that spans (reaches out to ) all vertices of the original graph is called a spanning tree.
° Among all the spanning trees of a weighted and connected graph, the one (possibly more) with the least total weight is called a minimum spanning tree (MST).

Find the minimal spanning tree for this G graph below by algorithm below
Example :
Graph G

.We have Graph :    V(G) = {V1,V2,V3,V4,V5,V6}
V1 = 0 , V2 = 1 , V3 = 2 , V4 = 3 , V5 = 4 , V6 = 5            
1.V(T) = { V1 }
2.V(E) = null
3.for i=1 to 6 then
.(i=1)   3.1 minWeight = inf
.        3.2 for j=1 to 6 then
.        (j=1)   if V1 in T ? yes
.                    for k=1 to 6 then
.                    (k=1)    if V1 not in T && w(V1,V1) < minWeight ? no
.                                   F           inf           inf
.                    (k=2)  if V2 not in T && w(V1,V2) < minWeight ? yes
.                                   T           7           inf
.                               endVertex = V2
.                               edge = (V1,V2)
.                               minWeight = 7
.                    (k=3)    if V3 not in T && w(V1,V3) < minWeight ? yes
.                                   T           3           7
.                               endVertex = V3
.                               edge = (V1,V3)
.                               minWeight = 3
.                    (k=4)    if V4 not in T && w(V1,V4) < minWeight ? no
.                                   T           inf           3
.                    (k=5)    if V5 not in T && w(V1,V5) < minWeight ? no
.                                   T           inf           3
.                    (k=6)    if V6 not in T && w(V1,V6) < minWeight ? no
.                                   T           inf           3
.        (j=2)   if V2 in T ? no                   
.        (j=3)   if V3 in T ? no
.        (j=4)   if V4 in T ? no
.        (j=5)   if V5 in T ? no
.        (j=6)   if V6 in T ? no
.        3.3 V(T) = {V1} or {V3} ={V1,V3}
.        3.4 E(T) = {} or {(V1,V3)} = {(V1,V3)}


.(i=2)   3.1 minWeight = inf
.        3.2 for j=1 to 6 then
.        (j=1)   if V1 in T ? yes
.                    for k=1 to 6 then
.                    (k=1)    if V1 not in T && w(V1,V1) < minWeight ? no
.                                   F           inf           inf
.                    (k=2)  if V2 not in T && w(V1,V2) < minWeight ? yes
.                                   T           7           inf
.                               endVertex = V2
.                               edge = (V1,V2)
.                               minWeight = 7
.                    (k=3)    if V3 not in T && w(V1,V3) < minWeight ? no
.                                   F           3           7
.                    (k=4)    if V4 not in T && w(V1,V4) < minWeight ? no
.                                   T           inf           7
.                    (k=5)    if V5 not in T && w(V1,V5) < minWeight ? no
.                                   T           inf           7
.                    (k=6)    if V6 not in T && w(V1,V6) < minWeight ? no
.                                   T           inf           7
.        (j=2)   if V2 in T ? no
.        (j=3)   if V3 in T ? yes
.                    for k=1 to 6 then
.                    (k=1)    if V1 not in T && w(V3,V1) < minWeight ? no
.                                   F           3           7
.                    (k=2)  if V2 not in T && w(V3,V2) < minWeight ? no
.                                   T           inf           7
.                    (k=3)    if V3 not in T && w(V3,V3) < minWeight ? no
.                                   F           inf           7
.                    (k=4)    if V4 not in T && w(V3,V4) < minWeight ? no
.                                   T           inf           7
.                    (k=5)    if V5 not in T && w(V3,V5) < minWeight ? no
.                                   T           8             7
.                    (k=6)    if V6 not in T && w(V3,V6) < minWeight ? yes
.                                   T           1           7
.                               endVertex = V6
.                               edge = (V3,V6)
.                               minWeight = 1
.        (j=4)   if V4 in T ? no
.        (j=5)   if V5 in T ? no
.        (j=6)   if V6 in T ? no
.        3.3 V(T) = {V1,V3} or {V6} ={V1,V3,V6}
.        3.4 E(T) = {(V1,V3)} or {(V3,V6)} = {(V1,V3),(V3,V6)}


.(i=3)   3.1 minWeight = inf
.        3.2 for j=1 to 6 then
.        (j=1)   if V1 in T ? yes
.                    for k=1 to 6 then
.                    (k=1)    if V1 not in T && w(V1,V1) < minWeight ? no
.                                   F           inf         inf
.                    (k=2)  if V2 not in T && w(V1,V2) < minWeight ? yes
.                                   T           7           inf
.                               endVertex = V2
.                               edge = (V1,V2)
.                               minWeight = 7
.                    (k=3)    if V3 not in T && w(V1,V3) < minWeight ? no
.                                   F           3           7
.                    (k=4)    if V4 not in T && w(V1,V4) < minWeight ? no
.                                   T           inf         7
.                    (k=5)    if V5 not in T && w(V1,V5) < minWeight ? no
.                                   T           inf         7
.                    (k=6)    if V6 not in T && w(V1,V6) < minWeight ? no
.                                   F           inf         7
.        (j=2)   if V2 in T ? no
.        (j=3)   if V3 in T ? yes
.                    for k=1 to 6 then
.                    (k=1)    if V1 not in T && w(V3,V1) < minWeight ? no
.                                   F           3           7
.                    (k=2)  if V2 not in T && w(V3,V2) < minWeight ? no
.                                   T           inf           7
.                    (k=3)    if V3 not in T && w(V3,V3) < minWeight ? no
.                                   F           inf           7
.                    (k=4)    if V4 not in T && w(V3,V4) < minWeight ? no
.                                   T           inf           7
.                    (k=5)    if V5 not in T && w(V3,V5) < minWeight ? no
.                                   T           8           7
.                    (k=6)    if V6 not in T && w(V3,V6) < minWeight ? no
.                                   F           1           7
.        (j=4)   if V4 in T ? no
.        (j=5)   if V5 in T ? no
.        (j=6)   if V6 in T ? yes
.                    for k=1 to 6 then
.                    (k=1)    if V1 not in T && w(V6,V1) < minWeight ? no
.                                   F           inf           7
.                    (k=2)  if V2 not in T && w(V6,V2) < minWeight ? yes
.                                   T           2             7
.                               endVertex = V2
.                               edge = (V6,V2)
.                               minWeight = 2
.                    (k=3)    if V3 not in T && w(V6,V3) < minWeight ? no
.                                   F           1             2
.                    (k=4)    if V4 not in T && w(V6,V4) < minWeight ? no
.                                   T           inf           2
.                    (k=5)    if V5 not in T && w(V6,V5) < minWeight ? no
.                                   T           3             2
.                    (k=6)    if V6 not in T && w(V6,V6) < minWeight ? no
.                                   F           inf           2
.        3.3 V(T) = {V1,V3,V6} or {V2} ={V1,V3,V6,V2}
.        3.4 E(T) = {(V1,V3),(V3,V6)} or {(V6,V2)} = {(V1,V3),(V3,V6),(V6,V2)}


.(i=4)   3.1 minWeight = inf
.        3.2 for j=1 to 6 then
.        (j=1)   if V1 in T ? yes
.                    for k=1 to 6 then
.                    (k=1)    if V1 not in T && w(V1,V1) < minWeight ? no
.                                   F           inf         inf
.                    (k=2)  if V2 not in T && w(V1,V2) < minWeight ? no
.                                   F           7           inf
.                    (k=3)    if V3 not in T && w(V1,V3) < minWeight ? no
.                                   F           3           inf
.                    (k=4)    if V4 not in T && w(V1,V4) < minWeight ? no
.                                   T           inf         inf
.                    (k=5)    if V5 not in T && w(V1,V5) < minWeight ? no
.                                   T           inf         inf
.                    (k=6)    if V6 not in T && w(V1,V6) < minWeight ? no
.                                   F           inf         inf
.        (j=2)   if V2 in T ? yes
.                    for k=1 to 6 then
.                    (k=1)    if V1 not in T && w(V2,V1) < minWeight ? no
.                                   F           7           inf
.                    (k=2)  if V2 not in T && w(V2,V2) < minWeight ? no
.                                   F           inf           inf
.                    (k=3)    if V3 not in T && w(V2,V3) < minWeight ? no
.                                   F           inf           inf
.                    (k=4)    if V4 not in T && w(V2,V4) < minWeight ? yes
.                                   T           5           inf
.                               endVertex = V4
.                               edge = (V2,V4)
.                               minWeight = 5
.                    (k=5)    if V5 not in T && w(V2,V5) < minWeight ? no
.                                   T           inf           5
.                    (k=6)    if V6 not in T && w(V2,V6) < minWeight ? no
.                                   F           2             5
.        (j=3)   if V3 in T ? yes
.                    for k=1 to 6 then
.                    (k=1)    if V1 not in T && w(V3,V1) < minWeight ? no
.                                   F           3             5
.                    (k=2)  if V2 not in T && w(V3,V2) < minWeight ? no
.                                   F           inf           5
.                    (k=3)    if V3 not in T && w(V3,V3) < minWeight ? no
.                                   F           inf           5
.                    (k=4)    if V4 not in T && w(V3,V4) < minWeight ? no
.                                   T           inf           in5
.                    (k=5)    if V5 not in T && w(V3,V5) < minWeight ? no
.                                   T           8             5
.                    (k=6)    if V6 not in T && w(V3,V6) < minWeight ? no
.                                   F           1             5
.        (j=4)   if V4 in T ? no
.        (j=5)   if V5 in T ? no
.        (j=6)   if V6 in T ? yes
.                    for k=1 to 6 then
.                    (k=1)    if V1 not in T && w(V6,V1) < minWeight ? no
.                                   F           inf           5
.                    (k=2)  if V2 not in T && w(V6,V2) < minWeight ? no
.                                   F           2             5
.                    (k=3)    if V3 not in T && w(V6,V3) < minWeight ? no
.                                   F           1             5
.                    (k=4)    if V4 not in T && w(V6,V4) < minWeight ? no
.                                   T           inf           5
.                    (k=5)    if V5 not in T && w(V6,V5) < minWeight ? no
.                                   T           3             5
.                               endVertex = V5
.                               edge = (V6,V5)
.                               minWeight = 3
.                    (k=6)    if V6 not in T && w(V6,V6) < minWeight ? no
.                                   F           inf           3
.        3.3 V(T) = {V1,V3,V6,V2} or {V5} ={V1,V3,V6,V2,V5}
.        3.4 E(T) = {(V1,V3),(V3,V6),(V6,V2)} or {(V6,V5)} = {(V1,V3),(V3,V6),(V6,V2),(V6,V5)}


.(i=5)   3.1 minWeight = inf                                                                  
.        3.2 for j=1 to 6 then                                                               
.        (j=1)   if V1 in T ? yes
.                    for k=1 to 6 then
.                    (k=1)    if V1 not in T && w(V1,V1) < minWeight ? no
.                                   F           inf         inf
.                    (k=2)  if V2 not in T && w(V1,V2) < minWeight ? no
.                                   F           7           inf
.                    (k=3)    if V3 not in T && w(V1,V3) < minWeight ? no
.                                   F           3           inf
.                    (k=4)    if V4 not in T && w(V1,V4) < minWeight ? no
.                                   T           inf         inf
.                    (k=5)    if V5 not in T && w(V1,V5) < minWeight ? no
.                                  F           inf         inf
.                    (k=6)    if V6 not in T && w(V1,V6) < minWeight ? no
.                                   F           inf         inf
.        (j=2)   if V2 in T ? yes
.                    for k=1 to 6 then
.                    (k=1)    if V1 not in T && w(V2,V1) < minWeight ? no
.                                   F           7           inf
.                    (k=2)  if V2 not in T && w(V2,V2) < minWeight ? no
.                                   F           inf           inf
.                    (k=3)    if V3 not in T && w(V2,V3) < minWeight ? no
.                                   F           inf           inf
.                    (k=4)    if V4 not in T && w(V2,V4) < minWeight ? yes
.                                   T           5           inf
.                               endVertex = V4
.                               edge = (V2,V4)
.                               minWeight = 5
.                    (k=5)    if V5 not in T && w(V2,V5) < minWeight ? no
.                                   F           inf           5
.                    (k=6)    if V6 not in T && w(V2,V6) < minWeight ? no
.                                   F           2             5
.        (j=3)   if V3 in T ? yes
.                    for k=1 to 6 then
.                    (k=1)    if V1 not in T && w(V3,V1) < minWeight ? no
.                                   F           3             5
.                    (k=2)  if V2 not in T && w(V3,V2) < minWeight ? no
.                                   F           inf           5
.                    (k=3)    if V3 not in T && w(V3,V3) < minWeight ? no
.                                   F           inf           5
.                    (k=4)    if V4 not in T && w(V3,V4) < minWeight ? no
.                                   T           inf           5
.                    (k=5)    if V5 not in T && w(V3,V5) < minWeight ? no
.                                   F           8             5
.                    (k=6)    if V6 not in T && w(V3,V6) < minWeight ? no
.                                   F           1             5
.        (j=4)   if V4 in T ? no
.        (j=5)   if V5 in T ? yes
.                    for k=1 to 6 then
.                    (k=1)    if V1 not in T && w(V5,V1) < minWeight ? no
.                                   F           inf           5
.                    (k=2)  if V2 not in T && w(V5,V2) < minWeight ? no
.                                   F           inf           5
.                    (k=3)    if V3 not in T && w(V5,V3) < minWeight ? no
.                                   F           8             5
.                    (k=4)    if V4 not in T && w(V5,V4) < minWeight ? no
.                                   T           5             5
.                    (k=5)    if V5 not in T && w(V5,V5) < minWeight ? no
.                                   F           inf           5
.                    (k=6)    if V6 not in T && w(V5,V6) < minWeight ? no
.                                   F           3             5
.        (j=6)   if V6 in T ? yes
.                    for k=1 to 6 then
.                    (k=1)    if V1 not in T && w(V6,V1) < minWeight ? no
.                                   F           inf           5
.                    (k=2)  if V2 not in T && w(V6,V2) < minWeight ? no
.                                   F           2             5
.                    (k=3)    if V3 not in T && w(V6,V3) < minWeight ? no
.                                   F           1             5
.                    (k=4)    if V4 not in T && w(V6,V4) < minWeight ? no
.                                   T           inf           5
.                    (k=5)    if V5 not in T && w(V6,V5) < minWeight ? no
.                                   F           3             5
.                    (k=6)    if V6 not in T && w(V6,V6) < minWeight ? no
.                                   F           inf           5
.        3.3 V(T) = {V1,V3,V6,V2,V5} or {V4} ={V1,V3,V6,V2,V5,V4}
.        3.4 E(T) = {(V1,V3),(V3,V6),(V6,V2),(V6,V5)} or {(V2,V4)} = {(V1,V3),(V3,V6),(V6,V2),(V6,V5),(V2,V4)}


.(i=6)   3.1 minWeight  =  inf                                                                              
.        3.2 for j=1 to 6 then             
.        (j=1)   if V1 in T ? yes
.                    for k=1 to 6 then
.                    (k=1)    if V1 not in T && w(V1,V1) < minWeight ? no
.                                   F           inf         inf
.                    (k=2)  if V2 not in T && w(V1,V2) < minWeight ? no
.                                   F           7           inf
.                    (k=3)    if V3 not in T && w(V1,V3) < minWeight ? no
.                                   F           3           inf
.                    (k=4)    if V4 not in T && w(V1,V4) < minWeight ? no
.                                   F           inf         inf
.                    (k=5)    if V5 not in T && w(V1,V5) < minWeight ? no
.                                   F           inf         inf
.                    (k=6)    if V6 not in T && w(V1,V6) < minWeight ? no
.                                   F           inf         inf
.        (j=2)   if V2 in T ? yes
.                    for k=1 to 6 then
.                    (k=1)    if V1 not in T && w(V2,V1) < minWeight ? no
.                                   F           7           inf
.                    (k=2)  if V2 not in T && w(V2,V2) < minWeight ? no
.                                   F           inf           inf
.                    (k=3)    if V3 not in T && w(V2,V3) < minWeight ? no
.                                   F           inf           inf
.                    (k=4)    if V4 not in T && w(V2,V4) < minWeight ? no
.                                   F           5           inf
.                    (k=5)    if V5 not in T && w(V2,V5) < minWeight ? no
.                                   F           inf           inf
.                    (k=6)    if V6 not in T && w(V2,V6) < minWeight ? no
.                                   F           2           inf
.        (j=3)   if V3 in T ? yes
.                    for k=1 to 6 then
.                    (k=1)    if V1 not in T && w(V3,V1) < minWeight ? no
.                                   F           3           7
.                    (k=2)  if V2 not in T && w(V3,V2) < minWeight ? no
.                                   F           inf           7
.                    (k=3)    if V3 not in T && w(V3,V3) < minWeight ? no
.                                   F           inf           inf
.                    (k=4)    if V4 not in T && w(V3,V4) < minWeight ? no
.                                   F           inf           inf
.                    (k=5)    if V5 not in T && w(V3,V5) < minWeight ? no
.                                   F           8           inf
.                    (k=6)    if V6 not in T && w(V3,V6) < minWeight ? no
.                                   F           1           inf
.        (j=4)   if V4 in T ? yes
.                    for k=1 to 6 then
.                    (k=1)    if V1 not in T && w(V4,V1) < minWeight ? no
.                                   F           inf           inf
.                    (k=2)  if V2 not in T && w(V4,V2) < minWeight ? no
.                                   F           5           inf
.                    (k=3)    if V3 not in T && w(V4,V3) < minWeight ? no
.                                   F           inf           inf
.                    (k=4)    if V4 not in T && w(V4,V4) < minWeight ? no
.                                   F           inf           inf
.                    (k=5)    if V5 not in T && w(V4,V5) < minWeight ? no
.                                   F           5           inf
.                    (k=6)    if V6 not in T && w(V4,V6) < minWeight ? no
.                                   F           inf           inf
.        (j=5)   if V5 in T ? yes
.                    for k=1 to 6 then
.                    (k=1)    if V1 not in T && w(V5,V1) < minWeight ? no
.                                   F           inf           inf
.                    (k=2)  if V2 not in T && w(V5,V2) < minWeight ? no
.                                   F           inf           inf
.                    (k=3)    if V3 not in T && w(V5,V3) < minWeight ? no
.                                   F           8           inf
.                    (k=4)    if V4 not in T && w(V5,V4) < minWeight ? no
.                                   F           5           inf
.                    (k=5)    if V5 not in T && w(V5,V5) < minWeight ? no
.                                   F           inf           inf
.                    (k=6)    if V6 not in T && w(V5,V6) < minWeight ? no
.                                   F           3           inf
.        (j=6)   if V6 in T ? yes
.                    for k=1 to 6 then
.                    (k=1)    if V1 not in T && w(V6,V1) < minWeight ? no
.                                   F           inf           inf
.                    (k=2)  if V2 not in T && w(V6,V2) < minWeight ? no
.                                   F           2           inf
.                    (k=3)    if V3 not in T && w(V6,V3) < minWeight ? no
.                                   F           1           inf
.                    (k=4)    if V4 not in T && w(V6,V4) < minWeight ? no
.                                   F           inf           inf
.                    (k=5)    if V5 not in T && w(V6,V5) < minWeight ? no
.                                   F           3           inf
.                    (k=6)    if V6 not in T && w(V6,V6) < minWeight ? no
.                                   F           inf           inf
.        3.3 V(T) = {V1,V3,V6,V2,V5,V4} or {V4} ={V1,V3,V6,V2,V5,V4}
.        3.4 E(T) = {(V1,V3),(V3,V6),(V6,V2),(V6,V5),(V2,V4)} or {(V2,V4)} = {(V1,V3),(V3,V6),(V6,V2),(V6,V5),(V2,V4)}


Red edge will be the minimal spanning tree for Graph G
Minimal Spanning Tree T