Solve your math problems using our free math solver with step-by-step solutions. Our math solver supports basic math, pre-algebra, algebra, trigonometry, calculus and more. NetNewsWire 3.0 was released on June 5, 2007. The version added Spotlight indexing of news items, integration with iCal, iPhoto, Address Book, and VoodooPad, Growl support, a new user interface, performance enhancements, and more. The application was originally shareware, but became free with the release of NetNewsWire 3.1 on January 10, 2008.
Developer(s) | Borland |
---|---|
Operating system | Microsoft Windows, MS-DOS |
Type | IDE |
License | Proprietary software |
Website | www.borland.com |
Borland C++ is a C and C++ IDE (integrated development environment) for MS-DOS and Microsoft Windows. It was the successor to Turbo C++, and included a better debugger, the Turbo Debugger, which was written in protected mode DOS.
Libraries[edit]
Object Windows Library (OWL): A set of C++ classes to make it easier to develop professional graphical Windows applications.
Turbo Vision: A set of C++ classes to create professional applications in DOS. Those classes mimics some of the aspects of a Windows application like: dialog boxes, messages pumps, menus, accelerators, etc.
Borland Graphics Interface: A library of functions for doing simple, presentation-style 2D graphics. Drivers were included for generic CGA, EGA and VGA capability, with support for a limited number of video-modes, but more advanced, third-party drivers were also available.
Add-ons[edit]
Borland Power Pack for DOS: Used to create 16- and 32-bit protected mode DOS applications, which can access a limited scope of the Windows API and call functions in any Windows DLL.
Borland Code Guard: Once installed and integrated within the IDE, Code Guard can insert instrumentation code in the final executable that can be used to monitor: pointer usage, API calls, how many times some function is called, and other features. If some error is found, a pop-up window appears, the debugger can stop, or a log is written to disk. Delivered for 16- and 32-bit applications.
Version history[edit]
Borland C++ for MS-DOS, Windows[edit]
- 2.0 (1991; MS-DOS)
- 3.0 (1991): New compiler support to build Microsoft Windows applications.
- 3.1 (1992): Introduction of Windows-based IDE and application frameworks (OWL 1.0, Turbovision 1.0)
- 4.0 (1993; Windows 3.x): MS-DOS IDE supported no longer, included OWL 2.0.
- 4.01
- 4.02 (1994)
- 4.5
- 4.51
- 4.52 (1995): Official support for Windows 95, OWL 2.5. Last version
- 4.53
- 5.0 (1996-03-26(base, Development Suite),[1] 1996-06-25(Design Tools);[2] Windows 3.x/95/NT 3.51[3]): Basic version includes Borland C++ 4.52, ObjectWindows Library (OWL) 5.0, Sun's Java Development Kit, Borland Debugger for Java, native 32-bit ObjectScripting IDE, Visual Database Tools (VDBT).[4] Development suite also includes CodeGuard 32/16, PVCS Version Manager, InstallShield Express, and AppAccelerator Just-in-Time for Java compiler.[5] Development Suite with Design Tools version adds Scenario View Editor, Scenario View Editor, Object Model Editor to Development Suite edition. Supports compilation of Windows 3.1/95/NT 3.51 and DOS native executables, with Windows 3.1 integrated development environment supported via BC++ 4.52. It does not (officially) work on Windows NT 4.0 (which was still in development at that time). 3rd party tests exhibited some problems on NT 4.0. C++ compiler can support ObjectWindows Library (OWL) 5.0, Microsoft Foundation Classes 3.2/4.0 libraries.
- 5.01 (1996-09-03(base, Development Suite, Design Tools)[6]): Base version now includes ViewSoft's Power Charger for MFC demo, Borland Delphi 2.0 Trial Edition, DeltaPoint's QuickSite automatic web page creation and site management tool; with ObjectWindows Library (OWL) updated to 5.01. Design Tools edition includes Together/C++ object-oriented analysis and design tools (OOAD) over Development Suite edition.
- 5.02 (1997-04-04[7]): Final independent release of the Borland C++ IDE (subsequently replaced up by the C++Builder series), final release to support compilation to (real-mode) MS-DOS target. New features include Windows NT 4.0 operating system support, MFC 4.1 library support, code signing. All versions include full OWL and MFC source codes. Corresponding to Borland C++Builder 3, the CD version of Borland C++ is free by mailing the in-box coupon from C++Builder 3 Professional package. Registered Borland C++ 5 owners can receive update for discount.
Borland C++ Compiler[edit]
- 5.5 (2000-02-16;[8] Windows 95/98/NT/2000): Based on Borland C++Builder 5, it is a freeware compiler without the IDE from the parent product. Includes Borland C++ Compiler v5.5, Borland Turbo Incremental Linker, Borland Resource Compiler / Binder, C++ Win32 Preprocessor, ANSI/OEM character set file conversion utility, Import Definitions utility to provide information about DLLs, Import Library utility to create import libraries from DLLs, Borland Turbo Dump, Librarian, Borland C/C++ Runtime Library, ANSI/ISO Standard Template Library (STL).
C++Builder with C++ bundle[edit]
- Borland C++ Builder 4.0 + Borland C++ 5.02 (1999): Bundle combination to facilitate the migration to C++Builder.
Borland C++ for OS/2[edit]
- Borland C++ 1.0 (1992)
- Borland C++ 1.5 (1992)
- Borland C++ 2.0 (1995-01-09 (base),[9] 1995-06-01 (SMART toolset)[10]): Supports OS/2 2.1 and Warp 3, OWL for Presentation Manager 2.0 library. SMART toolset edition includes Source Migration Analysis Reporting Toolset (SMART) developed by One Up Corporation for automatic migration of 16/32-bit Windows and 16-bit OS/2 codes to 32-bit OS/2.
Borland C++ (Builder) Mobile Edition[edit]
Designed to be integrated with Borland C++Builder 6, initial release was to be released in late November 2002, and bundled with Borland C++Builder 6 Enterprise and Professional editions.[11]
On April 29, 2003, Borland Software Corporation announced the release of Borland C++ Mobile Edition for Series 60, Nokia Edition.[12] It includes a version of Borland C++Builder 6, Series 60 Software Development Kit (SDK) for Symbian OS, Nokia Edition (includes Nokia Series 60 emulator), C++ Mobile Edition plug-in.
C++ Mobile Edition is also available as a separate plug-in for C++Builder 6, supporting all except Trial Editions.[13]
Evolution of Borland C++[edit]
Borland C++ evolved in a number of steps:
- Turbo C++ → Borland C++ → Borland C++Builder → CodeGear C++Builder → EmbarcaderoC++Builder
References[edit]
- ^'BORLAND ANNOUNCES AVAILABILITY OF BORLAND C++ DEVELOPMENT SUITE 5.0 AND BORLAND C++ 5.0 Also Announces BC++ 5.0 Object Scripting Contest -- Win a Free Lap-Top Computer!'. Archived from the original on 2001-06-18. Retrieved 2001-06-18.
- ^'BORLAND ANNOUNCES BORLAND C++ DEVELOPMENT SUITE WITH DESIGN TOOLS 5.0 - New Version of Acclaimed Development System Now Includes Together/C++ Object-Oriented Analysis and Design Tools'. Archived from the original on 2001-06-18. Retrieved 2001-06-18.
- ^Borland C++ Development Suite 5.0
- ^'BORLAND ANNOUNCES BORLAND C++ 5.0 FOR MICROSOFT WINDOWS 95/NT AND JAVA DEVELOPMENT - The Most Productive C++ Compiler for Windows 95 and NT now Includes Free Integrated Internet Development Tools for Java'. Archived from the original on 2001-02-07. Retrieved 2001-02-07.
- ^'BORLAND ANNOUNCES BORLAND C++ DEVELOPMENT SUITE 5.0 FOR MICROSOFT WINDOWS 95/NT AND JAVA DEVELOPMENT - The only comprehensive, integrated C++ Development Suite, including AppAccelerator™ Just-in-Time Compiler for Java'. Archived from the original on 2001-06-18. Retrieved 2001-06-18.
- ^'BORLAND ANNOUNCES AVAILABILITY OF UPDATES TO ITS AWARD-WINNING Borland C++ PRODUCTS - Products Now Include Microsoft Foundation Classes (MFC) and a Trial Version of Delphi 2.0'. Archived from the original on 2001-06-18. Retrieved 2001-06-18.
- ^'BORLAND SHIPS UPDATE TO BORLAND C++ 5.0 - New Service Release Provides 16- & 32-Bit Windows Development, Immediate Compatibility with Borland C++Builder - Borland C++ Design Tools Wins 'Jolt Cola Award' for Best Software Design and Management Tools'. Archived from the original on 2001-03-06. Retrieved 2001-03-06.
- ^'Inprise/Borland Launches Free Borland C++ Compiler'. Archived from the original on 2004-12-12. Retrieved 2004-12-12.
- ^'BORLAND SHIPS BORLAND C++ 2.0 FOR OS/2 - New Version Includes OWL Support and OS/2 Warp Compatibility'. Archived from the original on 2001-06-18. Retrieved 2001-06-18.
- ^'BORLAND SHIPS BORLAND C++ 2.0 FOR OS/2 WITH THE SMART TOOLSET - Bundle Combines Industry Standard OS/2 Compiler with Windows Migration Kit'. Archived from the original on 2001-06-10. Retrieved 2001-06-10.
- ^'Borland Introduces New C++ Technology to Accelerate Mobile Application Development'. Archived from the original on 2005-03-07. Retrieved 2005-03-07.
- ^'Nokia and Borland Announce Availability of Borland C++ Mobile Edition for Series 60, Nokia Edition'. Archived from the original on 2005-03-07. Retrieved 2005-03-07.
- ^'C++Builder Downloads'. Archived from the original on 2003-08-01. Retrieved 2003-08-01.
See also[edit]
External links[edit]
- Borland International, Inc. Borland C++ for Windows pages: 2.0 for OS/2, 4.5, 5.0-5.01, 5.02
- Inprise Corporation Borland C++ pages: C++ Compiler 5.5
- Borland Software Corporation Borland C++ pages: C++ Compiler 5.5, C++ Mobile Edition
Retrieved from 'https://en.wikipedia.org/w/index.php?title=Borland_C%2B%2B&oldid=984637915'
'Bi' means 'two' (like a bicycle has two wheels) .. .. so this is about things with two results. |
Tossing a Coin:
- Did we get Heads (H) or
- Tails (T)
We say the probability of the coin landing H is ½
And the probability of the coin landing T is ½
And the probability of the coin landing T is ½
Throwing a Die:
- Did we get a four .. ?
- .. or not?
We say the probability of a four is 1/6 (one of the six faces is a four)
And the probability of not four is 5/6 (five of the six faces are not a four)
And the probability of not four is 5/6 (five of the six faces are not a four)
Note that a die has 6 sides but here we look at only two cases: 'four: yes' or 'four: no'
Let's Toss a Coin!
Toss a fair coin three times .. what is the chance of getting two Heads?
Tossing a coin three times (H is for heads, T for Tails) can get any of these 8 outcomes:
HHH |
HHT |
HTH |
HTT |
THH |
THT |
TTH |
TTT |
Which outcomes do we want?
'Two Heads' could be in any order: 'HHT', 'THH' and 'HTH' all have two Heads (and one Tail).
So 3 of the outcomes produce 'Two Heads'.
What is the probability of each outcome?
Each outcome is equally likely, and there are 8 of them, so each outcome has a probability of 1/8
So the probability of event 'Two Heads' is:
Number of outcomes we want | Probability of each outcome | ||
3 | × | 1/8 | = 3/8 |
So the chance of getting Two Heads is 3/8
We used special words:
- Outcome: any result of three coin tosses (8 different possibilities)
- Event: 'Two Heads' out of three coin tosses (3 outcomes have this)
3 Heads, 2 Heads, 1 Head, None
The calculations are (P means 'Probability of'):
Netnewswire 5 0 3 12
- P(Three Heads) = P(HHH) = 1/8
- P(Two Heads) = P(HHT) + P(HTH) + P(THH) = 1/8 + 1/8 + 1/8 = 3/8
- P(One Head) = P(HTT) + P(THT) + P(TTH) = 1/8 + 1/8 + 1/8 = 3/8
- P(Zero Heads) = P(TTT) = 1/8
We can write this in terms of a Random Variable, X, = 'The number of Heads from 3 tosses of a coin':
- P(X = 3) = 1/8
- P(X = 2) = 3/8
- P(X = 1) = 3/8
- P(X = 0) = 1/8
And this is what it looks like as a graph:
It is symmetrical!
Making a Formula
Now imagine we want the chances of 5 heads in 9 tosses: to list all 512 outcomes will take a long time!
So let's make a formula.
In our previous example, how can we get the values 1, 3, 3 and 1 ?
Well, they are actually in Pascal’s Triangle !
Can we make them using a formula?
Sure we can, and here it is:
It is often called 'n choose k'
- n = total number
- k = number we want
- the '!' means 'factorial', for example 4! = 1×2×3×4 = 24
You can read more about it at Combinations and Permutations.
Let's try it:
Example: with 3 tosses, what are the chances of 2 Heads?
We have n=3 and k=2:
=3×2×12×1 × 1
So there are 3 outcomes that have '2 Heads'
(We knew that already, but now we have a formula for it.)
Let's use it for a harder question:
Example: with 9 tosses, what are the chances of 5 Heads?
We have n=9 and k=5:
=9×8×7×6×5×4×3×2×15×4×3×2×1 × 4×3×2×1
So 126 of the outcomes will have 5 heads
And for 9 tosses there are a total of 29 = 512 outcomes, so we get the probability:
Number of outcomes we want | Probability of each outcome | |||
126 | × | 1512 | = | 126512 |
So:
P(X=5) = 126512 = 0.24609375
About a 25% chance.
(Easier than listing them all.)
Bias!
So far the chances of success or failure have been equally likely.
Netnewswire 5 0 3 13
But what if the coins are biased (land more on one side than another) or choices are not 50/50.
Example: You sell sandwiches. 70% of people choose chicken, the rest choose something else.
What is the probability of selling 2 chicken sandwiches to the next 3 customers?
This is just like the heads and tails example, but with 70/30 instead of 50/50.
Let's draw a tree diagram:
The 'Two Chicken' cases are highlighted.
The probabilities for 'two chickens' all work out to be 0.147, because we are multiplying two 0.7s and one 0.3 in each case. In other words
0.147 = 0.7 × 0.7 × 0.3
Or, using exponents:
![Netnewswire 5 0 3 13 Netnewswire 5 0 3 13](https://images.sympla.com.br/5f5fcf1953a4d.png)
= 0.72 × 0.31
The 0.7 is the probability of each choice we want, call it p
The 2 is the number of choices we want, call it k
And we have (so far):
= pk × 0.31
The 0.3 is the probability of the opposite choice, so it is: 1−p
The 1 is the number of opposite choices, so it is: n−k
Which gives us:
= pk(1-p)(n-k)
Where
- p is the probability of each choice we want
- k is the the number of choices we want
- n is the total number of choices
Example: (continued)
- p = 0.7 (chance of chicken)
- k = 2 (chicken choices)
- n = 3 (total choices)
So we get:
=0.72(0.3)(1)
=0.147
which is what we got before, but now using a formula
Now we know the probability of each outcome is 0.147
But we need to include that there are three such ways it can happen: (chicken, chicken, other) or (chicken, other, chicken) or (other, chicken, chicken)
Example: (continued)
The total number of 'two chicken' outcomes is:
=3×2×12×1 × 1
And we get:
Number of outcomes we want | Probability of each outcome | |||
3 | × | 0.147 | = | 0.441 |
So the probability of event '2 people out of 3 choose chicken' = 0.441
OK. That was a lot of work for something we knew already, but now we have a formula we can use for harder questions.
Example: Sam says '70% choose chicken, so 7 of the next 10 customers should choose chicken' .. what are the chances Sam is right?
So we have:
- p = 0.7
- n = 10
- k = 7
And we get:
=0.77(0.3)(3)
That is the probability of each outcome.
And the total number of those outcomes is:
=10×9×8×7×6×5×4×3×2×17×6×5×4×3×2×1 × 3×2×1
=120
And we get:
Number of outcomes we want | Probability of each outcome | |||
120 | × | 0.0022235661 | = | 0.266827932 |
So the probability of 7 out of 10 choosing chicken is only about 27%
Moral of the story: even though the long-run average is 70%, don't expect 7 out of the next 10.
Putting it Together
Now we know how to calculate how many:
n!k!(n-k)!
And the probability of each:
pk(1-p)(n-k)
When multiplied together we get:
Probability of k out of n ways:
P(k out of n) = n!k!(n-k)!pk(1-p)(n-k)
Nodebeat 1 0 1 – a music apps for mac. The General Binomial Probability Formula
Important Notes:
Netnewswire 5 0 3 15
- The trials are independent,
- There are only two possible outcomes at each trial,
- The probability of 'success' at each trial is constant.
Quincunx
Have a play with the Quincunx (then read Quincunx Explained) to see the Binomial Distribution in action.
Throw the Die
A fair die is thrown four times. Calculate the probabilities of getting:
- 0 Twos
- 1 Two
- 2 Twos
- 3 Twos
- 4 Twos
In this case n=4, p = P(Two) = 1/6
X is the Random Variable ‘Number of Twos from four throws’.
Netnewswire 5 0 3 100
Substitute x = 0 to 4 into the formula:
P(k out of n) = n!k!(n-k)! pk(1-p)(n-k)
Like this (to 4 decimal places):
- P(X = 0) = 4!0!4! × (1/6)0(5/6)4 = 1 × 1 × (5/6)4 = 0.4823
- P(X = 1) = 4!1!3! × (1/6)1(5/6)3 = 4 × (1/6) × (5/6)3 = 0.3858
- P(X = 2) = 4!2!2! × (1/6)2(5/6)2 = 6 × (1/6)2 × (5/6)2 = 0.1157
- P(X = 3) = 4!3!1! × (1/6)3(5/6)1 = 4 × (1/6)3 × (5/6) = 0.0154
- P(X = 4) = 4!4!0! × (1/6)4(5/6)0 = 1 × (1/6)4 × 1 = 0.0008
Summary: 'for the 4 throws, there is a 48% chance of no twos, 39% chance of 1 two, 12% chance of 2 twos, 1.5% chance of 3 twos, and a tiny 0.08% chance of all throws being a two (but it still could happen!)'
This time the graph is not symmetrical:
It is not symmetrical!
It is skewed because p is not 0.5
Sports Bikes
Your company makes sports bikes. 90% pass final inspection (and 10% fail and need to be fixed).
What is the expected Mean and Variance of the 4 next inspections?
First, let's calculate all probabilities.
- n = 4,
- p = P(Pass) = 0.9
X is the Random Variable 'Number of passes from four inspections'.
Substitute x = 0 to 4 into the formula:
P(k out of n) = n!k!(n-k)! pk(1-p)(n-k)
Like this:
- P(X = 0) = 4!0!4! × 0.900.14 = 1 × 1 × 0.0001 = 0.0001
- P(X = 1) = 4!1!3! × 0.910.13 = 4 × 0.9 × 0.001 = 0.0036
- P(X = 2) = 4!2!2! × 0.920.12 = 6 × 0.81 × 0.01 = 0.0486
- P(X = 3) = 4!3!1! × 0.930.11 = 4 × 0.729 × 0.1 = 0.2916
- P(X = 4) = 4!4!0! × 0.940.10 = 1 × 0.6561 × 1 = 0.6561
Summary: 'for the 4 next bikes, there is a tiny 0.01% chance of no passes, 0.36% chance of 1 pass, 5% chance of 2 passes, 29% chance of 3 passes, and a whopping 66% chance they all pass the inspection.'
Mean, Variance and Standard Deviation
Let's calculate the Mean, Variance and Standard Deviation for the Sports Bike inspections.
There are (relatively) simple formulas for them. They are a little hard to prove, but they do work!
The mean, or 'expected value', is:
μ = np
For the sports bikes:
μ = 4 × 0.9 = 3.6
So we can expect 3.6 bikes (out of 4) to pass the inspection.
Makes sense really .. 0.9 chance for each bike times 4 bikes equals 3.6
Makes sense really .. 0.9 chance for each bike times 4 bikes equals 3.6
The formula for Variance is:
Variance: σ2 = np(1-p)
And Standard Deviation is the square root of variance:
σ = √(np(1-p))
For the sports bikes:
Variance: σ2 = 4 × 0.9 × 0.1 = 0.36
Standard Deviation is:
σ = √(0.36) = 0.6
Note: we could also calculate them manually, by making a table like this:
X | P(X) | X × P(X) | X2 × P(X) |
0 | 0.0001 | 0 | 0 |
1 | 0.0036 | 0.0036 | 0.0036 |
2 | 0.0486 | 0.0972 | 0.1944 |
3 | 0.2916 | 0.8748 | 2.6244 |
4 | 0.6561 | 2.6244 | 10.4976 |
SUM: | 3.6 | 13.32 |
The mean is the Sum of (X × P(X)):
μ = 3.6
The variance is the Sum of (X2 × P(X)) minus Mean2:
Variance: σ2 = 13.32 − 3.62 = 0.36
Standard Deviation is: σ = √(0.36) = 0.6
And we got the same results as before (yay!) Summary
- The General Binomial Probability Formula: P(k out of n) = n!k!(n-k)! pk(1-p)(n-k)
- Mean value of X: μ = np
- Variance of X: σ2 = np(1-p)
- Standard Deviation of X: σ = √(np(1-p))