Casa > C > Como Encontrar Uma Raiz Quadrada Manualmente

Como encontrar uma raiz quadrada manualmente

Como encontrar uma raiz quadrada manualmente

Aqui está uma arte quase esquecida: uma que, com o advento das calculadoras electrónicas, provavelmente sobreviverá até ao século XXI apenas no papel e nas memórias dos antigos.

Qual é o número de onde se quer encontrar a raiz quadrada? Here's one we'll use:

  1. 46656 

First, divide the number to be square-rooted into pairs of digits, starting at the decimal point. Ou seja, nenhum par de dígitos deve se sobrepor a um ponto decimal. (For example, split 1225 into "12 25" rather than "1 22 5"; 6.5536 into "6. 55 36" rather than"6.5 53 6".)

Then you can put some lines over each digit pair, and a bar to the left, somewhat as in long division.

  1. +--- ---- ---- 
  2. | 4 66 56 

Find the largest number whose square is less than or equal to the leading digit pair. In this case, the leading digit pair is 4; the largest number whose square is less than or equal to 4 is 2.

Put that number on the left side, and above the first digit pair.

  1. +--- ---- ---- 
  2. 2 | 4 66 56 

Now square that number, and subtract from the leading digit pair.

  1. +--- ---- ---- 
  2. 2 | 4 66 56 
  3. |-4 
  4. +---- 

Extend the left bracket; multiply the last (and only) digit of the left-hand number by 2, put it to the left of the difference you just calculated, and leave an empty decimal place next to it.

  1. +--- ---- ---- 
  2. 2 | 4 66 56 
  3. |-4 
  4. +---- 
  5. 4_ | 0 

Then bring down the next digit pair and put it to the right of the difference.

  1. +--- ---- ---- 
  2. 2 | 4 66 56 
  3. |-4 
  4. +---- 
  5. 4_ | 0 66 

Find the largest number to put in this blank decimal place such that that number, times the number already there plus the decimal place, will be less than the current difference. For example, see if 1 * 41 is ≤ 66, then 2*42 ≤ 66, etc. In this case it's a 1. Put this number in the blank you left, and in the next decimal place on the result row on the top.

  1. 2 1 
  2. +--- ---- ---- 
  3. 2 | 4 66 56 
  4. |-4 
  5. +---- 
  6. 41 | 0 66 

Now subtract the product you just found.

  1. 2 1 
  2. +--- ---- ---- 
  3. 2 | 4 66 56 
  4. |-4 
  5. +---- 
  6. 41 | 0 66 
  7. |- 41 
  8. +-------- 
  9. 25 

Now, repeat as before: Take the number in the left column (here, 41) and double its last digit (giving you 42). Copy this below in the left column, and leave a blank space next to it. (Double the last digit with carry: for example, if you had not 41 but 49, which is 40+9, you should copy down 40+18 which is 58.) Also, bring down the next digit pair on the right.

  1. 2 1 
  2. +--- ---- ---- 
  3. 2 | 4 66 56 
  4. |-4 
  5. +---- 
  6. 41 | 0 66 
  7. |- 41 
  8. +-------- 
  9. 42_ 25 56 

Now, find the largest digit (call it #) such that 42# * # ≤ 2556. Here, it turns out that 426 * 6 = 2556 exactly.

  1. 2 1 6 
  2. +--- ---- ---- 
  3. 2 | 4 66 56 
  4. |-4 
  5. +---- 
  6. 41 | 0 66 
  7. |- 41 
  8. +-------- 
  9. 426 | 25 56 
  10. |- 25 56 
  11. +------------- 

When the difference is zero, you have an exact square root and you're done. Otherwise, you can keep finding more decimal places for as long as you want.

Here is another example, with less annotation.

  1. 7 . 2 8 0 1 ... 
  2. +---------------------- 
  3. 7 | 53 . 00 00 00 00 00 
  4. | 49 
  5. +---------------------- 
  6. 142 | 4 00 
  7. | 2 84 
  8. +---------------------- 
  9. 1448 | 1 16 00 
  10. | 1 15 84 
  11. +---------------------- 
  12. 14560 | 16 00 
  13. | 0 
  14. +---------------------- 
  15. 145601 | 16 00 00 
  16. | 14 56 01 
  17. +---------------------- 
  18. | 1 43 99 00 
  19. ... 

John Kerl

[1]

Footnotes

[1] How to manually find a square root

De Mintz Normann

Como começar a enraizar e tudo o que posso fazer depois de enraizar :: Para que serve um ficheiro MK do Android?