Difference between revisions of "C"

From TRCCompSci - AQA Computer Science
Jump to: navigation, search
(General Skills)
(Operators)
Line 212: Line 212:
  
 
==Operators==
 
==Operators==
 +
===Mathematical operators===
 +
{| class="wikitable"
 +
|-
 +
! Operation !! Character used !! Description !! Example
 +
|-
 +
| Addition || Performed using the "+" operator || Adds values together. || <tt>A + B = 12</tt>
 +
|-
 +
| Subtraction || Performed using the "-" operator || Subtracts values. || <tt>A - B = 8</tt>
 +
|-
 +
| Multiplication || Performed using the "*" operator || Multiplies values together. || <tt>A * B = 20</tt>
 +
|-
 +
| Division || Performed using the "/" operator ||  Divides values. || <tt>S / B = 5</tt>
 +
|-
 +
| Increment || Performed using the "++" operator || Adds 1 to a variable and saves the variable. || <tt>A++ = 11</tt>
 +
|-
 +
| Decrement || Performed using the "--" operator || Subtracts 1 from a variable and saves the variable. || <tt>B-- = 9</tt>
 +
|-
 +
| Modulus || Performed using the "%" operator || Finds the remainder of a division between values. || <tt>10 % 3 = 1</tt>
 +
|}
 +
Note: there are variations on the increment and decrement operators. These can be performed in both prefix and postfix forms. In prefix form, (syntax "++x;") the variable will be incremented or decremented, and then the value will be used by the function calling it. In postfix form, however, (syntax "x++;") the variable will be used by the function calling it, and be incremented or decremented afterwards.
 +
 +
===Comparison Operators===
 +
{| class="wikitable"
 +
|-
 +
! Operation !! Character used !! Description !! Example
 +
|-
 +
| Equal || Performed using == || Returns true if both inputs are the same. || <tt>value == "test"</tt>
 +
|-
 +
| Not Equal|| performed using != || returns true if both inputs are not the same || <tt>value != "test"</tt>
 +
|-
 +
|Less Than || Performed using < || Returns true if value 1 is less than or equal to value 2. || <tt>value < 0</tt>
 +
|-
 +
|Greater Than || performed using > || Returns true if value 1 is greater than value 2. || <tt>value > 1</tt>
 +
|-
 +
|Less Than or Equal || Performed using <= || Returns true if value 1 is less than or equal to value 2. || <tt>value <= 0</tt>
 +
|-
 +
|Greater Than  or Equal|| performed using >= || Returns true if value 1 is greater than or equal to value 2. || <tt>value >= 1</tt>
 +
|}
 +
 +
===Bitwise operators===
 +
{| class="wikitable"
 +
|-
 +
! Operation !! Character used !! Description !! Example
 +
|-
 +
| AND || Performed using "&" or "&&" || Returns true if both inputs are true. || <tt>true && false = false</tt>
 +
|-
 +
| OR || performed using "<nowiki>|</nowiki>" or "<nowiki>||</nowiki>" || returns true if one or both inputs are true. || <tt>true <nowiki>||</nowiki> false = true</tt>
 +
|-
 +
| XOR || Performed using "^" || Returns true if both inputs are different. || <tt>true ^ false = true</tt>
 +
|-
 +
| NOT || performed using "!" || Returns false if true, or true if false. || <tt><nowiki>!</nowiki>true = false</tt>
 +
|}
  
 
==Subroutines - Functions==
 
==Subroutines - Functions==

Revision as of 08:03, 20 June 2019

General Skills

Helloworld

Constants - Variables - Data Types

There are 9 types of data types. These include:

  • boolean
  • string
  • integer
  • double
  • decimal
  • character
  • byte
  • float
  • long

To declare a variable you state the data type followed by the name of the variable:

DataType VariableName;

You can declare and assign a variable at the same time:

DataType VariableName = Value;

Examples

Boolean is a binary value, being either true or false.

bool example = true;


String is used for storing characters in word form (note the double quotes "").

string example = "hello world";


Integer is used to store whole numbers (32 bit values).

int example = 457568368;


Double is used to store numbers where there are numbers before and after the decimal point, using 64 bits of memory.

double example = 3.3;


Decimal is used to store larger numbers with information before and after the decimal point, using 128 bits of memory.

decimal example = 12.593;


Character is used to store single letters (note the single quotes ).

char example = 'A';


Byte is used to store a byte (eight bits). In C#, it is specifically an 8 bit integer (0-255).

byte example = 255;


Float is used to store a 32 bit decimal number, which must be defined as being a float using "F" or "f" to distinguish it from a double, or it may cause compilation errors.

float example = 9.4F;


Long integer is also used to store whole numbers (However these are 64 bit values).

long example = 7846354759340276482;

Local vs Global

It is important to know that a variable declared within a block is only available within that block, it doesn't exist outside of the block. These would therefore be local variables, because they are local to where they are declared.

You can therefore declare variables within your program and declare them outside of any block, these variables will be available anywhere within your program. These are called global variables, because they can be used throughout the program.

Constants

Constants are used to create a variable of a specified data type that can never be changed after declaration.

During runtime, once the constant is set the value cannot change during the execution of the program.

The only way to change it is to edit the code and re-compile.

const int example = 32

Selection

Selection uses if statements and switch statements. These allow your programs to make decisions or change the course of your program based on an input or a variable.

If / If Else

if statements work by performing an action only if a condition is reached. After the if command, the condition should be within round brackets, the contents of which should equate to true or false.

1 if (a > b)
2   {
3     Console.WriteLine("A is greater than B");
4   }

This can also be paired with else, which will perform an action if the "if" condition is not met.

1 if (a > b)
2   {
3     Console.WriteLine("A is greater than B");
4   }
5   else
6   {
7     Console.WriteLine("A is not Greater Than B");
8   }

Else If

 1 if (a > b)
 2   {
 3     Console.WriteLine("A is greater than B");
 4   }
 5   else if (a > c)
 6           {
 7              Console.WriteLine("A is greater than C");
 8           }
 9   else
10   {
11     Console.WriteLine("A is not Greater Than B or C");
12   }

Switch / Case

Switch is basically a combined if and if else statement, and is used for a lot of different options.

1 switch(x)
2   { 
3     case 1:
4       x++;
5       break;
6     case 2:
7       x--;
8       break;
9   }

Default is an optional part of the switch method, which is used in case none of the other conditions are met.

 1 switch(x)
 2   { 
 3     case 1:
 4       x++;
 5       break;
 6     case 2:
 7       x--;
 8       break;
 9     default:
10       x*= x;
11       break;
12   }

Nesting Statements

Both if and switch statements can be nested, meaning that one statement can be contained within another.

1  if (a > b)
2   {
3     if (b > 50)
4       {
5         Console.WriteLine("b is a very large number!");
6       }
7   }

Repetition - Iteration

Repetition is the use of a for loop to execute one piece of code over and over. There are multiple ways to create a for loop though. These are:

While uses one condition that which if met, will repeat the code.

1 while (true)
2   {
3     x ++;
4   }

For loops intialise a variable, check a condition and perform an action. This is done before each iteration.

1 for (int i = 0; i <= 1000000; i++)
2   {
3     console.WriteLine(i);
4   }

Do while is the same as a while, however it doesn't check until it has done one iteration.

1 do 
2   {
3     x ++;
4   }
5 while (true)

Foreach loops can also be used to access array variables [1]

1 foreach (int x in Arr) 
2   {
3     Console.WriteLine(x);
4   }

An iteration is the piece of code performed each time a loop runs.

Iterations can be skipped by calling the continue function.

1 for (int i = 0; i <= 10; i++)
2 {
3     if(i==5)
4     {
5          continue;
6     }    
7     console.WriteLine(i);
8 }

Iteration can be terminated with the break function.

1 for (int i = 0; i <= 10; i++)
2 {
3     if(i==5)
4     {
5          break;
6     }    
7     console.WriteLine(i);
8 }

Operators

Mathematical operators

Operation Character used Description Example
Addition Performed using the "+" operator Adds values together. A + B = 12
Subtraction Performed using the "-" operator Subtracts values. A - B = 8
Multiplication Performed using the "*" operator Multiplies values together. A * B = 20
Division Performed using the "/" operator Divides values. S / B = 5
Increment Performed using the "++" operator Adds 1 to a variable and saves the variable. A++ = 11
Decrement Performed using the "--" operator Subtracts 1 from a variable and saves the variable. B-- = 9
Modulus Performed using the "%" operator Finds the remainder of a division between values. 10 % 3 = 1

Note: there are variations on the increment and decrement operators. These can be performed in both prefix and postfix forms. In prefix form, (syntax "++x;") the variable will be incremented or decremented, and then the value will be used by the function calling it. In postfix form, however, (syntax "x++;") the variable will be used by the function calling it, and be incremented or decremented afterwards.

Comparison Operators

Operation Character used Description Example
Equal Performed using == Returns true if both inputs are the same. value == "test"
Not Equal performed using != returns true if both inputs are not the same value != "test"
Less Than Performed using < Returns true if value 1 is less than or equal to value 2. value < 0
Greater Than performed using > Returns true if value 1 is greater than value 2. value > 1
Less Than or Equal Performed using <= Returns true if value 1 is less than or equal to value 2. value <= 0
Greater Than or Equal performed using >= Returns true if value 1 is greater than or equal to value 2. value >= 1

Bitwise operators

Operation Character used Description Example
AND Performed using "&" or "&&" Returns true if both inputs are true. true && false = false
OR performed using "|" or "||" returns true if one or both inputs are true. true || false = true
XOR Performed using "^" Returns true if both inputs are different. true ^ false = true
NOT performed using "!" Returns false if true, or true if false. !true = false

Subroutines - Functions

Parameters - Global Variables

Advanced skills

Text Files

Binary Files

Handling Exceptions