
| Mini Ex | Cross Multiplication and Ratios |
| Submitted On: Wednesday, July 7, 2010 at 11:59:16 PM |
ColinFiat Please login to rate this submission. Link to this Submission Blog and Forum Link HTML link Facebook / Pagereaders
|
DO NOT ATTEMPT: Articles provided here are for INFORMATIONAL PURPOSES ONLY. DO NOT undertake any project based upon any information obtained on the internet, including this website. We are not responsible for, nor do we assume any liability for, damages resulting from the use of any information on this site. Please read the Legal page for more information. numbers have a fixed size because they are computer based and are used to make sure data has been copied or transmitted correctly. When downloading a file from the internet, each number in the data file is added up and a total derived. The next number to be downloaded should match the total of the last block of data. If they do not match then the downloaded data is faulty. Another name for a checksum is a hash value. There are many types. Perhaps some of you have seen a Cyclic Redundancy Check error message from a hard drive? This type of checksum is more complex but performs the same basic task; validating data. When transmitting data, it is obviously efficient to use all of the bandwidth. If the data being transmitted is 16 bits at a time, the numbers can range from 0 to 65535. Therefore, the checksum must also fit into 16 bits. But the added total of the data will most likely be bigger than 65535. So the modulo of the value is used. The modulus of a number can be thought of as the remainder of a division – rem...
|
||||
| Tags: checksum, hashcode, hash, value, data, validation |
| Monday, July 12th, 2010 at 7:59:49 PM #46657 |
|
Dodge Site Admin 'Open foot, insert mouth' Level 19 Posts: 1,914 Submissions: 51 ![]() | Colin, I like to think I have a decently logical mind but math is not my strong point. I basically slept through high school. But I love puzzles. :-D I apologise for using incorrect formatting, but I think I can get the idea across... This seems impossible. It only works if the data ends in zeros. However, if you were to change the first n10 to -n10, it can work for any number set. n1 + n2 + n3 + n4 + n5 + n6 + n7 + n8 + n9 + -n10 = n10 mod 100 Eg 1: 41 + 48 + 15 + 26 + 47 + 34 + 3 + 35 + 27 + 20 = 296 + -X = X mod 100 X= 48 Eg 2: 54 + 42 + 64 + 1 + 73 + 44 + 19 + 11 + 94 + 22 = 424 + -X = X mod 100 X= 12 I figure it something like this- Eg 3: 41 + 48 + 15 + 26 + 47 + 34 + 3 + 35 + 27 + 20 = 296 296 mod 100 = 96 96 / 2 = 48 96 - 48 = 48 If this is way off, plz disregard my babbling. :-P 5*'d, btw. |
Oowwww. ( ̲̅:̲̅:̲̅:̲̅[̲̅ ̲̅]̲̅:̲̅:̲̅:̲̅ ̲̅) ![]() Uses [view] tag. |
| Monday, July 12th, 2010 at 8:15:37 PM #46658 |
|
Dodge Site Admin 'Open foot, insert mouth' Level 19 Posts: 1,914 Submissions: 51 ![]() | I wish there were an edit button here... In eg 1, X actually = 148 in eg 2, X actually = 212 Then you'd ditch the hundreds leaving 48 and 12 for the checks. |
Oowwww. ( ̲̅:̲̅:̲̅:̲̅[̲̅ ̲̅]̲̅:̲̅:̲̅:̲̅ ̲̅) ![]() Uses [view] tag. |
| Monday, July 12th, 2010 at 8:34:12 PM #46660 |
|
ColinFiat Site Admin 'JavaScript' Level 26 Posts: 1,301 Submissions: 85 ![]() | You are one smart cookie Dodge. Yes the example challenge is impossible and a solution can only be found for specific number sets. I chose to set a challenge which was unsolvable to highlight the near impossibility of including 16 or 32 bit checksums in the data. There could have been more to this article as I had contemplated discussing the possibility of writing a program which contains a compressed data block of itself. In essence: data="compresseddatacompresseddatacompresseddatacompresseddata" code=unpack(data) write(code) The result would 'written' would look exactly like the above. As yet I have not found a method of doing this. |
![]() ![]() |
| Monday, August 9th, 2010 at 9:00:21 PM #47937 |
|
Toasty SysOp Level 40 Posts: 7,353 Submissions: 227 ![]() | ^Trim, then do a frequency analysis, make a map, and then replace. Of course, it only makes sense to do so if the size of the map+data is smaller than the original data. You could drop the mapping concept, and simply replace key characters (for example, replace "qu" in English with one character). If the data can strictly consist of A-Z in one case, no punctuation, you could reduce the size of each character (4 bit even? I'm on prescriptions right now, thinking is out). Reducing the total scope (i.e. taking the full 256 character ASCII set down to the 128 will help out some). Just a few ideas. |
![]() |
| Saturday, October 9th, 2010 at 7:19:09 PM #49594 |
|
PhiLep Member Level 4 Posts: 101 Submissions: 14 ![]() | Article #100. |
![]() |