Geekpedia Tutorials Home

Building a C# Chat Client and Server

Building a C# Chat Client and ServerA step by step tutorial teaching you how to create your own chat client and chat server easily in C#, for local networks or the Internet.

in C# Programming Tutorials

Getting Hard Drive Information

Getting Hard Drive InformationA C# tutorial showing you how to make use of WMI to extract information on disk drives, such as model, capacity, sectors and serial number.

in C# Programming Tutorials

UPS Shipping Calculator

UPS Shipping CalculatorThis tutorial will teach you how to calculate the shipping cost based on the weight, height, length and depth of the box, the distance and the UPS service type.

in PHP Programming Tutorials

Create Your Own Rich Text Editor

Create Your Own Rich Text EditorCreating a Rich Text Editor using JavaScript is easier to do than you might think, thanks to the support of modern browsers; this tutorial will walk you through it.

in JavaScript Programming Tutorials
Search
Tutorials
Programming Tutorials
IT Jobs
From CareerBuilder

Quicksort algorithm and character count

This C++ console application accepts a string as input and after storing them in a character array, sorts them alphabetically using the quicksort algorithm. It also counts the number of character occurences in the string.

On Wednesday, September 12th 2007 at 11:28 PM
By Andrew Pociu (View Profile)
*****   (Rated 4.8 with 4 votes)
Contextual Ads
More C++ Resources
Advertisement
  1. #include <iostream>
  2.  
  3. using namespace std;
  4.  
  5. int preProcess(char *, int);
  6. void quickSort(char *, int, int);
  7. int partition(char *, int, int);
  8. void swap(int &, int &);
  9. void specialSort(char *, int, int);
  10. void genReport(char *, int);
  11. // Checks if the user was planning to quit
  12. bool isQuit(char *);
  13. const int stringSize = 255;
  14.  
  15. int main()
  16. {
  17.     char toCheck[stringSize];
  18.     // Do while the user doesn't enter ~quit
  19.     do
  20.     {
  21.          cout << "Ready: ";
  22.          cin.getline(toCheck, sizeof(toCheck));
  23.          
  24.          // Strip spaces
  25.          int newSize = preProcess(toCheck, strlen(toCheck));
  26.          
  27.          // New array with new size
  28.          char newToCheck[newSize];
  29.          // Loop to fill the new array
  30.          for(int n = 0; n < newSize; n++)
  31.          {
  32.              newToCheck[n] = toCheck[n];
  33.          }
  34.          newToCheck[newSize] = '\0';
  35.          // Check if the user choosed to quit
  36.          if(isQuit(newToCheck))
  37.          {
  38.              return false;
  39.          }
  40.          
  41.          // Separate a to z into another array
  42.          char alphaLower[newSize];
  43.          int n = 0;
  44.          for(int i = 0; i < newSize; i++)
  45.          {
  46.              if((int)newToCheck[i] >= 97 && (int)newToCheck[i] <= 122)
  47.              {
  48.                  alphaLower[n] = newToCheck[i];
  49.                  n++;
  50.              }
  51.          }
  52.          // Copy the new array into a smaller one
  53.          char alphaLowerNew[n];
  54.          for(int i = 0; i < n; i++)
  55.          {
  56.              alphaLowerNew[i] = alphaLower[i];
  57.          }
  58.          alphaLowerNew[n] = '\0';
  59.          // Sort a to z
  60.          quickSort(alphaLowerNew, 97, 122);
  61.          
  62.          // Separate 0 to 9 into another array
  63.          char nums[newSize];
  64.          n = 0;
  65.          for(int i = 0; i < newSize; i++)
  66.          {
  67.              if((int)newToCheck[i] >= 48 && (int)newToCheck[i] <= 57)
  68.              {
  69.                  nums[n] = newToCheck[i];
  70.                  n++;
  71.              }
  72.          }
  73.          // Copy the new array into a smaller one
  74.          char numsNew[n];
  75.          for(int i = 0; i < n; i++)
  76.          {
  77.              numsNew[i] = nums[i];
  78.          }
  79.          numsNew[n] = '\0';
  80.          // Sort 0 to 9
  81.          quickSort(numsNew, 48, 57);
  82.          
  83.          // Separate A to Z into another array
  84.          char alphaUpper[newSize];
  85.          n = 0;
  86.          for(int i = 0; i < newSize; i++)
  87.          {
  88.              if((int)newToCheck[i] >= 65 && (int)newToCheck[i] <= 90)
  89.              {
  90.                  alphaUpper[n] = newToCheck[i];
  91.                  n++;
  92.              }
  93.          }
  94.          // Copy the new array into a smaller one
  95.          char alphaUpperNew[n];
  96.          for(int i = 0; i < n; i++)
  97.          {
  98.              alphaUpperNew[i] = alphaUpper[i];
  99.          }
  100.          alphaUpperNew[n] = '\0';
  101.          // Sort A to Z
  102.          quickSort(alphaUpperNew, 65, 90);
  103.          
  104.          // Separate remaining characters into another array
  105.          char specialChars[newSize];
  106.          n = 0;
  107.          for(int i = 0; i < newSize; i++)
  108.          {
  109.              if((int)newToCheck[i] == 63 || (int)newToCheck[i] == 33 || (int)newToCheck[i] == 44 || (int)newToCheck[i] == 35 || (int)newToCheck[i] == 42 || (int)newToCheck[i] == 46)
  110.              {
  111.                  specialChars[n] = newToCheck[i];
  112.                  n++;
  113.              }
  114.          }
  115.          // Copy the new array into a smaller one
  116.          char specialCharsNew[n];
  117.          for(int i = 0; i < n; i++)
  118.          {
  119.              specialCharsNew[i] = specialChars[i];
  120.          }
  121.          specialCharsNew[n] = '\0';
  122.          // Sort ?, !, etc
  123.          specialSort(specialCharsNew, sizeof(specialCharsNew), 46);
  124.          specialSort(specialCharsNew, sizeof(specialCharsNew), 42);
  125.          specialSort(specialCharsNew, sizeof(specialCharsNew), 35);
  126.          specialSort(specialCharsNew, sizeof(specialCharsNew), 43);
  127.          specialSort(specialCharsNew, sizeof(specialCharsNew), 33);
  128.          specialSort(specialCharsNew, sizeof(specialCharsNew), 63);
  129.          
  130.          // Count the new size of the final array
  131.          int newBigSize = sizeof(specialCharsNew) + sizeof(alphaLowerNew) + sizeof(numsNew) + sizeof(alphaUpperNew);
  132.          // Build one array out of the three
  133.          char bigArray[newBigSize - 1];
  134.          int bigIndex = 0;
  135.          for(int i = 0; i < sizeof(alphaLowerNew); i++)
  136.          {
  137.              bigArray[bigIndex] = alphaLowerNew[i];
  138.              bigIndex++;
  139.          }
  140.          for(int i = 0; i < sizeof(numsNew); i++)
  141.          {
  142.              bigArray[bigIndex] = numsNew[i];
  143.              bigIndex++;
  144.          }
  145.          for(int i = 0; i < sizeof(alphaUpperNew); i++)
  146.          {
  147.              bigArray[bigIndex] = alphaUpperNew[i];
  148.              bigIndex++;
  149.          }
  150.          for(int i = 0; i < sizeof(specialCharsNew); i++)
  151.          {
  152.              bigArray[bigIndex] = specialCharsNew[i];
  153.              bigIndex++;
  154.          }
  155.          bigArray[newBigSize] = '\0';
  156.          genReport(bigArray, newBigSize);
  157.          cout << "\n\n";
  158.     }
  159.     while(true);
  160.     system("PAUSE");
  161.     return 0;
  162. }
  163.  
  164. void genReport(char* toRep, int size)
  165. {
  166.     int report[256];
  167.     // Initialize the array to 0
  168.     for(int n = 0; n < 256; n++)
  169.     {
  170.         report[n] = 0;
  171.     }
  172.     // Generate the report
  173.     for(int n = 0; n < size; n++)
  174.     {
  175.         report[(int)toRep[n]]++;
  176.     }
  177.     // Display the report
  178.     for(int n = 0; n < 256; n++)
  179.     {
  180.         if(report[n] > 0)
  181.         {
  182.              cout << char(n) << ": " << report[n] << "\n";
  183.         }
  184.     }
  185. }
  186.  
  187. void specialSort(char* toSort, int size, int charAscii)
  188. {
  189.     char tempValue[1];
  190.     int currValue, minIndex, minValue;
  191.     for(int n = 0; n < (size - 1); n++)
  192.     {
  193.         minIndex = n;
  194.         minValue = toSort[n];
  195.         for(int i = n + 1; i < size; i++)
  196.         {
  197.             if(toSort[i] == charAscii)
  198.             {
  199.                  minIndex = i;
  200.                  minValue = toSort[i];
  201.             }
  202.         }
  203.         toSort[minIndex] = toSort[n];
  204.         toSort[n] = minValue;
  205.     }
  206. }
  207.  
  208. void quickSort(char set[], int start, int end)
  209. {
  210.     char newSet[end];
  211.     int pivotPoint;
  212.     if (start < end)
  213.     {
  214.         // Get the pivot point.
  215.         pivotPoint = partition(newSet, start, end);
  216.         // Sort the first sub list.
  217.         quickSort(newSet, start, pivotPoint - 1);
  218.         // Sort the second sub list.
  219.         quickSort(newSet, pivotPoint + 1, end);
  220.     }
  221. }
  222.  
  223. void swap(int &value1, int &value2)
  224. {
  225.     int temp = value1;
  226.     value1 = value2;
  227.     value2 = temp;
  228. }
  229.  
  230. int partition(char set[], int start, int end)
  231. {
  232.     int pivotValue, pivotIndex, mid;
  233.     mid = (start + end) / 2;
  234.     swap(set[start], set[mid]);
  235.     pivotIndex = start;
  236.     pivotValue = set[start];
  237.     for (int scan = start + 1; scan <= end; scan++)
  238.     {
  239.         if((set[scan] < pivotValue && ((int)set[scan] >= start && (int)set[scan] <= end)))
  240.         {
  241.             pivotIndex++;
  242.             swap(set[pivotIndex], set[scan]);
  243.         }
  244.     }
  245.     swap(set[start], set[pivotIndex]);
  246.     return pivotIndex;
  247. }
  248.  
  249. bool isQuit(char* phrase)
  250. {
  251.      char quit[6] = "~quit";
  252.      // Compare the char array to '~quit'
  253.      for(int i = 0; i < 5; i++)
  254.      {
  255.          if(phrase[i] != quit[i])
  256.          {
  257.              return false;
  258.          }
  259.      }
  260.      return true;
  261. }
  262.  
  263.  
  264. int preProcess(char* phrase, int size)
  265. {
  266.     int currChar = 0;
  267.     // Loop through the original array
  268.     for(int i = 0; i < size; i++)
  269.     {
  270.          // Only add non-space characters to the new array
  271.          if(phrase[i] != ' ')
  272.          {
  273.               phrase[currChar] = phrase[i];
  274.               currChar++;
  275.          }
  276.     }
  277.     // We're out with the new number of chars
  278.     return currChar;
  279. }
Digg Digg It!     Del.icio.us Del.icio.us     Reddit Reddit     StumbleUpon StumbleIt     Newsvine Newsvine     Furl Furl     BlinkList BlinkList

Rate Rate this code snippet
Comment Current Comments
by Ryan on Tuesday, December 29th 2009 at 09:07 AM

Thank you very mucj for this code..now i have an idea of what will i do to make my programming assignment to work....thank you very much

by sarah on Monday, March 7th 2011 at 01:32 AM

create a program on how to count character?

by apartments design ideas on Sunday, August 14th 2011 at 03:35 PM

There are existing ribbony bolgs which are pestering to cater this worthless of comprehendible quantity, your painter is the unsurpassed of all. i appriciate your acceptance.

by get well sms on Wednesday, August 17th 2011 at 12:35 AM

hank you very mucj for this code..now i have an idea of what will i do to make my programming assignment to work....thank you very much

by Contextual blogposts on Thursday, December 8th 2011 at 10:38 AM

The #define directive is a pre-processor directive, just like anything else prefixed with "#" Using the line #define MyConst 2005 we tell the pre-processor to replace each occurange of MyConst in the file, with the number 2005. Velvety I definitely liked denotive it. This message provided by you is rale concoct for prudish cerebration. What I needed to pair is why you didnt try to imprimatur the new superior of this payment ? There are so numerous things that youre absent here that I dont see how you could actually descriptor an penetrating sight on the feudatory. Its synoptic you didnt plane ruminate that there me be separate withdraw here.

by itil on Monday, December 12th 2011 at 03:02 AM


Viselike this tamed of method is echt commonwealth apt for, salutary fit for readers and a creator for you as get definitely shew the decorativeness of the communicator. It's subscription to bonk these kinds of articles around to taciturnity the run cerebrate nonviolence. Conveying those who o.k. can playacting things overripe in the venerable add!

by on Saturday, January 28th 2012 at 09:31 AM

Once you have recreated the problem and captured these steps, you can save them to a file and send it to your support person, who can then open it up and view

by problem solving activities on Sunday, January 29th 2012 at 03:42 PM

I love this article, it's very well

by Free RingtonesFor Virgin Mobile on Tuesday, January 31st 2012 at 05:36 PM

Great post full of useful tips! My site is fairly new and I am also having a hard time getting my readers to leave comments. Analytics shows they are coming to the site but I have a feeling “nobody wants to be first”.

by casino on Saturday, February 4th 2012 at 06:21 AM

I have been looking for a way to get the IP address on a windows application and Google sent me right here.

by Hey...this is a wonderful website buddy and an informative post!!! i am new here and i found this site very interesting and info on Saturday, February 4th 2012 at 08:39 PM

Hey...this is a wonderful website buddy and an informative post!!! i am new here and i found this site very interesting and informative ,, you are a professional blogger i think i have a great interest in such things...thank you

by online criminal justice degree on Wednesday, February 8th 2012 at 09:05 PM

I impressed with this post. I rarely found this. I came across this and interesting stuff is present here.I will bookmark your website and share with my friends. I am waiting for your next interesting post.

by wartrol reviews on Saturday, February 11th 2012 at 12:21 AM

I definitely liked denotive it. This message provided by you is rale concoct for prudish cerebration. What I needed to pair is why you didnt try to imprimatur the new superior of this

by company incorporation dubai on Saturday, February 11th 2012 at 01:21 AM

bolgs which are pestering to cater this worthless of comprehendible quantity, your painter is the unsurpassed of all. i appriciate your acceptance.

by counter strike 1.6 download on Thursday, February 16th 2012 at 02:24 PM

You really make it seem so easy with your presentation but I find this topic to be really something which I think I would never understand.

by Teeth Whitening on Friday, February 17th 2012 at 05:52 AM

This is an excellent read for me, Must declare that you are on the list of the best programming bloggers I ever observed and I am very thank you to share this article, it is very good, thanks mate!

by Dental White on Friday, February 17th 2012 at 06:01 AM

This is an excellent read for me, Must declare that you are on the list of the best programming bloggers I ever observed and I am very thank you to share this article, it is very good, thanks mate!

by Botanical White on Friday, February 17th 2012 at 06:07 AM

This is an excellent read for me, Must declare that you are on the list of the best programming bloggers I ever observed and I am very thank you to share this article, it is very good, thanks mate!

by Mint Cosmetics on Friday, February 17th 2012 at 06:16 AM

This is an excellent read for me, Must declare that you are on the list of the best programming bloggers I ever observed and I am very thank you to share this article, it is very good, thanks mate!

by Teeth Whitening Strips on Friday, February 17th 2012 at 06:24 AM

This is an excellent read for me, Must declare that you are on the list of the best programming bloggers I ever observed and I am very thank you to share this article, it is very good, thanks mate!

by Capsiplex on Friday, February 17th 2012 at 07:29 AM

This is an excellent read for me, Must declare that you are on the list of the best programming bloggers I ever observed and I am very thank you to share this article, it is very good, thanks mate!

by Slim Weight Patch on Friday, February 17th 2012 at 07:44 AM

This is an excellent read for me, Must declare that you are on the list of the best programming bloggers I ever observed and I am very thank you to share this article, it is very good, thanks mate!

by Phen375 on Friday, February 17th 2012 at 07:47 AM

This is an excellent read for me, Must declare that you are on the list of the best programming bloggers I ever observed and I am very thank you to share this article, it is very good, thanks mate!

by Ultimate Maqui Berry on Friday, February 17th 2012 at 07:51 AM

This is an excellent read for me, Must declare that you are on the list of the best programming bloggers I ever observed and I am very thank you to share this article, it is very good, thanks mate!

by Pure Acai Berry Max on Friday, February 17th 2012 at 08:00 AM

This is an excellent read for me, Must declare that you are on the list of the best programming bloggers I ever observed and I am very thank you to share this article, it is very good, thanks mate!

by Human Growth Hormone on Friday, February 17th 2012 at 08:06 AM

This is an excellent read for me, Must declare that you are on the list of the best programming bloggers I ever observed and I am very thank you to share this article, it is very good, thanks mate!

by HGH Advanced on Friday, February 17th 2012 at 08:11 AM

This is an excellent read for me, Must declare that you are on the list of the best programming bloggers I ever observed and I am very thank you to share this article, it is very good, thanks mate!

by GenFX on Friday, February 17th 2012 at 08:19 AM

This is an excellent read for me, Must declare that you are on the list of the best programming bloggers I ever observed and I am very thank you to share this article, it is very good, thanks mate!

by GenF20 on Friday, February 17th 2012 at 08:23 AM

This is an excellent read for me, Must declare that you are on the list of the best programming bloggers I ever observed and I am very thank you to share this article, it is very good, thanks mate!

by Provacyl on Friday, February 17th 2012 at 08:29 AM

This is an excellent read for me, Must declare that you are on the list of the best programming bloggers I ever observed and I am very thank you to share this article, it is very good, thanks mate!

by HGH on Friday, February 17th 2012 at 08:32 AM

This is an excellent read for me, Must declare that you are on the list of the best programming bloggers I ever observed and I am very thank you to share this article, it is very good, thanks mate!

by African Mango Plus on Friday, February 17th 2012 at 08:39 AM

This is an excellent read for me, Must declare that you are on the list of the best programming bloggers I ever observed and I am very thank you to share this article, it is very good, thanks mate!

by Capsiplex Plus on Friday, February 17th 2012 at 08:43 AM

This is an excellent read for me, Must declare that you are on the list of the best programming bloggers I ever observed and I am very thank you to share this article, it is very good, thanks mate!

by Best Acne Treatments on Friday, February 17th 2012 at 08:47 AM

This is an excellent read for me, Must declare that you are on the list of the best programming bloggers I ever observed and I am very thank you to share this article, it is very good, thanks mate!

by Clear Skin Max on Friday, February 17th 2012 at 08:50 AM

This is an excellent read for me, Must declare that you are on the list of the best programming bloggers I ever observed and I am very thank you to share this article, it is very good, thanks mate!

by Best Diet Pills on Friday, February 17th 2012 at 09:30 AM

This is an excellent read for me, Must declare that you are on the list of the best programming bloggers I ever observed and I am very thank you to share this article, it is very good, thanks mate!

by Proactol Plus on Friday, February 17th 2012 at 09:40 AM

This is an excellent read for me, Must declare that you are on the list of the best programming bloggers I ever observed and I am very thank you to share this article, it is very good, thanks mate!

by Meratol on Friday, February 17th 2012 at 09:48 AM

This is an excellent read for me, Must declare that you are on the list of the best programming bloggers I ever observed and I am very thank you to share this article, it is very good, thanks mate!

by Capsiplex on Friday, February 17th 2012 at 09:51 AM

This is an excellent read for me, Must declare that you are on the list of the best programming bloggers I ever observed and I am very thank you to share this article, it is very good, thanks mate!

by Capsiplex Plus on Friday, February 17th 2012 at 09:54 AM

This is an excellent read for me, Must declare that you are on the list of the best programming bloggers I ever observed and I am very thank you to share this article, it is very good, thanks mate!

by Diet Tea on Friday, February 17th 2012 at 10:03 AM

This is an excellent read for me, Must declare that you are on the list of the best programming bloggers I ever observed and I am very thank you to share this article, it is very good, thanks mate!

by Diet Tea on Friday, February 17th 2012 at 10:07 AM

This is an excellent read for me, Must declare that you are on the list of the best programming bloggers I ever observed and I am very thank you to share this article, it is very good, thanks mate!

by Tava Tea on Friday, February 17th 2012 at 10:10 AM

This is an excellent read for me, Must declare that you are on the list of the best programming bloggers I ever observed and I am very thank you to share this article, it is very good, thanks mate!

by Tava Tea on Friday, February 17th 2012 at 10:29 AM

This is an excellent read for me, Must declare that you are on the list of the best programming bloggers I ever observed and I am very thank you to share this article, it is very good, thanks mate!

by HGH Supplements on Friday, February 17th 2012 at 10:33 AM

This is an excellent read for me, Must declare that you are on the list of the best programming bloggers I ever observed and I am very thank you to share this article, it is very good, thanks mate!

by HGH Energizer on Friday, February 17th 2012 at 10:37 AM

This is an excellent read for me, Must declare that you are on the list of the best programming bloggers I ever observed and I am very thank you to share this article, it is very good, thanks mate!

by Teeth Whitening Pen on Friday, February 17th 2012 at 10:41 AM

This is an excellent read for me, Must declare that you are on the list of the best programming bloggers I ever observed and I am very thank you to share this article, it is very good, thanks mate!

by HGHAdvanced on Friday, February 17th 2012 at 10:52 AM

This is an excellent read for me, Must declare that you are on the list of the best programming bloggers I ever observed and I am very thank you to share this article, it is very good, thanks mate!

by Buy HGH Advanced on Friday, February 17th 2012 at 10:55 AM

This is an excellent read for me, Must declare that you are on the list of the best programming bloggers I ever observed and I am very thank you to share this article, it is very good, thanks mate!

by HGH Advanced Review on Friday, February 17th 2012 at 10:59 AM

This is an excellent read for me, Must declare that you are on the list of the best programming bloggers I ever observed and I am very thank you to share this article, it is very good, thanks mate!

by UniqueHoodia on Friday, February 17th 2012 at 11:49 AM

This is an excellent read for me, Must declare that you are on the list of the best programming bloggers I ever observed and I am very thank you to share this article, it is very good, thanks mate!

by AllAboutDivorce.com on Monday, February 27th 2012 at 04:20 AM

Une critique faite avec humour aura plus de chances d'être entendue. Si vous n'êtes pas drôle

by best online mba programs without gmat on Tuesday, April 3rd 2012 at 06:27 AM

The higher-end Conquest class offers all that comes standard on Carnival ships: a lounge with nightly live performances, a variety of themed bars, pools, hot tubs, a casino, arcade, and a spa. And if you are traveling with children, the Conquest Class ships offer kids and teens sections of the boat.

by find cell on Saturday, April 28th 2012 at 01:32 AM

application accepts a string as input and after storing them in a character array, sorts them alphabetically using the quicksort algorithm.

by steam shower on Tuesday, May 1st 2012 at 12:44 PM

Very nice post!!This is the same sort of leverage that prevents CNN and FoxNews from overly negative reporting on China, and forced Yahoo to reveal the identity of a high profile dissenter several years back.

by doctor on Tuesday, May 1st 2012 at 06:04 PM

The quick start comes in handy so often. I can't tell you how many hours i've spent just wishing I had the faster route enabled.

by masters in health administration fast on Friday, May 4th 2012 at 06:04 AM

A genuine clairvoyant online has one goal, that is to empower your life making it more comfortable and to make you more in control with the aid of his psychic ability.

by Naples Florida on Sunday, May 6th 2012 at 03:08 PM

I can't tell you how many hours i've spent just wishing I had the faster route enabled.

by view my website on Wednesday, May 9th 2012 at 01:36 AM

You make it enjoyable and you still care for to keep it wise.I can not wait to read far more from you.This is actually a terrific website.

by distance education masters on Friday, May 11th 2012 at 02:55 AM

Very nice post!!This is the same sort of leverage that prevents CNN and FoxNews from overly negative reporting on China, and forced Yahoo to reveal the identity of a high profile dissenter several years back.

by ebooks on Friday, May 18th 2012 at 05:50 AM

A very good and informative article indeed . It helps me a lot to enhance my knowledge, I really like the way the writer presented his views.

by ebooks on Friday, May 18th 2012 at 05:50 AM

A very good and informative article indeed . It helps me a lot to enhance my knowledge, I really like the way the writer presented his views.

by sgdgsdgd on Sunday, May 20th 2012 at 04:51 PM

Thank you, Ghali

شات الغلا -
دردشة الغلا -
شات الغلا الصوتي -
منتديات -
مطبخ الاسرة -
دليل شاتات -
الحكم والامثال -
موسوعة الطفل -
الموسوعة الاسلامية -
موسوعة الخواطر -
القران الكريم -
مكتبة المقالات -
العاب مرح

منتديات الشات الصوتي -

شات صوتي -

دردشة صوتية -

شات صوتي سعودي -

ون -

شات ون -

منتدى سعودي -

منتدى -

دردشة صوتية سعودية -

خدمات شات صوتي -

دليل شات صوتي -

فيديو شات صوتي -

خواطر سعودية -

القران الكريم -

موسوعة الاسرة -

موسوعة الطب -

شات كتابي سعودي -

by Granny Pussy on Tuesday, May 29th 2012 at 06:52 PM

nice one i like it very much please keep posting thank you .

by Pro Travel Network on Monday, June 18th 2012 at 02:05 PM

Pro Travel Network is the best travel agency in town. They have been dealing in all kind of travel from train travel to cruise travel and air travel !

by Pro Travel Network on Monday, June 18th 2012 at 02:05 PM

Pro Travel Network is the best travel agency in town. They have been dealing in all kind of travel from train travel to cruise travel and air travel !

by Pro Travel Network on Monday, June 18th 2012 at 02:05 PM

Pro Travel Network is the best travel agency in town. They have been dealing in all kind of travel from train travel to cruise travel and air travel !

by Pro Travel Network on Monday, June 18th 2012 at 02:05 PM

Pro Travel Network is the best travel agency in town. They have been dealing in all kind of travel from train travel to cruise travel and air travel !

by Baby Games on Wednesday, June 20th 2012 at 09:38 AM

This is an excellent read for me, Must declare that you are on the list of the best programming bloggers

by hindi songs download on Saturday, September 1st 2012 at 08:18 PM

You’re definitely someone that has something to say that people should hear. Keep up the wonderful job.

by bank ifsc code on Saturday, September 1st 2012 at 08:19 PM

Thanks so much for this!

by bollywood songs download on Saturday, September 1st 2012 at 08:19 PM

When I first visited your blog, I liked the concept of your blog posts. It is very well portrayed as well as depicted.

by rowdy rathore songs on Saturday, September 1st 2012 at 08:20 PM

I really enjoyed, I would like get more information about this, because is very beautiful, thanks for sharing

by Nse tips on Monday, September 10th 2012 at 07:14 AM

Hi there! I just would like to give a huge thumbs up for the nice info you will have right here on
this post. I will likely be coming again to your weblog for extra soon.

by rural internet on Friday, October 19th 2012 at 03:31 PM

I really enjoyed, I would like get more information about this, because is very beautiful, thanks for sharing

by Earn Extra Money on Saturday, October 20th 2012 at 08:40 AM

I really enjoyed, I would like get more information about this, because is very beautiful, thanks for sharing

by Earn Extra Money on Saturday, October 20th 2012 at 08:46 AM

Very nice post!!This is the same sort of leverage that prevents CNN and FoxNews from overly negative reporting on China, and forced Yahoo to reveal the identity of a high profile dissenter several years back.

by emergency food on Thursday, November 1st 2012 at 06:05 AM

China, and forced Yahoo to reveal the identity of a high profile dissenter several years back.


Comment Comment on this tutorial
Name: Email:
Message:
Comment Related Source Code
There is no related code.

Comment Related Tutorials

Selection Sort Algorithm in Java

On Wednesday, April 16th 2008 at 09:54 PM by Louis Fernandez in Java

Bubble Sort Algorithm in Java

On Sunday, March 2nd 2008 at 08:37 PM by Louis Fernandez in Java


Jobs C++ Job Search
My skills include:

Enter a City:

Select a State:


Advanced Search >>
Ads

From the creators of Geekpedia, a revolutionary new coupon website!

BargainEZ has coupons codes, printable coupons, bargains and it is the leading source of Passbook coupons for iPhone and iPod touch devices.

Coupons
Discover Geekpedia
Other Resources