I'm not quite sure what you want your code to do. I can see that the thought behind it is correct: your neuron gets an input that is then tested against a certain activision threshold. Afterwards the weight is adjusted so after a while your neuron gets "smarter".

But: What is yout neuron supposed to learn? After I compiled and ran your code, I couldn't figure it out. And the adjustment of the weight seems kind of odd. If you could explain it a little closer, I'm sure it would be more clear.

If you take a look at the values that the weight and the activation variables take, you will see some strange behavior. For example, if you input number 3 (or any other number except for 1) about 20-30 times your activition and weight variable go out of bonds and in the end contain "nan" value.

One more thing: What range of input values is your program supposed to receive? Any integer number?

The OS requirements were Windows Vista Ultimate or better, so we used Linux.

This programs purpose is to determine the value of a number, it is the first perceptron in a network which I hope will eventually involve many layers. Quite frankly, however, I am clueless as to how to accomplish this. This perceptrons purpose is to take in a number and determine whether is is above the given threshold, if so fire. I had intended for this perceptron to evolve into one that could determine whether a number is equal to or greater than one. However, I failed at that whenever I run this program the output seems random. The equations to change the weights were taken directly from tutorials, at least as I have interpreted them. And the learning mechanism is based, once again, on my interpretation of the delta rule. It also doesn’t help that I am a poor programmer and worse mathematician . Perhaps my problem could be my understanding of thresholds and weights, I was told that they were random, is this true?

Like a>=1 ? I don't think that that is a problem suitable for neural networks to solve. It is simply too simple, and doesn't really involve or require any AI - it's pure mathematics. You should probably try something else, like a very simple pattern recognition.

Another thing is: usually a neuron takes more than one input.

It also doesn’t help that I am a poor programmer and worse mathematician

No, it certainly doesn't. I suggest that you bring your programming skills up to a level that makes you confident of what you are doing when you are coding. Maths is really important, because many aspects of programming involve a thorough knowledge of different mathematical concepts. AI programming is no different. So before you continue, you probably should increase your mathematical understanding.

Besides that, Neural Networks (and AI in general) are not the subject you usually want to study when you are a beginner. They are rather complex. So why not try something easier?

But, if you want to continue anyway, you should get yourself a good book about AI. The tutorials you get online are handy, but do not give you the insight you really need. I would suggest for example "AI Techniques for Game Programming" by Mat Buckland. And you must probably study genetic algorithms before you even begin to look into neural nets. These two subjects are very often connected.

I was told that they were random, is this true?

Well, yes the wights are random. But after a while they are altered (or calibrated, if you wish) so that they "learn" how to solve the problem more efficiently. That is usually done with good help from genetic algorithms.
The threshold, though, does not change. It is constant and is usually added as an additional negative weight (which you will learn if you study NN closely). But it might be that the threshold in some problems is random. Though I personally don't see purpose of that approach.

The OS requirements were Windows Vista Ultimate or better, so we used Linux.

Well, you could try to do some genetic programming. It will be useful when you later start developing neural nets. And it's a lot of fun: for example you can create some awesome path finding programs or may be solve the famous Travelling Salesman Problem (TSP). You will probably find many tutorials on this subject, just try to google it!

Though, again, you should get yourself a book that is not too hard to understand, but which gives you a more or less full explanation of the main concepts of AI. It must guide you from the simplest things to more complex and advanced topics. Some mathematics should be explained. I would suggest for example "AI Techniques for Game Programming" by Mat Buckland (see my last post).

But when it comes to programming exercises, you should probably wait with AI for a while. Try something else, like writing other programs (may be simple games? - like a balloon shooter or a text adventure) or something else that you think is fun.

Mathematics is rather hard to learn from or through programming. So you will may be want to take a general course in maths sometime. Or study some books on your own. It is the core maths you should know well. Also probability theory and the like.

The OS requirements were Windows Vista Ultimate or better, so we used Linux.

Please, understand me correctly. I'm not trying to somehow hinder your eagerness for AI programming. It is really good that you have such an interest for this subject. What I am trying to tell you is that it is better to take a more step-by-step approach. It is better to learn things from ground up than to jump into the middle of something. Some things like core programming knowledge or mathematics may seem either unneccesary or easy to you, but nevertheless they are inportant and it is highly advisable that you learn them first.

The OS requirements were Windows Vista Ultimate or better, so we used Linux.