Andy Pomfret
/
UoY-32C-lab4-2
Template project for University of York ELE00032C Lab 4
main.cpp@3:5c16861db08e, 2021-12-17 (annotated)
- Committer:
- ajp109
- Date:
- Fri Dec 17 15:11:26 2021 +0000
- Revision:
- 3:5c16861db08e
- Parent:
- 2:3e6493621bc9
Pull updates for 2022
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
ajp109 | 0:77209603a6fe | 1 | #include "mbed.h" |
ajp109 | 0:77209603a6fe | 2 | |
ajp109 | 1:8290f84652d1 | 3 | struct IntVector { |
ajp109 | 1:8290f84652d1 | 4 | int x; |
ajp109 | 1:8290f84652d1 | 5 | int y; |
ajp109 | 1:8290f84652d1 | 6 | }; |
ajp109 | 1:8290f84652d1 | 7 | |
ajp109 | 2:3e6493621bc9 | 8 | unsigned long long modSquared(IntVector vector) { |
ajp109 | 2:3e6493621bc9 | 9 | return vector.x*vector.x + vector.y*vector.y; |
ajp109 | 2:3e6493621bc9 | 10 | } |
ajp109 | 2:3e6493621bc9 | 11 | |
ajp109 | 1:8290f84652d1 | 12 | int main() { |
ajp109 | 1:8290f84652d1 | 13 | IntVector p; |
ajp109 | 2:3e6493621bc9 | 14 | IntVector q; |
ajp109 | 1:8290f84652d1 | 15 | |
ajp109 | 1:8290f84652d1 | 16 | p.x = -3; |
ajp109 | 1:8290f84652d1 | 17 | p.y = 1; |
ajp109 | 1:8290f84652d1 | 18 | |
ajp109 | 2:3e6493621bc9 | 19 | q = p; |
ajp109 | 2:3e6493621bc9 | 20 | q.x = 4; |
ajp109 | 2:3e6493621bc9 | 21 | |
ajp109 | 2:3e6493621bc9 | 22 | printf("(%d, %d). Mod-squared %llu\r\n", q.x, q.y, modSquared(q)); |
ajp109 | 2:3e6493621bc9 | 23 | printf("(%d, %d). Mod-squared %llu\r\n", p.x, p.y, modSquared(p)); |
ajp109 | 1:8290f84652d1 | 24 | |
ajp109 | 1:8290f84652d1 | 25 | // Do nothing, forever... |
ajp109 | 1:8290f84652d1 | 26 | while (true); |
ajp109 | 0:77209603a6fe | 27 | } |