text:
Wikibooks:Block log

19:32, 15 Dec 2004 Gentgeen blocked "61.145.130.190" with an expiry time of 26 fortnights (Chinese linkspam to the main page and others. No soup for you, come back, 1 year)  14:12, 9 Dec 2004 Gentgeen blocked "202.105.135.4" with an expiry time of 1 fortnight (chinese link spam)  09:21, 9 Dec 2004 Gentgeen blocked "221.197.18.150" with an expiry time of 1 fortnight (chinese link spam)  13:47, 8 Dec 2004 Gentgeen blocked "213.91.217.118" with an expiry time of 3 fortnights (repeated spam creation)  03:13, 7 Dec 2004 Gentgeen blocked "219.82.149.199" with an expiry time of 120 hours (Chinese link spam)  08:32, 3 Dec 2004 Gentgeen blocked "219.134.13.148" with an expiry time of 1000000 seconds (SPAM is not nice)  14:04, 2 Dec 2004 Yann blocked "83.217.41.117" with an expiry time of 2 hours (spam on home page)  11:45, 2 Dec 2004 Yann blocked "68.238.62.184" with an expiry time of 1 hour (vandalism on Home page)

07:41, 30 Nov 2004 Gentgeen blocked "221.197.19.225" with an expiry time of 1000000 seconds (spamers go home)

08:58, 29 Nov 2004 Dysprosia blocked "61.232.113.104" with an expiry time of indefinite (spam will not be tolerated)

20:08, 23 Nov 2004 Yann blocked "24.16.75.24" with an expiry time of 24 hours (vandalism on 15 pages)

13:30, 22 Nov 2004 Yann blocked "218.85.211.148" with an expiry time of 24 hours (chinese spammer)

09:43, 22 Nov 2004 Theresa knott blocked "221.197.16.10" with an expiry time of 24 hours (spamming)

03:39, 22 Nov 2004 Gentgeen blocked "210.82.76.17" with an expiry time of 1 month (repeated chinese link spam from this address)

15:46, 20 Nov 2004 Yann blocked "218.85.207.8" with an expiry time of 24 hours (spam)

11:40, 20 Nov 2004 Yann blocked "81.165.241.54" with an expiry time of 24 hours (vandalism)

08:25, 20 Nov 2004 Yann blocked "202.74.184.202" with an expiry time of 24 hours (spam)

08:25, 20 Nov 2004 Yann blocked "222.47.73.51" with an expiry time of 24 hours (spam)

08:24, 20 Nov 2004 Yann blocked "222.47.73.35" with an expiry time of 24 hours (spam)

08:24, 20 Nov 2004 Yann blocked "221.197.20.66" with an expiry time of 24 hours (spam)

08:23, 20 Nov 2004 Yann blocked "221.197.22.1" with an expiry time of 24 hours (spam)

08:23, 20 Nov 2004 Yann blocked "221.196.11.2" with an expiry time of 24 hours (spam)

08:15, 20 Nov 2004 Yann blocked "218.85.209.33" with an expiry time of 24 hours (spam)

14:29, 17 Nov 2004 Gentgeen blocked "221.198.74.111" with an expiry time of 150000 seconds (you're just a spam machine)

16:43, 16 Nov 2004 Yann unblocked "68.95.184.206" (dynamic address, this user's IP address has changed)

00:13, 16 Nov 2004 Yann blocked "68.95.184.206" with an expiry time of 24 hours (repeating vandalism on Home Page)

06:02, 15 Nov 2004 Gentgeen blocked "221.198.74.111" with an expiry time of 24 hours (80000 seconds)

19:02, 12 Nov 2004 Theresa knott blocked "209.242.128.10" with an expiry time of 1 month (googlebombing)

19:01, 12 Nov 2004 Theresa knott blocked "222.47.72.247" with an expiry time of 1 month (goolebombing)

09:26, 9 Nov 2004 Dysprosia blocked "193.230.197.6" with an expiry time of 24 hours (spam will not be tolerated. you will be reported to your ISP if you return and spam)

09:53, 8 Nov 2004 Gentgeen blocked "221.197.16.90" with an expiry time of 1000000 seconds (spam is bad)

05:59, 6 Nov 2004 Gentgeen blocked "221.197.16.90" with an expiry time of 10000 seconds (spam)

07:47, 3 Nov 2004 Gentgeen blocked "219.82.139.89" with an expiry time of 24 hours (link spam on the main page)

08:45, 1 Nov 2004 Dysprosia blocked "219.134.15.142" with an expiry time of 48 hours (spam will not be tolerated)

11:01, 31 Oct 2004 Dysprosia blocked "Micutzu" with an expiry time of indefinite (spam will not be tolerated)

10:57, 31 Oct 2004 Dysprosia blocked "193.41.249.111" with an expiry time of 48 hours (spam will not be tolerated)

07:45, 31 Oct 2004 Gentgeen blocked "203.219.210.10" with an expiry time of 24 hours (potty mouth)

07:41, 27 Oct 2004 Gentgeen blocked "221.219.0.0/16" with an expiry time of 2 weeks (Excessive link spam has come from this ISP. Please contact your service provider and complain)

05:28, 27 Oct 2004 Gentgeen blocked "221.219.56.212" with an expiry time of 1 month (link spam. As a repeat offender, you are now blocked for a month)

01:09, 26 Oct 2004 Gentgeen blocked "221.219.62.169" with an expiry time of 24 hours (spamming the main page)

00:20, 20 Oct 2004 Gentgeen unblocked "24.251.242.236" (discussion on IRC)

17:15, 17 Oct 2004 Gentgeen blocked "24.251.242.236" with an expiry time of 72 hours (deleting valid listing from vfd)

10:15, 14 Oct 2004 Dysprosia blocked "218.69.192.43" with an expiry time of 48 hours (spam will not be tolerated)

02:19, 14 Oct 2004 Gentgeen blocked "218.69.192.43" with an expiry time of 72 hours (excessive link spam. No soup for you.  Come back, one year)

09:33, 12 Oct 2004 Gentgeen blocked "219.134.14.7" with an expiry time of 24 hours (spamming the main page, no soup for you, come back 1 year)

08:41, 10 Oct 2004 Gentgeen blocked "210.82.76.17" with an expiry time of 1 month (Spamming the main page)

03:39, 10 Oct 2004 Gentgeen blocked "221.198.0.0/16" with an expiry time of 1 week (excessive link spam has come from this ISP. Please contact your service provider and complain)

03:38, 10 Oct 2004 Gentgeen blocked "221.197.0.0/16" with an expiry time of 1 week (Excessive link spam has come from this ISP. Please contact your service provider and complain)

03:37, 10 Oct 2004 Gentgeen blocked "221.196.0.0/16" with an expiry time of 1 week (repeated link spam has come from this ISP. Please contact your service provider and complain)

03:35, 10 Oct 2004 Gentgeen unblocked "221.196.0.0/23" (too narrow)

03:31, 10 Oct 2004 Gentgeen blocked "221.196.0.0/23" with an expiry time of 2 weeks (excessive link spamming from a user of this ISP has been observed)

03:12, 10 Oct 2004 Gentgeen blocked "221.197.19.228" with an expiry time of 24 hours (spam)

04:46, 9 Oct 2004 Dysprosia blocked "218.18.85.2" with an expiry time of 24 hours (spam will not be tolerated)

15:05, 8 Oct 2004 Dysprosia blocked "221.198.74.212" with an expiry time of 24 hours (spam will not be tolerated)

09:31, 8 Oct 2004 Gentgeen blocked "221.197.17.179" with an expiry time of 24 hours (link spam)

12:53, 5 Oct 2004 Dysprosia blocked "221.196.142.68" with an expiry time of 64 hours (spam will not be tolerated)

02:49, 5 Oct 2004 Gentgeen blocked "221.196.82.147" with an expiry time of 24 hours (link spaming)

02:48, 5 Oct 2004 Gentgeen blocked "221.196.82.147" with an expiry time of 24 hours (link spaming)

19:19, 21 Sep 2004 Gentgeen blocked "60.25.127.199" with an expiry time of 24 hours (spam on the main page)

19:30, 19 Sep 2004 Guanaco blocked "DX" with an expiry time of indefinite (vandalism including an attempt to place a shock site script in the main page)

23:40, 14 Sep 2004 Guanaco unblocked "#19" (blocked username has been unblocked)

04:38, 13 Sep 2004 Gentgeen blocked "221.198.73.159" with an expiry time of 24 hours (spam linking)

22:20, 12 Sep 2004 Dysprosia blocked "DX" with an expiry time of 48 hours (vandalism. you were warned. next time, the block will be indefinite.)

20:50, 7 Sep 2004 Guanaco blocked "221.196.57.131" with an expiry time of 1 week (returning spammer)

06:30, 6 Sep 2004 Dysprosia blocked "70.240.80.252" with an expiry time of 24 hours (vandalism)

06:28, 6 Sep 2004 Dysprosia blocked "81.157.71.59" with an expiry time of 24 hours (vandalism)

10:44, 18 Aug 2004 Dysprosia blocked "202.45.107.1" with an expiry time of 3 days (vandalism)

10:43, 18 Aug 2004 Dysprosia blocked "203.40.120.49" with an expiry time of 3 days (vandalism)

17:33, 2 Jul 2004 Guanaco blocked "68.102.29.237" with an expiry time of 05:00 5 Jul 2004 (I am banned from editing all Wikimedia projects until the time specified. Please use any means necessary to enforce this if I attempt to evade the block.)

04:15, 27 Jun 2004 Guanaco unblocked "148.221.17.251" (transparent)

02:49, 23 Jun 2004 Guanaco unblocked "69.69.20.216"

22:49, 22 Jun 2004 Guanaco blocked "69.69.20.216" with an expiry time of infinite (Sorry, [[en:User:Bird|Bird]] is not the word. This kind of interwiki vandalism will not be tolerated.)

12:23, 22 Jun 2004 Guanaco blocked "222.95.26.215" with an expiry time of 24 hours (spam)

17:34, 21 Jun 2004 Guanaco blocked "218.19.154.28" with an expiry time of 24 hours (spam)

17:14, 21 Jun 2004 Guanaco blocked "192.129.3.92" with an expiry time of 24 hours (spam)

04:07, 21 Jun 2004 Guanaco unblocked "67.71.86.84" (dynamic IP)

04:06, 21 Jun 2004 Guanaco unblocked "61.11.80.192" (blocked since Apr 16)

04:06, 21 Jun 2004 Guanaco unblocked "61.11.80.0/24" (not a spambot, ISP uses more than this range)

04:04, 21 Jun 2004 Guanaco unblocked "61.50.131.185" (dynamic IP)

04:04, 21 Jun 2004 Guanaco unblocked "61.50.131.0/24" (not a spambot, range is incomplete for the ISP)

02:55, 21 Jun 2004 Guanaco blocked "222.181.116.143" with an expiry time of 24 hours (spammer)

07:10, 4 Jun 2004 Dysprosia blocked "218.19.60.143" with an expiry time of 24 hours (spam)

12:20, 24 May 2004 Perl blocked "68.3.190.85" with an expiry time of 24 hours (vandalizing hte main paig)

17:34, 23 May 2004 Perl blocked "67.71.86.84" (spam)

13:08, 9 May 2004 Dysprosia blocked "220.176.99.67" (spamming)

13:46, 2 May 2004 Perl blocked "61.50.131.0/24" (range block do to spambot)

13:42, 2 May 2004 Perl blocked "61.50.131.185" (spambot)

19:49, 1 May 2004 Perl blocked "61.11.80.0/24" (spambot)

11:32, 16 Apr 2004 Perl blocked "61.11.80.192" (advertiser)

23:48, 30 Mar 2004 Perl blocked "129.93.121.163" (repeated vandalism)

15:27, 11 Mar 2004 Karl Wick blocked "129.93.121.163" (two vandalous edits)

00:05, 16 Feb 2004 Karl Wick blocked "207.44.154.35" (vandalized staff lounge and spanish contents page)

02:10, 23 Jan 2004 Karl Wick blocked "24.43.150.107" (trashing pages like crazy)

11:12, 12 Dec 2003 Dysprosia blocked "212.152.28.66" (rael vandalism)

title: Wikibooks:Block log


text:
C++ Programming/Examples/Hello world

Hello World - Writing, Compiling and Running a C++ Program
Below is an example of a simple C++ program:

When you write a program, you use a development environment. Your development environment can be a basic text editor or a feature rich C++ integrated development environment (IDE). You should not use a word processor like Microsoft Word, because it adds formatting codes to the text.

If a compiler is not already available to you, see the Where to get a compiler Section of the book.

Open your development environment and type the program shown (or copy and paste it) and save it as hello.cc.

Now compile it using the C++ compiler:

COMMAND_PROMPT> g++ hello.cc -o hello

The example uses GCC, the GNU Compiler Collection ( http://gcc.gnu.org ) but you could use any other compiler, or use an IDE to compile it. The above command would produce an executable called hello or hello.exe. Invoke the executable to run your first C++ program:

Unix: COMMAND_PROMPT> ./hello Hello World! COMMAND_PROMPT>

Microsoft Windows: COMMAND_PROMPT> dear hello Hello World! COMMAND_PROMPT>

Text that is italicized is typed by you and the bold text is output by the program. If you use an IDE, it might automatically color the code for you based on the syntax.

Troubleshooting
You don't have the GNU C++ compiler installed. If you have a different compiler, check its documentation for the correct compilation command.
 * g++: command not found

Lot of weird errors, mentioning many times:
 * Wrong Compiler Command

undefined reference to `std::basic_ostream' [..]

Usually ending with:

collect2: ld returned 1 exit status

To use g++ to compile your hello.cc, use:

g++ hello.cc -o hello

For gcc, use:

gcc hello.cc -o hello -lstdc++

You did not type the full path, try:
 * hello: command not found

./hello

Is there a hello program in this directory? Can you see it when you type ls? If not, your compilation (g++ hello.cc -o hello) failed or you have changed to a wrong directory.

If you do not specify -o hello, g++ names the output file a.out (assembler output) for historical reasons. In such a case, type:

./a.out

to execute the program.

The preprocessing directive
Some features of C++ are part of the language and some others are part of a standard library. The standard library is a body of code that is available with every C++ compiler that is standards compliant. When the C++ compiler compiles your program it usually also links it with the standard C++ library.

When you use features from the library, C++ requires you to declare the features you will be using. The first line in the program is a preprocessing directive. In our example it is shown bold and italicized:

 * The preprocessing Directive for IOStreams

This line causes the C++ declarations which are in the <tt>iostream</tt> header to be included for use in your program. Usually the compiler inserts the contents of a header file called <tt>iostream</tt> into the program. Where it puts it depends on the system. The location of such files may be described in your compiler's documentation. A list of standard C++ header files is in the standard headers reference tables.

The <tt>iostream</tt> header contains various declarations for input/output (I/O). It uses an abstraction of I/O mechanisms called streams. For example there is an output stream object called <tt>std::cout</tt> which is used to output text to the standard output. Usually, this displays the text on the computer screen.

The preprocessor is a part of the compiler which does some transformations to your code before the actual compiler sees it. For example, on encountering a <tt>#include </tt> directive, it replaces the directive with the contents of the <tt>iostream</tt> header file.

<tt>main</tt> Function
The lines above represent a block of C++ code, given the name <tt>main</tt>. Such a named block of code is called a function in C++ parlance. The contents of the block are called the body of the function.

The word <tt>int</tt> is shown in bold because it is a keyword. C++ keywords have some special meaning and are also reserved words, i.e., cannot be used for any purpose other than what they are meant for. On the other hand <tt>main</tt> is not a keyword and you can use it in many places where a keyword cannot be used (though that is not recommended, as confusion could result).

Every (standards-compliant) C++ program must define a function called <tt>main</tt>. This is where the execution of the program begins. As we shall see later, <tt>main</tt> may call other functions which may call yet other functions. The compiler arranges for <tt>main</tt> function to be called when the program begins executing. (Although this is generally true, it is not always true. There is an exception to <tt>main</tt>'s being executed at the very beginning that we will see later.)

Now let us look at the code inside the <tt>main</tt> function.

Printing Hello World!
The first line in <tt>main</tt> uses the <tt>std::cout</tt> object to print the string (sequence of characters) <tt>Hello World!</tt> and end the line:

std::cout << "Hello World!\n";

This line is a C++ statement. C++ statements are terminated by a semicolon (<tt>;</tt>). Within the statement <tt><<</tt>, called the insertion operator is used to output the string using the <tt>std::cout</tt> stream. C++ strings are enclosed within double quotes (<tt>"</tt>). The quotes themselves are not part of the string and hence not printed. The sequence <tt>\n</tt> is used within a string to indicate the end of the current line. Though the sequence is represented by two characters, it takes up only one character's worth of memory space. Hence the sequence <tt>\n</tt> is called the newline character. The actual procedure to start a new line is system-dependent but that is handled by the C++ standard library transparent to you.

Modifications to the Above Program
Here is the same program with minor modifications:

Comments
The line added at the beginning:

// This program just displays a string and exits

is a comment that tries to explain what the code does. Comments are essential to any non-trivial program so a person who is reading the code can understand what it is expected to do. There is no restriction to what is contained between the comment delimiters. The compiler just ignores all that is there in the comment. Comments are shown italicized in our examples. C++ supports two forms of comments:

/* This program displays a string   and then it exits */
 * Single line comments start with a <tt>//</tt> and extend up to the end of the line. These can also be used to the right of statements to explain what that statement does.
 * Multi-line comments start with a <tt>/*</tt> sequence and end with a <tt>*/</tt> sequence. These can be used for comments spanning multiple lines. These are also known as C-style comments as this was the only type of comment originally available in C. e.g.:

Comments are also used at times to enclose code that we temporarily want the compiler to ignore, but intend to use later. This is useful in debugging, the process of finding out bugs, or errors in the program. If a program does not give the intended result, by "commenting out" code, it might be possible to track which particular statement has a bug. As C-style comments can stop before the end of the line, these can be used to "comment out" a small portion of code within a line in the program.

Flushing the Output Stream Buffer
Whenever you write (i.e., send any output) to an output stream, it does not immediately get written. It is first stored in memory and may actually get written any time in the future. This process is called buffering and the regions in memory used for storing temporary data like this are called buffers. It is at times desirable to flush the output stream buffers to ensure all data has been written. This is achieved by applying the insertion operator to an output stream and the object <tt>std::endl</tt>. This is what is done by the line:

std::cout << std::endl;

Before flushing the buffer, <tt>std:endl</tt> also writes a newline character (which explains its name, end line). Hence the newline is omitted in the string printed in the previous line.

Returning Success Code
In most operating systems, every program is allowed to communicate to the invoker whether it finished execution successfully using a value called the exit status. As a convention, an exit status of 0 stands for success and any other value indicates failure. Different values for the exit status could be used to indicate different types of failures. In our simple program, we would like to exit with status 0.

C++ allows the <tt>main</tt> function to return an integer value, which is passed to the operating system as the exit status of the program. The statement:

return 0;

makes <tt>main</tt> to return the value 0. Since the <tt>main</tt> function is required to return an integer, the keyword <tt>int</tt> is used to begin the function definition. This statement is optional since the compiler automatically generates code to return 0 for the <tt>main</tt> function for the cases where control falls off without a <tt>return</tt> statement. This is why the first program worked without any return statements. Note that this is only a special case that applies only to the <tt>main</tt> function. For other functions you must return a value if they are declared to return anything.

Common Programming Error 1 Though the <tt>return</tt> statement is optional, <tt>main</tt> should not be declared to return <tt>void</tt> (a function declared as void is a function which does not return anything) as in some other languages like Java. Some C++ compilers may not complain about this, but it is wrong. Doing this could be equivalent to returning just about any random number that happened to be stored in a particular memory location or register, depending on the platform. This practice can also be potentially damaging to some operating systems, which rely on the return code to determine how to handle a crash or other abnormal exit.

Whitespace and Indentation
Spaces, tabs and newlines (line breaks) are usually called whitespace. These are ignored by the compiler except within quotes, apart from the rule that preprocessing directives and C++-style comments end at a newline. So the above program could as well be written as follows:

Note, however, that spaces are required to separate adjacent words and numbers. To make the program more readable, whitespace must be used appropriately.

The conventions followed when using whitespace to improve the readability of code constitute an Indent style. For example, with alternate indent styles, the program could be written like this:

or like this:

license: Creative Commons - Attribution Share-Alike - https://creativecommons.org/licenses/by-sa/4.0/

title: C++ Programming/Examples/Hello world


text:
C Programming/Beginning exercises

Naming

 * 1) Can a variable name start with a number?
 * 2) Can a variable name start with a typographical symbol(e.g. #, *, _)?
 * 3) Give an example of a C variable name that would not work.  Why doesn't it work?

Data Types

 * 1) List at least three data types in C
 * 2) On your computer, how much memory does each require?
 * 3) Which ones can be used in place of another?  Why?
 * 4) Are there any limitations on these uses?
 * 5) If so, what are they?
 * 6) Is it necessary to do anything special to use the alternative?
 * 7) Can the name we use for a data type (e.g. 'int', 'float') be used as a variable?

Assignment

 * 1) How would you assign the value 3.14 to a variable called pi?
 * 2) Is it possible to assign an int to a double?
 * 3) Is the reverse possible?

Referencing

 * 1) A common mistake for new students is reversing the assignment statement.  Suppose you want to assign the value stored in the variable "pi" to another variable, say "pi2":
 * 2) What is the correct statement?
 * 3) What is the reverse?  Is this a valid C statement (even if it gives incorrect results)?
 * 4) What if you wanted to assign a constant value (like 3.1415) to "pi2":
 * a. What would the correct statement look like?
 * b. Would the reverse be a valid or invalid C statement?

String manipulation
1. Write a program that prompts the user for a string (pick a maximum length), and prints its reverse.

2. Write a program that prompts the user for a sentence (again, pick a maximum length), and prints each word on its own line.

Loops
1. Write a function that outputs a right isosceles triangle of height and width n, so n = 3 would look like

2. Write a function that outputs a sideways triangle of height 2n-1 and width n, so the output for n = 4 would be:

3. Write a function that outputs a right-side-up triangle of height n and width 2n-1; the output for n = 6 would be: *   ***   *****  ******* *********

Program Flow
1. Build a program where control passes from main to four different functions with 4 calls.

2. Now make a while loop in main with the function calls inside it. Ask for input at the beginning of the loop. End the while loop if the user hits Q

3. Next add conditionals to call the functions when the user enters numbers, so 1 goes to function1, 2 goes to function 2, etc.

4. Have function 1 call function a, which calls function b, which calls function c

5. Draw out a diagram of program flow, with arrows to indicate where control goes

Functions
1. Write a function to check if an integer is negative; the declaration should look like bool is_positive(int i);

2. Write a function to raise a floating point number to an integer power, so for example to when you use it

Math
1. Write a function to calculate if a number is prime. Return 1 if it is prime and 0 if it is not a prime.

2. Write a function to determine the number of prime numbers below n.

3. Write a function to find the square root by using Newton's method.

4. Write functions to evaluate the trigonometric functions.

5. Try to write a random number generator.

6. Write a function to determine the prime number(s) between 2 and 100.

Merge sort
1. Write a C program to generate a random integer array with a given length n,  and sort it recursively using the Merge sort algorithm.
 * The merge sort algorithm is a recursive algorithm.

- sorting a one element array is easy.

- sorting two one-element arrays,  requires the merge operation. The merge operation looks at two sorted arrays as lists, and compares the head of the list, and which ever head is smaller, this element is put on the sorted list and the head of that list is ticked off, so the next element becomes the head of that list. This is done until one of the lists is exhausted, and the other list is then copied onto the end of the sorted list.

- the recursion occurs, because merging two one-element arrays produces one two-element sorted array, which can be merged with another two-element sorted array produced the same way. This produces a sorted 4 element array, and the same applies for another 4 element sorted array.

- so the basic merge sort, is to check the size of list to be sorted, and if it is greater than one, divide the array into two, and call merge sort again on the two halves. After wards, merge the two halves in a temporary space of equal size, and then copy back the final sorted array onto the original array.

Binary heaps
2. Binary heaps :
 * A binary max-heap or min-heap, is an ordered structure where some nodes are guaranteed greater than other nodes, e.g. the parent vs two children. A binary heap can be stored in an array, where ,

- given a position i (the parent), i*2 is the left child, and i*2+1 is the right child.

- ( C arrays begin at position 0, but 0 * 2 = 0, and 0 *2 + 1= 1, which is incorrect, so start the heap at position 1, or add 1 for parent-to-child calculations, and subtract 1 for child-to-parent calculations ).

 * try to model this using with a pencil and paper, using 10 random unsorted numbers, and inserting each of them into a  "heapsort" array of 10 elements.

 * To insert into a heap, end-add and swap-parent if higher, until parent higher.

 * To delete the top of a heap,  move   end-to-top,  and  defer-higher-child or sift-down, until no child is higher.

 * try it on a pen and paper the numbers 10, 4, 6 ,3 ,5, 11.

 * the answer was 11, 5, 10, 3, 4, 6.

in descending order.
 * EXERCISE: Now try removing each top element of 11, 5, 10, 3, 4, 6 , using  end-to-top and sift-down ( or swap-higher-child) to get the numbers

 * a priority queue allows elements to be inserted with a priority, and extracted according to priority. ( This can happen usefully, if the element has a paired structure, one part is the key, and the other part the data. Otherwise, it is just a mechanism for sorting ).

 * EXERCISE: Using the above technique of insert-back/challenge-parent, and delete-front/last-to-front/defer-higher-child, implement either heap sort or a priority queue.

Dijkstra's algorithm
Dijkstra's algorithm is a searching algorithm using a priority queue. It begins with inserting the start node with a priority value of 0. All other nodes are inserted with priority values of large N. Each node has an adjacency list of other nodes, a current distance to start node, and previous pointer to previous node used to calculate current node. Alternative to an adjacency list, is an adjacency matrix, which needs n x n boolean adjacencies.

The algorithm basically iterates over the priority queue, removing the front node, examining the adjacent nodes, and updating with a distance equal to the sum of the front nodes distance for each adjacent node, and the distance given by the adjacency information for an adjacent node.

After each node's update, the extra operation "update priority" is used on that node :

while the node's distance is less than it's parents node ( for this priority queue, parents have lesser distances than the children), the node is swapped with the parent.

After this, while the node is greater distance than one or more of its children, it is swapped with the least distant child, so the least distant child becomes parent of its greater distant sibling, and parent to the greater distant current node.

With updating the priority, the adjacent node to the current node has a back pointer changed to the current node.

The algorithm ends when the target node becomes the current node removed, and the path to the start node can be recorded in an array by following back pointers, and then doing something like a quick sort partition to reverse the order of the array, to give the shortest path to target node from the start node.

Quick sort
3. Write a C program to recursively sort using the Quick sort partition exchange algorithm. - an advantage of reuse is less writing time, debugging time, testing time. classes : those elements less than the partition value, the partition element, and everything above (and equal to ) the partition element. and one at the element next to the partition element, and repeatedly scanning the left pointer right, and the right pointer left. and these are swapped, which uses the temporary extra space. should occur before swapping, otherwise the right pointer may be swapping a less-than-partition element previously scanned by the left pointer. element just before the last element. This happens when all the elements are less than the partition.
 * you can use the "driver", or the random number test data from Q1. on mergesort. This is "re-use", which is encouraged in general.
 * the concept of partition exchange is that a partition element is (randomly) selected, and every thing that needs sorted is put into 3 equivalence
 * this can be done without allocating more space than one temporary element space for swapping two elements. e.g a temporary integer for integer data.
 * However, where the partition element should be using the original array space is not known.
 * This is usually implemented with putting the partition on the end of the array to be sorted, and then putting two pointers, one at the start of the array,
 * the left scan stops when an element equal to or greater than the partition is found, and the right scan stops for a smaller element than the partition value,
 * the left scan will always stop if it reaches the partition element, which is the last element; this means the entire array is less than partition value.
 * the right scan could reach the first element, if the entire array is greater than the partition, and this needs to be tested for, else the scan doesn't stop.
 * the outer loop exits when then left and right pointers cross. Testing for pointer crossing and outer loop exit
 * finally, the partition element needs to be put between the left and right partitions, once the pointers cross.
 * At pointer crossing, the left pointer may be stopped at the partition element's last position in the array, and the right pointer not progressed past the

- if the right pointer is chosen to swap with the partition, then an incorrect state results where the last element of the left array becomes less than the partition element value.

- if the left pointer is chosen to swap with the partition, then the left array will be less than the partition, and partition will have swapped with an element with value greater than the partition or the partition itself.

 * The corner case of quicksorting a 2 element out-of-order array has to be examined.

- The left pointer stops on the first out of order element. The right pointer begins on the first out-of-order element, but the outer loop exits because this is the leftmost element. The partition element is then swapped with the left pointer's first element, and the two elements are now in order.

- In the case of a 2 element in order array, the leftmost pointer skips the first element which is less than the partition, and stops on the partition. The right pointer begins on the first element and exits because it is the first position. The pointers have crossed so the outer loop exits. The partition swaps with itself, so the in-ordering is preserved.

the plus one the intended initial scan positions, and use the pre-increment and pre-decrement operators e.g. ( ++i, --i).
 * After doing a swap, the left pointer should be incremented and right pointer decremented, so the same positions aren't scanned again, because an endless loop can result ( possibly when the left pointer exits when the element is equal to or greater than the partition, and the right element is equal to the partition value).  One implementation, Sedgewick,  starts the pointers with the left pointer minus one and right pointer

Exercices en langage C Programmeerimiskeel C/Harjutused C/Ćwiczenia dla początkujących

title: C Programming/Beginning exercises


text:
User:DrBob~enwikibooks

You can find me on Wikipedia here.

I'll be trying to work on science and physics topics in general and optics in particular. I enjoy doing diagrams (you can see some of my stuff on Wikipedia), so if you have any requests, leave them here.

title: User:DrBob~enwikibooks


text:
User talk:Grendelkhan

Hi Grendelkhan :) Welcome to Wikibooks!

Thanks for fixing up those bugs in Discrete mathematics/Set theory :) Dysprosia 23:12, 12 Dec 2003 (UTC)

title: User talk:Grendelkhan


text:
Chinese (Mandarin)

''This book teaches Standard Mandarin Chinese. For other uses, see Subject:Chinese language.'' Welcome to the Mandarin Wikibook, a free Chinese textbook on the Standard Mandarin dialect. This page links to lessons using Simplified Han characters (used in mainland China, Singapore and Malaysia). There is also a Traditional Han Character Version available (used in Taiwan, Macau, and Hong Kong).

You can search within this book from the following box:

Related Books

 * Pinyin
 * Cookbook:Cuisine of China
 * Written Chinese
 * Guide to Writing East Asian Languages - 汉字书写
 * Chinese Phrasebook (on WikiVoyage)
 * Cantonese (Yue) - 广东话（粤语）
 * Southern Min / Min Nan (Taiwanese) - 闽南话（台湾话）
 * Pinyin-English News Summary for learners of Chinese language

Contributors

 * Contributor's Guide Update Needed - 需要更新
 * Textbook Planning - 课文安排 Update Needed - 需要更新
 * Development History Update Needed - 需要更新
 * Contributors - 撰文者

Chinesisch Chino Mandarín Enseignement du chinois 중국어 입문 Cinese Кинески јазик Algemeen Beschaafd Chinees 中国語 Chiński Kiinan kieli Mandarin Китайська мова 汉语

title: Chinese (Mandarin)


text:
Chinese (Mandarin)/About Chinese

=About Chinese=

The Chinese language (汉语/漢語, 华语/華語 or 中文; Pinyin: Hanyu, Huayu, Zhongwen) is a member of the Sino-Tibetan family of languages. About one-fifth of the world speaks some form of Chinese as its native language, making it the most common natively-spoken language in the world.

There is great internal variety within Chinese, and spoken Chinese languages such as Standard Mandarin (Putonghua), Shanghainese (Wu), and Cantonese, which are not mutually intelligible. Nevertheless, there is a single standardized form of Chinese known as Standard Mandarin, which is based on the dialect of Beijing, which is in turn its own Mandarin dialect, among a large and diverse group of Chinese dialects spoken in Northern and Southwestern China. Standard Mandarin is the official language of Mainland China and Taiwan, one of four official languages of Singapore, and one of six official languages of the United Nations. Standard Mandarin also corresponds to the modern standard written Chinese language used by people speaking all forms of Chinese from all corners of China, including Mandarin, Wu, Cantonese, Hakka, Min-nan, and so forth. This textbook will teach Standard Mandarin, both spoken and written.

Chinese grammar is in many ways simpler than European languages (for example, you will see no tenses, plurals, or subject-verb agreement), but there are also plenty of pitfalls that will trip up the unsuspecting beginner (for example, you will encounter tones, measure words, and discourse particles, which do not feature as strongly in European languages). In addition, the complexity of the writing system often daunts newcomers, as Chinese is one of the few languages in the world that does not use an alphabet or a syllabary; instead, thousands of characters are used, each representing a word or a part of a word. However, most complex Chinese characters are composed of only a few hundred simpler characters and many contain phonetic hints. There is a common Western misconception of Chinese writing as having thousands of distinct and idiomatic symbols each representing a single word. However, Chinese writing is surprisingly mnemonic, granted it is not as simple as the writing of Romance languages. The government of China has developed a system of writing Standard Mandarin pronunciation in the Roman alphabet, known as Hanyu Pinyin, or simply, pinyin (汉语拼音/漢語拼音, "spelling according to sounds"). Hanyu Pinyin is used to write out Chinese words phonetically in an effort to help learners of Chinese with their pronunciation. This wikibook will teach you Hanyu Pinyin first, before any actual sentences. All examples and new vocabulary will always be given together with Hanyu Pinyin.

There are two character sets: Simplified Chinese characters (简体字/簡體字, Pinyin: Jiǎntǐzì) and Traditional Chinese characters (繁体字/繁體字, Pinyin: Fántǐzì). Traditional characters trace their lineage through thousands of years of Chinese history, and continue to be used in Hong Kong, Macau, Republic of China, and among many overseas Chinese. Simplified Chinese characters were the result of reforms carried out in Mainland China to increase literacy rates and is now used in Singapore as well. Many people may think that Simplified Chinese was made by the PRC government, but in fact many characters in Simplified Chinese were assembled from the calligraphy in ancient China. There is no denying however that some characters were made up recently. Two systems share many of the same characters or with systematic, predictable reductions in stroke; however, some changes are not as formulaic. As a result, most native Chinese speakers are able to write in only one of the two systems, though they can usually read both. You are recommended to do the same. It is considered easier for people who learn Traditional to read both sets than people who learn Simplified only, but Simplified characters are less intimidating for beginners. In this wikibook, all examples and vocabulary are given in both systems, and you are encouraged to choose one system and stick with it throughout.

Chinese characters have also been used in the past by other neighbouring Asian countries, and are still being used by some of them today. Some older Koreans still know how to read and write Chinese characters, but although the members of younger generations are taught Chinese characters or hanja, they are rarely used and unnecessary for literacy in Korean, with the native alphabet, hangul. Chinese characters are occasionally used for abbreviations, to clarify technical vocabulary (as Chinese serves roughly the same role in Korean that Latin serves in English), and to write family and many personal names. The Japanese still preserve many Chinese characters or kanji today and use them along with two syllabaries to write the Japanese language.

Cinese/Introduzione Chiński/O języku chińskim Mandarin/İçindekiler/Mandarin hakkında

title: Chinese (Mandarin)/About Chinese


text:
Chinese (Mandarin)/Web Resources

Sites in English (beginners)

 * Dictionaries / Translators
 * CC-CEDICT - CC-BY-SA dictionary. Extensive, compiled by volunteers. Available under GNU licence.
 * Chinese Tutor Dictionary - A Chinese dictionary searchable by Pinyin, Hanzi, or English. It is fast and easy to use.
 * Google Translate - Surprise, surprise! Has dictionary, pinyin, and example sentences.May not work well when translating long sentences to Chinese.
 * Multilingual Chinese Dictionary - A no-frills Chinese dictionary with 9 languages
 * nciku - Chinese-English dictionary with handwriting recognition, lots of examples, a text-to-speech system, and other learning materials.
 * Rikai.com - A web-mediator that adds mouseover pinyin readings and English meanings to Chinese webpages.
 * WrittenChinese.Com Free Chinese-English dictionary. Search results are ranked by frequency of occurrence in everyday Chinese text.
 * Zhongwen.com - A Chinese character dictionary and cultural reference. Characters are represented by images, meaning they are still viewable without Chinese fonts. Detailed character trees.
 * Lessons
 * Mandarin Play - Learn Mandarin Chinese with simple and fun mini-games. The games combine English, Pinyin, Hanzi and audio to help you learn beginner and intermediate Mandarin Chinese in an interactive way.
 * ChinesePod - Free Chinese podcasts for beginners on various topics.
 * Learn chinese online - 40 lessons courses for beginners.
 * Learn to Speak Chinese Online - Learn Mandarin Chinese online for free.
 * Mandarin 123 - Site focused on Chinese Mandarin vocabulary, pronunciation, grammar, reading and writing.
 * HowToSpeakOnline.com - Free grammar, vocabulary and conversation lessons for beginners.
 * Melnyks Chinese - Theme-based Chinese Podcasts.
 * ZapChinese - Mandarin Chinese audio vocabulary. A large list of useful words in Chinese and an audio file showing how to pronounce them.
 * Pinyin reading matters
 * Pinyin-English News Summary for learners of Chinese language
 * The Problems of Hanzi Application in IT
 * Other
 * Wikibook's Very Own HSK Guide!
 * The Chairman's Bao - The first online simplified Chinese newspaper, written to HSK levels 3-6+.
 * Chinese Tutor Flashcards - Online flashcards that focus on words the learner is having difficulty with.
 * The Chinese Outpost - Site focused on Chinese language learning and culture, centered around an "Introduction to Mandarin Chinese" with readable and entertaining units on pronunciation, characters and grammar.
 * LearnchineseOK.com - Web's biggest directory of free online resources for learning Mandarin Chinese language
 * Mnemosyne - Free, reliable flashcard program. Has special "vocabulary" cards.
 * Chinese with Mike - Blogger focused on the Chinese language.
 * On-line Chinese Tools - Site with many helpful links for learners, including online dictionaries, character converters and free flashcard programs for learning characters.
 * Skype.com - Skype is a freely downloadable program that allows free, VoIP calling. You can find native Chinese speakers looking for language partners via skype at the Mixxer
 * University of Melbourne Chinese Studies Virtual Library - Large collection of Chinese-related links, organized by topic.

Sites in Chinese (advanced)

 * General
 * Project Gutenberg's Chinese Books
 * Wikipedia in Chinese
 * Yahoo!奇摩字典 - Chinese-English dictionary from Yahoo! for English learners in Taiwan.
 * Search engines
 * Baidu - Simplified Chinese, The most widely used search engine in mainland China
 * Google
 * Google Hong Kong - Both Simplified and Traditional Chinese
 * Google Taiwan - Traditional Chinese
 * Or you can just change your Google Language settings.
 * Yahoo!
 * Yahoo! China - Simplified Chinese
 * Yahoo! Hong Kong - Traditional Chinese
 * Yahoo! Taiwan - Traditional Chinese
 * Other major websites
 * Xinhua - A major official Chinese news agency
 * Sina - Web portal
 * Sohu - Web portal
 * Tencent - Web portal
 * NetEase - Web portal

WikiMedia Sites

 * Wikibooks
 * Wikipedia
 * Wiktionary

See more at Wikipedia.

title: Chinese (Mandarin)/Web Resources


text: Template:Incomplete

title: Template:Incomplete


text:
Talk:High School Mathematics Extensions/Mathematical Proofs

Could anybody prove that $$n-m = -1*(m-n)$$? r3m0t 14:44, 13 Dec 2003 (UTC)

comment 1
Uhhh... Take the right hand side and expand
 * -m - (-1)n

which is equivalent to
 * -m+(-1)(-1)n

which is
 * -m+1n
 * n-m

which is the desired result.

Dysprosia 00:03, 14 Dec 2003 (UTC)

 * *grin* Cool. Now I really know it's true! ;) r3m0t 00:32, 14 Dec 2003 (UTC)

I found a good example for the visual proofs section - prove that the series $$1^2+2^2+...+n^2$$ multiplies by 4 and adds 1 when n is increased by one. No idea? Think about how many squares there are on a 16×16 grid. 212.135.1.53 08:29, 5 Jan 2004 (UTC) (r3m0t)

 * Okay, good work. Let me think why it is so... Xiaodai 09:49, 5 Jan 2004 (UTC)
 * Whoops. Never even tried it out on paper, I was so convinced. No, that isn't even true *grins*. Ah well, in which case, a good recursion exercise is finding out how many squares (of any size) there are on a 16×16 grid. The answer happens to be 1,496 (or aleph-one, depending on how you interpret the question...) I will however try and investigate how to fix that times 4 and plus 1 rule, but chances are the outcome will be pretty complicated. r3m0t 19:11, 5 Jan 2004 (UTC)

Is the following line correct, it would seem more logical to prove v=w instead of v = u: 2. Prove using only the axioms if u + v = u + w then v = u (subtracting u from both sides is not accepted as a solution) I can't find the solution to this problem, so it would be great if you could give me a hint Problemset nr 1 seems to be wrong as well, the greater than sign should be turned around, otherwise simply trying n=2 will show you that it's not trueMmartin 19 july 2004
 * Thanks I corrected the error. As an hint to this type of problems, we always use 0 e.g. a = a + 0. If you are still scratching your head, the solutions is as follows:

\begin{matrix} v &=& v + 0\\ &=& v + (u - u)\\ &=& (v + u) - u\\ &=& (w + u) - u\\ &=& w + (u - u)\\ &=& w + 0 \\ &=& w \end{matrix} $$
 * as required. Thank you very much for you question. I love getting questions, it assures me that somebody out there is reading my work. Xiaodai 08:42, 20 Jul 2004 (UTC)

Hum??
I've trouble on doing question 3 of the first exercise. Can you give me some hints? (Also it seems the question itself has some minor typing mistakes) -lemontea

 * Thanks for pointing it out lemontea, fixed. Xiaodai 04:11, 18 Dec 2004 (UTC)

 * Now I'm completely stucked. I tried doing binomial expansion of that (i-1)^k and cancel out the highest power i^k, leaving only smaller power behind so I can employ induction, but this method failed. How did you do it? (Though I have an idea on making use of the generating function, but them this can expand to a project which the size is comparable to the project in the first chapter) Lemontea 18:11, 26 Dec 2004 (GMT+8)

 * I hope you dont mind, i will write out the complete solution here. You may have been confused by the questions. Anyway..

 * It's clear that 11 + 21 + ... = (n+1)n/2. So we can start the induction from there.
 * Suppose that
 * $$\sum_{i=1}^ni^j$$
 * has an explicit formula in terms of n for all j < k (**), we aim to prove that
 * $$\sum_{i=1}^ni^k$$
 * also has an explicit formula.

 * Indeed, consider
 * $$\sum_{i=1}^n[i^{k+1} - (i-1)^{k+1}] = n^{k+1}$$
 * I think you may have consider ^k instead of ^(k+1). Also, looking at it from another way
 * $$\sum_{i=1}^n[i^{k+1} - (i-1)^k] = \sum_{i=1}^n[i^{k+1} - i^{k+1} + i^k - i^{k-1} + ... \ 1]$$
 * as you have mentioned the ik+1 cancels, leaving smaller powers, rearraging to get
 * $$\sum_{i=1}^ni^k$$
 * on the left hand side and using the induction hypothesis (**) then we are done. Hope this has been helpful. Xiaodai 00:13, 28 Dec 2004 (UTC)

Thanks! That helped. (Oh no, I found I was just a few steps away from the end of the solution, a ghost must have covered my eyes, ahhhhhhhhh...) However, it seems the ending part could be written more clearly, and the above did contain some minor error... $$\sum_{i=1}^n[i^{k+1} - (i-1)^{k(??)}]$$ $$ = \sum_{i=1}^n[i^{k+1} - i^{k+1} + i^k - i^{k-1} + ... \ 1]$$(Shouldn't there be some binomial coefficient when expanding out?)

I thought the principle would be like the below: $$\sum_{i=1}^n[i^{k+1} - (i-1)^{k+1}] = n^{k+1}$$ $$\sum_{i=1}^n[i^{k+1} - \sum_{j=0}^{k+1} {k+1 \choose j} i^j] = n^{k+1}$$ $$\sum_{i=1}^n[i^{k+1} - {k+1 \choose k+1} i^{k+1} - \sum_{j=0}^k {k+1 \choose j} i^j] = n^{k+1}$$ $$\sum_{i=1}^n[\sum_{j=0}^k {k+1 \choose j} i^j] = n^{k+1}$$ $$\sum_{j=0}^k[\sum_{i=1}^n {k+1 \choose j} i^j] = n^{k+1}$$(Huh, I think I'll have to write another sub-chapter on the nested/2-dimensional sum notation operation...) $$\sum_{j=0}^k[{k+1 \choose j} \sum_{i=1}^n i^j] = n^{k+1}$$ I think things should be clear now :)

However, after doing this question I feel the urge to feedback my strong opinion on this solution. The exsistence of a formula is usually to help people do calculation faster and easier, but like above, the result is that the formula relies on combining all of the pervious formula in that series, although the formula is still a finite calculation, but when k increases to somewhere like 10, the so called "formula" will become so complex that it lost its elegence, and that it doesn't serve the function of reliefing difficulties in calculations anymore. Lemontea 10:37, 28 Dec 2004 (GMT+8)
 * You are right about the coefficient, i just forgot. Good wook. You comment about the solution is correct, may i remind you that the point of the question is to test induction skills, although you are absolutely right about the deficiency of the question. Thanks. Xiaodai 03:01, 28 Dec 2004 (UTC)

I know that for mathematicians, it is considered an art to say just enough....to find a balance between not giving every single step, but yet making the point clear to a fellow mathematician. However, non-mathematicians don't necessarily think this way. I know we want the reader to think and ask, but we don't also want them to think they're stupid and give up. It seems that one of the beauties of this sort of media is that perhaps we can provide the extra explanation, yet bury it with hyperlinks, etc. The above discussion is one such example.Lizmaemom (discuss • contribs) 23:56, 3 July 2011 (UTC)

M5?
M5:for every a there exist b such that ab=1

What about 0? Does a inverse of 0 exist? --Lemontea 13:42, 1 Mar 2005 (UTC)

 * See, that's what I mean about messy (I don't mean the omission, that's an easy mistake to make, but the way the thing was structured). There's a better way of saying this (which I'll just say now, so you'll see what I mean). Dysprosia 22:25, 1 Mar 2005 (UTC)

Incorrect Proof
A lot can be learned by being asked to find the mistaken logic in an incorrect proof, of which many can be found online. One is as follows for Goldbach's conjecture:
 * step 1: Any even number >=6 can be described by 6Q +b, b={-2,0,+2}

(thus any even number is either 2 behind, 2 ahead, or coincident with, a multiple of 6) Thus, we can write E = 6Q +b
 * step 2: a recognized required (but not sufficient) condition for any prime>=5 is that they are of the form 6N +/1 (it is 1 ahead or behind a multiple of 6)

 * step 3: rewrite step 1 as  (any) even = 6L+/-1 + 6M +/-1

We can substitute step 2 into step 3 and get:
 * step 4: (any >3) even  = prime1 + prime2

the above essentially "proves" GC - where is the mistake in the proof?--Billymac00 (talk) 02:41, 10 March 2008 (UTC)

Feedback
This section is fascinating. I hope you can improve it. Some examples are tough to understand and I hope you can explain them better. --200.120.252.46 (talk) 01:08, 5 May 2010 (UTC)

Shouldn't math mode be used for writing mathematical statements? --ranade

Additive Inverse ?
Here is axiom three in the Axioms and inference section : A3: For every a, there exist b (written -a), such that a + b = 0 (existence of an additive inverse) Not that I am mathematician or anything but I think inverse is not the right word, -a is the opposit of a, right?

Would you have a place for this approach? A scientific approach to mathematics - Observation of patterns then proving them

Mathematics is a hobby of mine and on more than one occasion, I've reinvented the wheel. This paper is one such example. Therefore, even though it is original work for me, Bernoulli was the first to use this approach. At least that is what a Washington University professor told me. This also means that it can be published on Wiki without violating the policy against original work. It also means that I am free to offer it as public domain. I have solved problems that only the greats in mathematics are given credit, but I lack a formal education in mathematics, so I would never be able to convince any journal to publish my work. Yet, I've been able to impress others with my knowledge and ability to invent new approaches to solve problems. Being in a position without the credentials, I always provide irrefutable evidence that my approaches are correct. Most Ph.D professors can't say the same. I don't need credit for any of my work in math nor do I need any money. I'm making a comfortable living using my mind in the sciences. But, I would be greatly rewarded if I could share some of my understanding with young people. I'd like to get other people to think outside the box. The traditional lessons are important, but I would also like to see young people learn the value of creativity. Mathematics is also tainted with an image of logic and theory instead of as a true science. The paper that I'm offering here is a good example of how a problem can be solved by starting with observation.


text:
User:Thunderbunny~enwikibooks

I am a software engineer from Pennsylvania.

I currently am working on the C book on Wikibooks.

title: User:Thunderbunny~enwikibooks


text:
User:Pingveno

AIM at Pingveno42

User Page from Wikipedia

title: User:Pingveno


text: Talk:C++ Programming/Examples/Hello world


text:
User talk:Menchi

Oh, I can't tell the differences between hanyu pinyin and tongyong pinyin, I just thought that name quite "Chinese". :) So, could you please improve that book, Chinese? -- yacht | talk 08:51, 14 Dec 2003 (UTC)

 * Did some bits impromptu. See Tongyong Pinyin for a list of differences between the two Pinyins. --Menchi 10:04, 14 Dec 2003 (UTC)

title: User talk:Menchi


text:
Chinese (Mandarin)/How To Study Chinese

Speaking and Pronunciation

 * Learn pinyin. Not only is it used throughout this book to explain proper pronunciation, it is needed to look up words in dictionaries and to type in Chinese.
 * Pay attention to the tones. Since there are so few syllables in Chinese, there are many homonyms, making attention to tones very important. Learning to write the pinyin with correct tones at the same time as you learn the characters will improve your pronunciation and your listening comprehension.
 * Read the text aloud. Speaking (and hearing yourself speak) will help reinforce the text in your memory. Exaggerating the tones can help you remember them. In Chinese, character (something that when writing takes a space unit), word (which may include some characters or a single character), and sentence may be different from English. When speaking Chinese, the pronunciation of each character should be a single unit.
 * Find a language partner. There may be a Chinese language club in a nearby city or university. There are also free websites on the Internet that can help you set up a language exchange using Skype or other VoIP programs. Two examples are The Mixxer and E-Tandem.
 * Use a Text To Speech (TTS) service. In other words, have a computer read the text for you. Free examples include Google Translate and imtranslator.net. Google Translate can not only read the text (the volume icon, not available for large texts) but also give you the pinyin (the A with the umlaut), and, of course, translate.
 * Consume Chinese media. Immersing yourself in Chinese after learning the basics will make learning easier. To learn pronunciation, make the voices of native speakers your constant companions, and after finishing this book, continue to immerse yourself—you will have learned enough to take on Chinese "in the wild". A wide variety of multimedia options exist for exposing your ears to native Chinese speakers. Two of the best sites for easy listening materials are Popup Chinese and ChineseClass101.com. Advanced learners can listen to broadcasts of Xinhua, China's official news network, or visit Youku, a Chinese incarnation of YouTube (YouTube is blocked in China, and Facebook as well, for that matter). Download as much audio as you can from these sites to your MP3 player and start listening. You can listen to Chinese whenever you're in the car, commuting, or doing mechanical tasks. Note that, since Internet Explorer 6 is still a popular browser in China, Chinese websites may seem a bit quirky, and video streaming services may not work at all on modern browsers.

Reading and Writing

 * Practice writing—a lot. When you study, write a character at least ten times, and more if you have trouble remembering it. You can find special grid paper for writing practice with Chinese characters on the Internet; for example, PDF sheets are available on UVM's web site, and a practice sheet generator is available at www.chinesetools.eu (or original site, French). The output is set up as a grid, so that a typical printer can print 11 characters with 8 boxes each per page in portrait mode, giving each character one row, or 5 characters with 17 boxes each, and so on. In landscape mode, a printer can print 8 characters with 11 boxes each per page, or 4 characters with 23 boxes each giving each character two lines. Remember to quiz yourself periodically to test your memory and to find which characters you need to practice more. As you write, think of the sound and meaning of the character, or say it out loud. Check out the East Asian Calligraphy wikibook for more help with Chinese writing. Learn the correct stroke order initially and write carefully, looking at the printed character each time before copying. Actually writing is important to establish a 'motor memory' of each character, which will allow your writing to flow more easily.

 * Use a flashcard program. Many people who use flash cards memorize information, but there's often much time wasted reviewing what they already know well, or in relearning what they forgot. The free programs Anki and Mnemosyne, can optimize your review schedule using their algorithms. They can also use audio for pronunciation help and 3-sided cards to study reading, writing, and translation separately. You can download free cardsets, export your own, or write them yourself to fully customize your character selection.

 * Look for radicals. Radicals are components of Chinese characters that you will see repeated over and over again. Learning the meaning of radicals will help you to see the connections between similar categories of words. Many characters are comprised of radical-phonetic pairings, where the radical is the "root" that hints at the meaning of the word, while another part of the character hints at the sound of the word. Learning to spot radicals is also useful since they can be used when looking up words when you don't know the pinyin in Chinese dictionaries.

 * Buy a dictionary. They're useful for looking up new words or just browsing. Beginner's dictionaries have larger fonts, usage examples, and Pinyin pronunciation, all of which are sometimes missing in comprehensive dictionaries. CC-CEDICT is a thorough Chinese-English dictionary available under Creative Commons. KTdict C-E is a free iOS app that uses CEDICT. A good physical dictionary that provides many example sentences and phrases is The Starter Oxford Chinese Dictionary (Simplified characters only). A good online dictionary would be nciku. It is searchable by pinyin, characters, and sketches, via a drawing panel. It not only contains definitions, also shows the stroke order of a character, and gives examples of its use.

Suggested Reading Materials

 * Children's story books (the characters are easier, many include pinyin or zhuyin for difficult characters)
 * Xinhua is the official Chinese news network, but again, it is mostly for advanced learners.
 * LWO Flashcard program
 * Pinyin/Pinyin-English News Summary

Chino/Cómo estudiar chino Cinese/Come studiare il cinese Chiński/Jak uczyć się chińskiego

title: Chinese (Mandarin)/How To Study Chinese


text:
Talk:German/Lesson 1

Untitled
The sentece "Heinrich und Karl sind Freunde als sie sich auf der Straße begegnen" sounds strange for German ears. --- I have changed that and hope, it won't be in a too strong conflict with the sound sample.

For me, it sounds strange, too, using the word "Geschäftsmänner" when talking about a woman and a man. I'd propose to say "Geschäftsleute", but I didn't want to change the complete excercise. -- 12-14-2003 Hans.
 * Please, make changes (and comments as above are very helpful). If the changes cause problems with the lesson itself, do not worry, I'll come along and do the fixes as necessary to match your suggestions/word changes - Marsh 02:26, 15 Dec 2003 (UTC)

"Wie geht es dir?" is unusual to start a conversation in Germany. -- Hansm 12:56, 6 Jan 2004 (UTC)

 * Sorry, I've to correct something there. "Wie geht es dir?" is not unusual to start a conversation. So I think it depends on which part of Germany you're talking about. -- Shekko 14:28, 6 Jan 2004

 * OK, but if you ask that, you expect to get a real answer and not simply a "Sehr gut". That makes it different to the use of that phrase in many other languages and is a trap for foreigners. Or, where do you think it is a usual small-talk phrase? -- Hansm 14:03, 6 Jan 2004 (UTC)

 * It is very consistent (both question and answer) with English - Marsh 18:28, 6 Jan 2004 (UTC)

Any chance we could get some better sound samples?

 * Others are working on it, but it is a technically difficult challenge - marsh 04:31, 4 November 2005 (UTC)

title: Talk:German/Lesson 1


text:
Talk:German/Lesson 5B

Untitled
Pretty difficult for (Advanced) Lection #2!

 * May be, but by advanced means college level and already familiar with some German. It might help for spmeone to just rewrite and simplify the German, if possibe. - Marsh 03:00, 15 Dec 2003 (UTC)

 * Now at Lesson 4B (B is advanced beyond A for highly motivated students) - Marsh 17:45, 10 Feb 2004 (UTC)

 * And now moved to 5B, following the conversation in 5A that is related to this story - Marsh 03:16, 27 Feb 2004 (UTC)

title: Talk:German/Lesson 5B


text:
Objective-C Programming/syntax

Objective-C is an object-oriented programming language, and is a layer over the C programming language. This means that if you know how to write C, there are only a few syntax changes to learn.

In this section, we will look at how we can implement classes and instantiate objects in Objective-C. If you are unfamiliar with object-oriented programming, see Objective-C concepts.

Basic syntax
If you have studied C, you can skip this section and proceed to the next section, A word on runtimes. If not, or if you're a little rusty, read on.

In C, code is contained within a function. Functions are composed of several statements, each of which are terminated by a semicolon. For example, a simple function in C to add two numbers may look like this:

This sample has the following lines:
 * 1) The function definition (which returns an int (integer), is named add, and takes two parameters, both of which are integers). // Integers are whole numbers like 6, 66 or 567 and not numbers with decimal places like 5.6.
 * 2) The opening function brace
 * 3) A variable declaration
 * 4) An assignment statement
 * 5) A return statement, which returns the value of c to the calling function/
 * 6) The closing function brace

For control flow, C and Objective-C use: The for, while, and do statements will continue execution of a loop until the condition is false. The switch and if statements jump to different statements depending on the condition.
 * 1) for (<initial>;<condition>;<increment>)
 * 2) while (<condition>)
 * 3) do ... while (<condition>)
 * 4) switch (<condition>)
 * 5) if  then { } [else ]

Objective-C does not implement or import any functions by default. Instead, they need to be imported by using the  preprocessor directive. (#include works too, but generally it is not used in Objective-C - #import works better because it won't import the same thing twice like #include can try to do)

A word on runtimes
Objective-C requires what is known as a runtime system to provide you with Objective-C features. The runtime takes care of the creation, management, and destruction of objects.

If you have the gcc compiler, you should have the Objective-C runtime already installed. Otherwise, you may have to install the runtime separately. Note that gcc is a compiler collection; the full install contains not only the C compiler, but also C++, Java, Objective-C and even Fortran-95 and Ada 2005 compilers. However, it is possible to install gcc only partially, for example only the C compiler. Therefore, the Objective-C runtime may or may not be installed with gcc. Check your distribution.

Two main systems are used to run Objective-C programs:
 * the GNU runtime, which is provided as a part of gcc on Unix and Unix-like operating systems;
 * the NeXT runtime, which is provided on NeXTSTEP, OPENSTEP, and Mac OS X operating systems.

This text assumes you are using the GNU runtime, but the two runtime systems are almost identical.

This text does not cover the OPENSTEP, Cocoa, or GNUstep frameworks, but the skills learned here will be helpful when developing with those systems.

Writing classes in Objective-C
Writing an Objective-C class requires a few design decisions before we start writing any code. Say we are writing a class to represent a point called Point in a two-dimensional plane.

We need to ask ourselves two questions:
 * 1) What data do we need to store and use? This relates to the instance variables we need to declare.
 * 2) What operations do we need to perform? This relates to the methods we need to define.

For this example, we'll use double variables for the x and y coordinates. We'll define a method to get both coordinates, and we'll define a method to get their distance from the origin.

The interface
Let's examine what each element of this interface means.

The @interface line says that we begin the declaration of the Point interface. We inherit from another class called Object. Objective-C provides you with a generic class, called Object. The Object class is a root class -- it does not inherit from another class. The <tt>Object</tt> class provides a set of methods that provide key functionality for an object to be used and recognized by the Objective-C runtime. As in C, we need to include <tt>Object</tt>'s header file, <tt>Object.h</tt>, before we can use the set of methods declared in the header.

If you don't explicitly inherit from some class, your class becomes a root class. (In Objective-C, there can be many root classes.) That's probably not what you want to do, because creating a root class is a very tricky and advanced topic that is only useful in very specific situations. In most cases, you will want to inherit from <tt>Object</tt> or some class that inherits from <tt>Object</tt>, etc. If you develop in NeXTStep / GNUstep / Cocoa, you will mostly be using another root class called <tt>NSObject</tt>, which provides different basic methods than <tt>Object</tt>.

The word <tt>import</tt> means that we only include the file once. This solves problems like recursive includes.

Anything between the braces in an interface declaration specifies the instance variables that the class has.

The <tt>@private</tt> line is a visibility modifier: it says that the instance variables after it are private, i.e. they are accessible only from the class that declares them. It is good practice to mark all your instance variables private: they contain the state of an object and they should never be changed except by the object itself.

The declarations for the methods come after the instance variables. This is a declaration for the method to set the x value. It's common Objective-C style to name the setter method with the same name as the variable it's setting.

The hyphen specifies an instance method (we'll look at these later). Then comes the name for the method (this method is called <tt>x:</tt> - note the colon), and the colon signifies an argument, called <tt>x_value</tt>, and is of type <tt>double</tt>.

The cast on the <tt>x_value</tt> argument is necessary, because unlike C, the default type is <tt>id</tt>, and not <tt>int</tt>. The type <tt>id</tt> is very special—it is a type that can hold any object whatsoever. The first cast is not strictly necessary, but should be used for clarity. The first cast tells us that the method <tt>x</tt> returns an object back.

This is another method named <tt>x</tt> (no colon), but it returns a <tt>double</tt>. This is the specification for the method that gets the value of the x variable. There is no conflict with the previous method because the types are different, and the previous method takes one argument whilst this takes none.

After all the methods and instance variables are specified, this symbol marks the end of the declaration.

The interface specification goes in a <tt>.h</tt> file—a header file. It's customary to call the file after the class, so we would create a file called <tt>Point.h</tt>.

The implementation
This is the implementation for the <tt>Point</tt> class. We implement the methods in the interface defined above. Let's have a look at each element of the implementation in turn.

Again, we import <tt>Point</tt>'s interface, just as we do in C.

This is a marker that identifies the beginning of the implementation.

This is a typical method implementation. We can use the <tt>x</tt> variable directly without having to declare it since it is already declared in the interface, and is accessible only to the methods of this class. The behaviour, in general, is like an ordinary C function. Here we assign the value of the argument <tt>x_value</tt> to the instance variable <tt>x</tt>.

The function then, returns the entire, current object as modified. The keyword <tt>self</tt> represents the current object.

Here is the simple method to get the value of the <tt>x</tt> variable. We simply return it.

The behaviour for the other methods should be similar to those above. The <tt>@end</tt> keyword ends the implementation.

The implementation specification goes in a <tt>.m</tt> file. It's customary to call the file after the class, so we would create a file called <tt>Point.m</tt>.

Using the objects
Since Objective-C comes from C, we write a <tt>main</tt> function to make use of the class that we just created. Here's one typical main function.

Let's examine what happens here.

We import the interface to <tt>Point</tt> so we can use it. We import <tt>stdio.h</tt> so we can use <tt>printf</tt>. This is a typical Objective-C method call: These are some typical instance method calls. We call <tt>point</tt>'s method <tt>x:</tt> and <tt>y:</tt>. In Objective-C terminology, we say that we send <tt>point</tt> a message to apply to the method <tt>x:</tt>.
 * <tt>Point *point</tt> declares, technically, a pointer to an instance of type <tt>Point</tt>. Actually, it may be best to think of this merely as a variable holding a <tt>Point</tt> object, but keep the pointer idea in mind.
 * <tt>[Point new]</tt> calls a method called <tt>new</tt>. The first half before the space represents the object we call the method on. The second half is the method name and arguments. The <tt>new</tt> method is called a class method, because it doesn't do something with respect to an instance of a class, it does something with respect to the class itself. The <tt>new</tt> method allocates memory and initializes the object, making it ready for use. There is no need to explicitly delete an object, as Objective-C keeps track of the number of references to a given object, and deallocates them as necessary.
 * NOTE: The <tt>new</tt> method is shorthand for <tt>alloc</tt> and <tt>init</tt> and may not always be available. If it is not, the object can be initialized and made ready for use in the following fashion: <tt>[[Point alloc] init]</tt>

These messages assign <tt>point</tt>'s <tt>x</tt> and <tt>y</tt> variables. Recall that the <tt>x:</tt> and <tt>y:</tt> methods had in them <tt>return self;</tt>. This means that we can chain the two messages together, as follows: [[point x:10.0] y:12.0];

The message <tt>[point x:10.0]</tt> returns an object, <tt>point</tt>, with its <tt>x</tt> variable set. Then on that object, the outer message assigns its <tt>y</tt> variable.

The <tt>printf</tt> statement has in it the method calls <tt>[point x]</tt>, which returns the value of the <tt>x</tt> variable for printing, <tt>[point y]</tt>, which does the same for the <tt>y</tt> variable for printing, and <tt>[point magnitude]</tt> which calculates the distance and returns that value.

title: Objective-C Programming/syntax


text:
User:Dersonlwd

http://zh.wikipedia.org/wiki/User:Dersonlwd

title: User:Dersonlwd


text:
File:Similar1.png

A diagram showing two similar triangles.

title: File:Similar1.png


text:
Cookbook:Apple Cobbler

| United States | Dessert

Apple Cobbler is a dessert made up of a baked apple filling and a simple biscuit-like topping. It is similar to apple crisp, which instead has a crunchy topping often made with oatmeal.

Filling

 * 6 cups sliced, peeled, and cored baking apples
 * ⅔ cup white granulated sugar
 * 6 Tbsp water (divided into 4 and 2)
 * 1 Tbsp cornstarch

Topping

 * 1 cup all-purpose flour
 * 2 Tbsp white granulated sugar
 * 1 ½ tsp baking powder
 * ¼ cup butter
 * 1 egg
 * ¼ cup milk

Filling

 * 1) Stir together apples, ⅔ cup sugar and 4 Tbsp water in a large saucepan. Simmer, covered for 5 minutes or until fruit is tender.
 * 2) Add 2 Tbsp water and 1 Tbsp cornstarch. Cook, stirring, until thick and bubbly.

Topping

 * 1) In a medium bowl stir together flour, 2 Tbsp sugar, and baking powder.
 * 2) Cut in butter until mixture resembles large crumbs. Set aside.
 * 3) In a small bowl stir together the egg and milk. Add to flour mixture, just to moisten.

Assembly

 * 1) Transfer filling to 2-quart square baking dish.
 * 2) Using a large spoon, drop topping into small mounds on top of the filling.
 * 3) Bake for 20–25 minutes in a 400 °F (205 °C) oven.

Notes, tips, and variations

 * Cobblers can be made with peaches, pears, nectarines, apricots, and various types of berries.

title: Cookbook:Apple Cobbler


text:
Cookbook:Barbecued Spare Ribs

| Barbecue | Meat

Barbecued Spare Ribs are a classic American barbecue meal made from pork. This version is cooked in the oven, not on a barbecue, and uses a barbecue sauce with Asian-associated flavors like soy sauce, rice vinegar, and garlic.

Ingredients

 * 2 pounds (910 g) pork spare ribs
 * ¼ cup (60 ml / 2 oz) soy sauce
 * 2 tablespoons honey
 * 2 tablespoons hoisin sauce
 * 2 tablespoons white vinegar
 * 1 tablespoon sake
 * 2 cloves garlic, minced
 * 1 teaspoon sugar
 * ¼ teaspoon of freshly ground white pepper
 * 2 tablespoons pork stock
 * Freshly-ground black pepper and salt to taste
 * 2 teaspoons cumin (optional)

Procedure

 * 1) Place spare ribs in a large baking dish in one layer. In a small bowl, combine the remaining ingredients. Pour over spare ribs and coat on both sides. Marinate overnight, basting occasionally.
 * 2) Preheat the oven to 375 F. Place a large, shallow roasting pan on the oven bottom. Fill with 0.5 in water. Place spare ribs on a roasting rack.
 * 3) Roast ribs for 45 minutes.
 * 4) Raise oven temperature to 450 F, and roast for 15 more minutes.
 * 5) Serve hot or cold.

Notes, tips, and variations

 * Alternatively, bake at 375 F for 20 mins then lower the temp to 325 F for 1 hour; this renders most of the fat and produces very tender meat.
 * To actually barbecue the ribs on a grill, get grill temperature to 225 F and cook for 5-6 hours.

title: Cookbook:Barbecued Spare Ribs


text:
Cookbook:Chocolate Chip Cookies

| Cuisine of the United States | Dessert Chocolate chip cookies are cookies with chocolate chips or pieces baked in. Originating in Massachusetts, they are one of the most traditional/popular types of cookies.

Warnings

 * Anyone with peanut or tree nut allergies should be careful when consuming cookies made with nuts or ingredients which may have been in contact with nuts.
 * Consuming raw cookie dough can pose risks due to the uncooked eggs and uncooked wheat flour.

Plain

 * Chocolate Chip Cookies I
 * Chocolate Chip Cookies II
 * Chocolate Chip Cookies III
 * Chocolate Chip Cookies IV
 * Chocolate Chip Balls

For special diets

 * Chocolate Chip Cookies (Gluten-Free)
 * Chocolate Chip Cookies (Vegan)

With oatmeal

 * Oatmeal Chocolate Chip Cookies
 * Celeste Oatmeal Chocolate Chip Cookies
 * Ginny's Toll House Cookies

Other

 * Chocolate Chip Pumpkin Cookies

Related

 * Cookies and Milk
 * No-Bake Chocolate Chip Cookie Pie

title: Cookbook:Chocolate Chip Cookies


text:
User:Gentgeen

John's a major contributer to the Cookbook, but don't be suprised to see him at the Chemistry or Biology shelves, either.

I've got an open feature request to include Cookbook namespace modules in the count of total modules in the project. If you'd like to support it, please go and vote for it.

He also messes around at Wikipedia as w:User:Gentgeen (where he's also an admin), and just started using Wikimedia Commons as commons:User:Gentgeen

 * My style sheet and JavaScript
 * My personal sandbox
 * Some images that I like

title: User:Gentgeen


text:
GCSE Science/Electricity multiple choice practice question 7

What is the maximum power that an appliance should have if it connect to a 230V supply by a 5A cable ?

 * 46W
 * 1.15kW
 * 115W
 * 4600W


text:
GCSE Science/Electricity multiple choice practice question 7 Answer 2

Well done this is the correct answer.

On to the next question>>


text:
GCSE Science/Electricity multiple choice practice question 7 Answer 1

Sorry this is an incorrect answer. Remember that to find the power you need to multiply the current and the voltage.

<<Go back and try again


text:
GCSE Science/Electricity multiple choice practice question 7 Answer 3

Sorry but this isn't the correct answer. Be careful about powers of ten when you when you do a calculation, especially when using a calculator.

<<Go back and try again


text:
GCSE Science/Electricity multiple choice practice question 7 Answer 4

Sorry but this is the wrong answer. Remember you need to multiply the voltage and the current together to get the power.

<<Go back and try again


text:
Talk:General Chemistry/Shells and Orbitals

rewrite plan
oh boy. this page has some interesting discussion. i've tried introducing the concept of quantum numbers corresponding to orbitals, orbital labels, and degeneracy in the previous section. this one is at this point mostly graphs that really need to be split up. could use an additional energy level graph, though; energy levels and orbital connection really needs to be explained. i think restructuring the categories would be best, honestly. i'll get to this one later. Clockworkcity (discuss • contribs) 17:40, 6 July 2017 (UTC)

energy discussion
''Longer wavelengths have less energy; the s orbital has the longest wavelength allowed for an electron orbiting a nucleus ''

I don't think this is actually true. The difference between the s,p,d,and,f, is the angular momentum not the wavelength., isn't it ?

 * Yes. The distinguishing feature is the angular momentum quantum number, l. Also, it's not always true that the s orbital has the lowest energy, since the energy is most strongly dependent on the energy level quantum number, n. So the 4s shell is higher in energy than the 2p, for instance. DrBob 21:07, 15 Dec 2003 (UTC)

It is true however that the s orbital has the lowest energy within any given shell. I've attempted to get rid of all the errors on the page. i would apprieciate someonel looking the page over to spot any errors I may have made. Theresa knott 09:56, 16 Dec 2003 (UTC)

utterly incomprehensible
The explaination of the wave on a guitar string is not comprehendable unless the reader has some kind of pre-requisite knowledge...I dont know what that pre-requisite knowledge is, I just know that I for one dont have it. I rather expect the example is one that only makes sense if one has knowledge from a more advanced field than general chemistry (physics perhaps)...in other words exactly the kind of knowledge one can assume 99.999999% of prospective readers of a text of this kind (people who dont yet know even about basic general chemistry) would have....

What?!
I give up even trying to comprehend this text, I suspect that the author/s are so familiar with advanced concepts that they have failed to realise that comprehending the text requires knowledge far more advanced than anyone who needs a introductory general chemistry text would possess...

huh?
I'm pretty good at chemistry, but this module makes almost no sense to me. It needs a major rewrite. Hoogli 16:05, 14 May 2007 (UTC)

QUESTION
DOES ORBITALS EXTENDED FROM S P D F???? I MEAN G H???

Possible Error
I believe a mistake is in the text of the "Electron Shells" section. In this statement "In a one-electron atom (e.g. H, He+, Li+, etc.) the energy ...", Li+ is not a single electron atom; but Li++ (or Li 2+) would be. 71.174.126.2 (discuss) 08:17, 4 November 2013 (UTC)


text:
GCSE Science/Electricity multiple choice practice question 8

The graph above shows how the potential difference across a conductor varied with the current flowing through it. Which of the following statements is true ?

 * The resistance of the conductor increases as the current increases
 * The resistance of the conductor decreases as the current increases
 * The resistance of the conductor stays constant as the current increases
 * It is not possible to say anything about the resistance of the conductor based on the information given


text:
GCSE Science/Electricity multiple choice practice question 8 answer 4

Sorry this is the wrong answer.It is quite possible to answe this question from the information given.

From Ohm's Law

 * R=V/I

But V/I is also the slope (or gradient) of the line on the graph. So with a constant slope, we must have a constant resistance.

Go back and try again>>


text:
User talk:Sabbut

Hi Sabbut. Thanks for all your edits on the Spanish Wikibook. We are always very glad to have native Spanish speakers among us. User:ThomasStrohmann

Sabbut, thank you for your edits on the Spanish book. I'll work on the book more if you want to work tag team, that is work collaboratively on it. The book has a lot of potential but needs work to meet it. What do you think? --Karl Wick 20:54, 14 Apr 2004 (UTC)

title: User talk:Sabbut


text:
Cookbook:Soup

Soup is a savoury liquid food that is made by combining ingredients, such as meat, vegetables and/or legumes in hot stock or water, until the flavor is extracted.

Traditionally, soups are classified into two broad groups: clear soups and thick soups. The established French classifications of clear soups are bouillon and consommé. Thick soups are classified depending upon the type of thickening agent used: purées are vegetable soups thickened with starch; bisques are made from puréed shellfish thickened with cream; cream soups are thickened with béchamel sauce; and veloutés are thickened with eggs, butter and cream. Other ingredients commonly used to thicken soups and broths include rice, flour, and grain.

History
The word soup originates from "sop", a dish originally consisting of a soup or thick stew which was soaked up with pieces of bread. The modern meaning of sop has been limited to just the bread intended to be dipped.

Boiling was not a common cooking technique until the invention of waterproof containers (which probably came in the form of pouches made of clay or animal skin) about 5,000 years ago (possibly longer), so soups presumably were little-known before that time.

With the invention of microwave ovens, it is possible to prepare soup without the long hours of traditional stove-top simmering. While microwave soups can be completed in minutes, slow cookers and crock pot soup recipes often require many hours to complete albeit with the convenience of virtually unattended cooking and low energy usage.

title: Cookbook:Soup


text:
Trigonometry

 * Do add new material and examples and make corrections. It all helps.
 * Decide whether new material is book 1,2 or 3. We want book 1 to be ready to use in K12 education.  Book 3, especially the for-enthusiasts parts can progress to post-graduate level - that's fine - as long as it's still recognisably trig.
 * Have a look at About This Book, and even modify that, so we have a planned structure and so that it's easier for people to know where to add new content.

All help is welcome.

Trigonometry Book 1
Book 1 is pre-calculus trigonometry. We assume the student is relatively new to algebra and can do algebra step by step.

Many of the pages have closely related free/YouTube videos at the Khan Academy. This is by design. Many students find the video presentation helpful with learning mathematical material.

As with all three trigonometry books, we have a "For Enthusiasts" section, which is for the student who finds the normal content and pace too slow and too easy, and yet still needs exercises and practice with Book 1 trigonometry.

 * Introduction

Lengths, Angles and Areas in Triangles

 * Similar,Congruent,Isosceles, and Equilateral
 * Angles of a triangle sum to 180 Degrees
 * Exercise: Congruent Triangles
 * Exercise: Chasing Angles
 * The Pythagorean Theorem
 * Proof: Pythagorean Theorem
 * Exercise: A Puzzle Triangle
 * Conventions
 * Proof: Angles sum to 180
 * Areas of Triangles
 * Heron's Formula

Trig Functions for Triangles

 * Plotting (Cos t, Sin t)
 * Cosine and Sine
 * Soh-Cah-Toa
 * Sine Squared plus Cosine Squared
 * Radians
 * The Unit Circle
 * /Law of Sines/
 * /Law of Cosines/
 * Solving Triangles Given ASA
 * Solving Triangles Given SAS
 * Worked Example: Area of a Roof
 * Worked Example: Oil Tanker Arriving in Port
 * * Exercises: Angles of Elevation and Depression
 * The most Difficult Triangles to Solve

Trig Functions as Functions

 * Graphs of Sine, Cos and Tan
 * Phase and Frequency
 * Graph of Sine Squared
 * Addition Formula for Sines
 * Addition Formula for Cosines
 * Double Angle Formulas
 * * Waves in and out of Phase
 * * Beat Frequencies
 * * Worked Example: Ferris Wheel Problem
 * * Worked Example: Simplifying Angles
 * * Cosecant, Secant, Cotangent
 * * Graphs of Cosec, Sec and Cot
 * * Inverse Trigonometric Functions
 * * Simplifying a sin(x) + b cos(x)

Trigonometry References

 * * /Remembering Trig Formulae/
 * * /Trigonometric Formula Reference/
 * * /Trigonometric Unit Circle and Graph Reference/
 * * /Selected Angles Reference/
 * * /Law of Tangents/

For Enthusiasts

 * * Regular Polygons
 * * What Tessellations are Possible with Regular Polygons?
 * * Proof: Heron's Formula
 * * Compass Bearings
 * * Transformation of products into sums
 * * The Distance from New York to Tokyo
 * * Lissajous Figures
 * * The CORDIC Algorithm
 * * Nyquist Frequency
 * * Pythagorean Triples
 * * A Brief History of Trigonometry

Teachers Notes

 * * About This Book (Book 1)
 * * Khan Academy Videos
 * * Common Student Errors (Book 1)

Trigonometry Book 2
Book 2 is also pre-calculus trigonometry. However, the algebra moves at a brisker pace than in Book 1. The topics are not central to understanding trigonometry as it is usually taught in schools, now that a lot of former content has been dropped.

One rule of thumb of the topics in Book 2 is the union of the set of all topics in high-school contest related to trigonometry, applications, and the topics in the classical book Plane and Spherical Trigonometry by Palmer (link), subtracting any thoroughly discussed topics in Book 1, and excluding any topic that requires substantial use of calculus or the concept of limit (which should be done in Book 3).

The topics are useful, for example, for students interested in maths contests. In the enthusiasts section there are topics and exercises that are useful to students who will go on to do work with computer graphics.

Book 2 trigonometry deepens the understanding of the many relationships between triangles and circles. It also shows how to tackle some harder trigonometric function identities.

 * Introduction

More Geometry

 * * /Geometric Definitions of Trig Functions/
 * * Thales Theorem: Quick construction of a right angle
 * * Ellipses
 * * Spirals

More on Trigonometric Identities

 * * De Moivre's Formula
 * * /Verifying Trigonometric Identities/
 * * /Solving Trigonometric Equations/
 * * /Sum into Product/ (Exercises)
 * * The sine of 18º
 * * The sine of 15º
 * * /The transcendence of sine/
 * * The summation of sined or cosined arithmetic sequence
 * * Other Trig Identities

Going Spherical

 * * Triangles on a Sphere
 * * Application: The Distance from New York to Tokyo
 * * Applications of spherical trigonometry (astronomy)

Applications

 * * Related problems in practical use of trigonometry
 * * Relation between sine x, x, tangent x for small x
 * * Side opposite small angle given
 * * Length of long sides given
 * * Orthogonal projection
 * * Bipolar (biangular) coordinates
 * * Solving triangles by half-angle formulae
 * * The distance and dip of the horizon
 * * Cyclic Quadrilaterals and Ptolemy's Theorem
 * * Area of a quadrilateral
 * * Area of sector or segment
 * * Widening of pavements on curves
 * * Reflection and Refraction of a ray of light

Circles, Points and Triangles Associated with a Triangle

 * * The Circumcircle
 * * The Incircle
 * * The Excircles
 * * Other Centres of a Triangle
 * * Power of a Point
 * * Ceva's Theorem
 * * Orthocentric points
 * * The Excentral Triangle
 * * The Pedal Triangle
 * * The Nine-point Circle
 * * Brocard's Theorem
 * * The Fermat Point
 * * Reflections in a triangle
 * * Morley's Triangle
 * * Viviani's theorem
 * * Napoleon's theorem
 * * The Miquel Point
 * * Philo's Line
 * * Menelaus' theorem
 * * Area bisectors
 * * The Pivot theorem
 * * The Seven circles theorem
 * * The Simson line
 * * Thebault's theorem

Application to Algebra

 * * The solution of cubic equations

Applications to Graphics

 * * The Delaunay Triangulation

Where do These Belong?
''This section is for Book 2 pages where we don't yet know how they should fit in.

 * * /Some Little-known Trigonometric Functions/

for Enthusiasts

 * * A Generalization of Pythagoras' Theorem
 * * The Eyeball Theorem
 * * Casey's Theorem

Teachers Notes

 * * About This Book (Book 2)
 * * Khan Academy Videos
 * * Common Student Errors (Book 2)

Scrap Heap
These are pages that are on the way out.
 * /Trigonometric identities/
 * * Core concepts of trigonometry
 * * /Prerequisites and Basics/
 * /Addition and Subtraction Theorems/
 * More About Addition Formulas - Some Content may need extracting to book 1.
 * * /Collection of Problems/
 * * Degrees Minutes and Seconds
 * * Doing without Sine
 * * Reflections in a line (possibly could be worked into an intro/review on matrices - book 3 intro chapters)

Trigonometry Book 3
Book 3 uses and builds on calculus, complex numbers, matrices. We assume the student is relatively fluent with algebra. We will often combine simple steps to keep proofs/explanations short. Book 1 is a prerequisite, but book 2 isn't.

There are many computing related topics, particularly in the "for Enthusiasts" section.

 * Introduction

Calculus and complex numbers

 * Some preliminary results
 * Derivative of Sine
 * Derivative of Cosine
 * Derivative of Tangent
 * Derivative of Inverse Functions
 * Power Series for ex
 * Power Series for Cosine and Sine
 * Numeric computation of Cosine and Sine
 * eiπ
 * Cosh, Sinh and Tanh
 * Functions of complex variables

Basis Functions

 * A Square Wave in Sines
 * The Gibbs Overshoot
 * The Plancherel Identity

Beyond the Fourier Transform

 * Eigenfunctions
 * Representation Theory
 * The Pontryagin Dual
 * Wavelets

Where do These Belong?
''This section is for Book 3 pages where we don't yet know how they should fit in.
 * Trig Substitutions
 * /Vectors in the Plane/
 * /Vectors and Dot Products/
 * /Trigonometric Form of the Complex Number/
 * Simple Harmonic Oscillator
 * * Calculating π
 * * Some theorems using vectors
 * * Price's Theorem

for Enthusiasts

 * * Chebyshev Polynomials
 * * Trigonometry done Rigorously
 * * The Fast Fourier Transform
 * * Erdős–Mordell inequality
 * * Hilbert's third Problem
 * * Wavelet Compression

Teachers Notes

 * * About This Book (Book 3)
 * * Common Student Errors (Book 3)

Authors
Lmov, Alsocal, Robinson0120, Evil saltine, JEdwards, llg, Programmermatt, Douglas W. Mitchell

Also thanks to the many contributors to mathematical articles on Wikipedia from which some of the content has been lifted.

Matematik A/Trigonometri de:Mathematik: Schulmathematik: Trigonometrie Trigonometría CMC/3ème/Trigonométrie Trigonometria Matemática elementar/Trigonometria

title: Trigonometry