IFD:EAI SoS21/course material/Session 3: File Structuring, Pointers and Addresses: Difference between revisions

From Medien Wiki
Line 21: Line 21:


==Pointers and Addresses==
==Pointers and Addresses==
[[File:pointers_addresses1.png|800px]]
https://replit.com/@abnutzer/PointersAndAdresses
https://replit.com/@abnutzer/PointersAndAdresses

Revision as of 16:14, 26 April 2021

Homework/Recap from Session 2:

Here are the solutions of last week's task. Please try a little to solve on your own, before you peek in here! :)

To get the distance between two points on a 2D plane we can use the Pythagorean theorem as depicted in the picture below. We give coordinates to the points and use the coordinates to calculate the distance according to the formula c = sqrt( (x2-x1)^2 + (y2-y1)^2 ), where c is the distance between the two points.

Distance calc.png

To get the x- and y-coordinates in our code, we can use the private variables for point p1 (_x and _y) and the member functions getX() and getY() for point p2. So the most crucial lines of code are:

float Point2D::calculateDistanceToOtherPoint(Point2D p2){
    float distance = sqrt( (p2.getX() -_x)*( p2.getX() -_x)+( p2.getY()-_y)*( p2.getY() -_y) ); 
    return distance;
}

Note that, for the sqrt() function to be known to the compiler, you need to include the math library with

#include <math.h>

Distance Function Complete Code

File Structuring, Preprocessing & Compilation

Filestructure preprocessing compilation1.png

Pointers and Addresses

Pointers addresses1.png

https://replit.com/@abnutzer/PointersAndAdresses