From 09231e1f8d3a5e5adbe52aecf909e966fe1bee57 Mon Sep 17 00:00:00 2001 From: rPatrickWarner Date: Tue, 6 Feb 2024 19:57:28 -0800 Subject: newchanges --- inclassexercise10rw/inclassexercise10rw/node.h | 2 +- .../inclassexercise10rw/pointerexamples.cpp | 18 +++++++++++++++--- .../inclassexercise10rw/pointerexamples.h | 3 +++ inclassexercise10rw/inclassexercise10rw/program.cpp | 18 +++++++++++------- 4 files changed, 30 insertions(+), 11 deletions(-) diff --git a/inclassexercise10rw/inclassexercise10rw/node.h b/inclassexercise10rw/inclassexercise10rw/node.h index b93abcb..793226f 100644 --- a/inclassexercise10rw/inclassexercise10rw/node.h +++ b/inclassexercise10rw/inclassexercise10rw/node.h @@ -3,7 +3,7 @@ struct node { - int data; + int _num; node* _next; }; diff --git a/inclassexercise10rw/inclassexercise10rw/pointerexamples.cpp b/inclassexercise10rw/inclassexercise10rw/pointerexamples.cpp index 0d1f139..d6ed294 100644 --- a/inclassexercise10rw/inclassexercise10rw/pointerexamples.cpp +++ b/inclassexercise10rw/inclassexercise10rw/pointerexamples.cpp @@ -2,16 +2,28 @@ void swap(node* first, node* second) { + first->_num ^= second->_num; + second->_num ^= first->_num; + first->_num ^= second->_num; } +void revertswap(node* first, node* second) +{ + first->_num ^= second->_num; + second->_num ^= first->_num; + first->_num ^= second->_num; + +} + + void standardize_101(node* node) { - + node->_num %= 101; } void square(node* node) { + node->_num *= node->_num; -} - +} \ No newline at end of file diff --git a/inclassexercise10rw/inclassexercise10rw/pointerexamples.h b/inclassexercise10rw/inclassexercise10rw/pointerexamples.h index fd6e569..a3a41fb 100644 --- a/inclassexercise10rw/inclassexercise10rw/pointerexamples.h +++ b/inclassexercise10rw/inclassexercise10rw/pointerexamples.h @@ -6,6 +6,9 @@ void swap(node* first, node* second); +void revertswap(node* first, node* second); + + void standardize_101(node* node); void square(node* node); diff --git a/inclassexercise10rw/inclassexercise10rw/program.cpp b/inclassexercise10rw/inclassexercise10rw/program.cpp index b95595a..5433e8f 100644 --- a/inclassexercise10rw/inclassexercise10rw/program.cpp +++ b/inclassexercise10rw/inclassexercise10rw/program.cpp @@ -13,28 +13,32 @@ using std::endl; int main() { - - node newnode = {}; + newnode._num = 52; + node nextnode = {}; + nextnode._num = 35; - - - + newnode._next = &nextnode; + standardize_101(&newnode); + cout << "The newnode._num mod 101 is:" << newnode._num << endl; swap(&newnode, &nextnode); - standardize_101(&newnode); + cout << "newnode._num was 52, now it is: " << newnode._num << "\nNext node was 35, now it is: " << nextnode._num << endl; - square(&nextnode); + revertswap(&newnode, &nextnode); + cout << "newnode._num was 52, now it is: " << newnode._num << "\nNext node was 35, now it is: " << nextnode._num << endl; + square(&nextnode); + cout << "nextnode._num squared is: " << nextnode._num << endl; return 0; -- cgit v1.2.3