**Pascal**

This

**programming language**may be used to instruct a computer to perform a task.

Garbage collected: | No |
---|---|

Parameter passing methods: | By reference, By value |

Type safety: | Safe |

Type strength: | Strong |

Type expression: | Explicit |

Type checking: | Static |

See Also: |

**Your Help Needed**

If you know

**Pascal**, please write code for some of the tasks not implemented in

**Pascal**.

**Pascal** is an imperative computer programming language, developed in 1970 by Niklaus Wirth as a language particularly suitable for structured programming. A derivative known as Object Pascal was designed for object-oriented programming. Pascal can be used very easily in conjunction with fundamental discrete mathematics as sets are built into the language.

There are actually several varieties of Pascal. The most important ones are:

- Standard Pascal (ISO 7185) is the original Pascal standard. However, there are many features missing from that language version, which has led to a wide variety of nonstandard extensions. On the other hand, there are features of Standard Pascal which are seldom implemented by Pascal compilers. A compiler which implements all features of Standard Pascal is GNU Pascal.
- Extended Pascal (ISO 10206) is a later Pascal standard which adds a lot to the original Pascal standard. However, compilers implementing Extended Pascal are even more rare than those implementing Standard Pascal. GNU Pascal implements most of Extended Pascal as well.
- Turbo Pascal was a very successful Pascal implementation for DOS and 16 bit Windows (the latest version was sold under the name "Borland Pascal 7.0") and became the de-facto standard for Pascal on DOS. Even today many Pascal compilers provide compatibility to Turbo Pascal.
- Object Pascal is the Pascal dialect used in Delphi, Borland's successor product to Turbo/Borland Pascal. It extends Pascal with a new object model (in addition to the object model introduced in Turbo Pascal 5.5). This language is also implemented by Free Pascal and Lazarus.

## Grammar[edit]

The ISO 7185 standard for Pascal uses Extended Backus–Naur Form. Also Van Wijngaarden's grammar can be used to define Pascal's grammar[1].

## See also[edit]

## Subcategories

This category has the following 4 subcategories, out of 4 total.

## Pages in category "Pascal"

The following 545 pages are in this category, out of 545 total.

### A

- A+B
- ABC problem
- Abelian sandpile model
- Abstract type
- Abundant odd numbers
- Abundant, deficient and perfect number classifications
- Ackermann function
- Additive primes
- Address of a variable
- AKS test for primes
- Align columns
- Almost prime
- Amicable pairs
- Anagrams
- Anagrams/Deranged anagrams
- Angle difference between two bearings
- Animation
- Anti-primes
- Apply a callback to an array
- Arbitrary-precision integers (included)
- Arena storage pool
- Arithmetic evaluation
- Arithmetic-geometric mean
- Arithmetic/Complex
- Arithmetic/Integer
- Array concatenation
- Array length
- Arrays
- Assertions
- Attractive numbers
- Averages/Arithmetic mean
- Averages/Mean angle
- Averages/Median
- Averages/Pythagorean means
- Averages/Root mean square
- Averages/Simple moving average

### B

- Babbage problem
- Balanced brackets
- Bell numbers
- Benford's law
- Bernoulli numbers
- Best shuffle
- Binary digits
- Binary search
- Binary strings
- Bioinformatics/base count
- Bioinformatics/Global alignment
- Bitmap
- Bitmap/Bresenham's line algorithm
- Bitmap/Flood fill
- Bitwise operations
- Boolean values
- Box the compass
- Brazilian numbers
- Bulls and cows
- Burrows–Wheeler transform

### C

- Caesar cipher
- Calculating the value of e
- Calkin-Wilf sequence
- Call a foreign-language function
- Call a function in a shared library
- Case-sensitivity of identifiers
- Catalan numbers
- Catalan numbers/Pascal's triangle
- Catamorphism
- Chaos game
- Character codes
- Check that file exists
- Cholesky decomposition
- Chowla numbers
- Classes
- Closest-pair problem
- Collections
- Combinations
- Comma quibbling
- Command-line arguments
- Comments
- Compile-time calculation
- Compound data type
- Concurrent computing
- Conditional structures
- Conway's Game of Life
- Copy a string
- Copy stdin to stdout
- Count in factors
- Count in octal
- Count occurrences of a substring
- Count the coins/0-1
- Cousin primes
- Create a file
- Create a two-dimensional array at runtime
- Create an HTML table
- Create an object at a given address
- CSV data manipulation
- Cuban primes
- Cumulative standard deviation
- Cyclops numbers

### D

- Damm algorithm
- Date format
- Date manipulation
- Day of the week
- Define a primitive data type
- Delegates
- Delete a file
- Detect division by zero
- Determine if a string has all the same characters
- Determine if a string is numeric
- Determine if two triangles overlap
- Digital root
- Dijkstra's algorithm
- Dining philosophers
- Discordian date
- Distribution of 0 Digits in factorial series
- Dot product
- Doubly-linked list/Element definition
- Doubly-linked list/Element insertion
- Doubly-linked list/Traversal
- Dragon curve
- Draw a cuboid
- Draw a sphere
- Dynamic variable names

### E

- Elementary cellular automaton/Random Number Generator
- Emirp primes
- Empty program
- Empty string
- Enforced immutability
- Entropy
- Enumerations
- Environment variables
- Equilibrium index
- Esthetic numbers
- Ethiopian multiplication
- Euler method
- Euler's sum of powers conjecture
- Evaluate binomial coefficients
- Even or odd
- Evolutionary algorithm
- Exceptions
- Exceptions/Catch an exception thrown in a nested call
- Execute a system command
- Execute Brain****
- Exponentiation operator
- Extensible prime generator
- Extreme floating point values

### F

- Factorial
- Factorions
- Factors of a Mersenne number
- Factors of an integer
- Farey sequence
- FASTA format
- Fibonacci n-step number sequences
- Fibonacci sequence
- Fibonacci word
- File input/output
- File modification time
- File size
- Filter
- Find limit of recursion
- Find the missing permutation
- Find words which contains more than 3 e vowels
- Finite state machine
- First perfect square in base n with n unique digits
- First power of 2 that has leading decimal digits of 12
- Five weekends
- Fixed length records
- FizzBuzz
- Flow-control structures
- Floyd's triangle
- Formatted numeric output
- Forward difference
- Fraction reduction
- Function composition
- Function definition
- Fusc sequence

### G

### H

- Hailstone sequence
- Halt and catch fire
- Hamming numbers
- Happy numbers
- Harshad or Niven series
- Hash from two arrays
- Haversine formula
- Hello world/Graphical
- Hello world/Line printer
- Hello world/Newline omission
- Hello world/Standard error
- Hello world/Text
- Heronian triangles
- Hexapawn
- Higher-order functions
- Hofstadter Q sequence
- Hofstadter-Conway $10,000 sequence
- Horizontal sundial calculations
- Horner's rule for polynomial evaluation
- Host introspection
- Hostname
- HTTP
- HTTPS
- Humble numbers

### I

### K

### L

- Langton's ant
- Largest five adjacent number
- Largest int from concatenated ints
- Largest proper divisor of n
- Leap year
- Least common multiple
- Letter frequency
- Levenshtein distance
- Linear congruential generator
- Literals/Integer
- Literals/String
- Logical operations
- Long literals, with continuations
- Long multiplication
- Long primes
- Long year
- Longest common subsequence
- Longest common substring
- Longest string challenge
- Look-and-say sequence
- Loop over multiple arrays simultaneously
- Loops/Break
- Loops/Continue
- Loops/Do-while
- Loops/Downward for
- Loops/For
- Loops/For with a specified step
- Loops/Foreach
- Loops/Infinite
- Loops/N plus one half
- Loops/Nested
- Loops/While
- Lucas-Lehmer test
- Ludic numbers
- Luhn test of credit card numbers
- Lychrel numbers

### M

- Machine code
- Mad Libs
- Magic squares of odd order
- Magnanimous numbers
- Man or boy test
- Mandelbrot set
- Map range
- Matrix transposition
- Maximum triangle path sum
- Memory allocation
- Memory layout of a data structure
- Menu
- Mertens function
- Mian-Chowla sequence
- Middle three digits
- Minimum number of cells after, before, above and below NxN squares
- Minimum positive multiple in base 10 using only 0 and 1
- Modular exponentiation
- Modular inverse
- Modulinos
- Monte Carlo methods
- Monty Hall problem
- Morse code
- Multi-base primes
- Multiple distinct objects
- Multiplication tables
- Munchausen numbers
- Mutual recursion
- Möbius function

### N

- N'th
- N-body problem
- N-queens problem
- N-smooth numbers
- Naming conventions
- Narcissistic decimal number
- Natural sorting
- Nested function
- Next special primes
- Non-decimal radices/Convert
- Non-decimal radices/Input
- Nth root
- Null object
- Number names
- Number reversal game
- Numbers whose count of divisors is prime
- Numbers with prime digits whose sum is 13
- Numbers with same digit set in base 10 and base 16
- Numerical integration
- Numerical integration/Gauss-Legendre Quadrature

### P

- Palindrome detection
- Palindromic gapful numbers
- Pangram checker
- Paraffins
- Parametrized SQL statement
- Pascal matrix generation
- Pascal's triangle
- Password generator
- Penney's game
- Perceptron
- Percolation/Mean run density
- Perfect numbers
- Perfect totient numbers
- Perlin noise
- Permutations
- Permutations with repetitions
- Permutations with some identical elements
- Permuted multiples
- Pernicious numbers
- Pi
- Pick random element
- Pig the dice game
- Playing cards
- Pointers and references
- Polymorphism
- Population count
- Practical numbers
- Price fraction
- Primality by trial division
- Prime conspiracy
- Prime decomposition
- Primes whose sum of digits is 25
- Primorial numbers
- Priority queue
- Program name
- Program termination
- Proper divisors
- Pythagorean quadruples
- Pythagorean triples

### R

- Random number generator (device)
- Random number generator (included)
- Random numbers
- Range extraction
- Read a configuration file
- Read a file character by character/UTF8
- Read a file line by line
- Read a specific line from a file
- Read entire file
- Real constants and functions
- Regular expressions
- Remove duplicate elements
- Remove lines from a file
- Rename a file
- Repeat
- Repeat a string
- Return multiple values
- Reverse a string
- Reverse the order of lines in a text file while preserving the contents of each line
- Reverse words in a string
- Roman numerals/Decode
- Roman numerals/Encode
- Roots of a function
- Roots of a quadratic function
- Roots of unity
- Rot-13
- RPG attributes generator
- Run-length encoding
- Runge-Kutta method

### S

- Safe primes and unsafe primes
- Scope modifiers
- Search a list
- Secure temporary file
- SEDOLs
- Self numbers
- Self-describing numbers
- Semiprime
- Sequence of non-squares
- Sequence of primes by trial division
- Sequence: smallest number greater than previous term with exactly n divisors
- Set
- Sexy primes
- SHA-1
- Shell one-liner
- Short-circuit evaluation
- Show the epoch
- Sierpinski carpet
- Sierpinski triangle
- Sieve of Eratosthenes
- Simple windowed application
- Singleton
- Singly-linked list/Element definition
- Singly-linked list/Element insertion
- Singly-linked list/Traversal
- Sleep
- Sleeping Beauty problem
- Smallest multiple
- Smallest numbers
- Smallest power of 6 whose decimal expansion contains n
- Smarandache prime-digital sequence
- Smith numbers
- Sockets
- Sort an array of composite structures
- Sort disjoint sublist
- Sort stability
- Sort using a custom comparator
- Sorting algorithms/Bead sort
- Sorting algorithms/Bogosort
- Sorting algorithms/Bubble sort
- Sorting Algorithms/Circle Sort
- Sorting algorithms/Cocktail sort
- Sorting algorithms/Comb sort
- Sorting algorithms/Counting sort
- Sorting algorithms/Gnome sort
- Sorting algorithms/Heapsort
- Sorting algorithms/Insertion sort
- Sorting algorithms/Merge sort
- Sorting algorithms/Pancake sort
- Sorting algorithms/Quicksort
- Sorting algorithms/Selection sort
- Sorting algorithms/Shell sort
- Sorting algorithms/Sleep sort
- Sorting algorithms/Stooge sort
- Sorting algorithms/Strand sort
- Soundex
- Special characters
- Special Divisors
- Spiral matrix
- Split a character string based on change of character
- Square but not cube
- Stack
- Stair-climbing puzzle
- Start from a main routine
- Statistics/Normal distribution
- Stern-Brocot sequence
- Strange numbers
- Strange unique prime triplets
- String append
- String case
- String concatenation
- String length
- String prepend
- Strip a set of characters from a string
- Strip comments from a string
- Strip control codes and extended characters from a string
- Strip whitespace from a string/Top and tail
- Strong and weak primes
- Subleq
- Substring
- Substring/Top and tail
- Sudoku
- Sum and product of an array
- Sum data type
- Sum digits of an integer
- Sum multiples of 3 and 5
- Sum of a series
- Sum of squares
- Sum to 100
- Super-d numbers
- Symmetric difference
- System time

### T

- Take notes on the command line
- Taxicab numbers
- Temperature conversion
- Terminal control/Clear the screen
- Terminal control/Coloured text
- Terminal control/Cursor positioning
- Terminal control/Display an extended character
- Terminal control/Inverse video
- Terminal control/Ringing the terminal bell
- Ternary logic
- Test a function
- The ISAAC Cipher
- The Twelve Days of Christmas
- Thue-Morse
- Tokenize a string
- Top rank per group
- Topological sort
- Totient function
- Towers of Hanoi
- Transportation problem
- Trigonometric functions
- Truncate a file
- Truth table
- Twelve statements
- Two identical strings
- Two sum