[Anfänger] Pointer Problem?



  • Hi Leute,
    ich habe ein Verständnisproblem, was Pointer/ Referenzen angeht.
    Die Berechnung soll mithilfe von Zeigern oder Referenzen innerhalb einer Funktion drei getrennte Variablen (Grad, Bogenminute, Bogensekunde) zurückgeben. Die Berechnung erfolgt mit den Nachkommazahlen, jedoch sollen nur die integer Werte ausgegeben werden. Pointer/ Referenzen scheinen mir aber redundant?
    Würde mich über Hilfe freuen 🙂

     ... // ConsoleApplication128.cpp: Definiert den Einstiegspunkt für die Konsolenanwendung.
    //
    
    
    #include "stdafx.h"
    #include <iostream>
    #include <string>
    #include <math.h>
    using namespace std;
    
    double bogenminute;
    int bogensekunde;
    double grad;
    double zahl;
    double i;
    
    double eingabe(double i)
    {
    	cout << " Diese Programm rechnet eine Entfernung vom \204quator zu seinem Breitengrad um:";
    	cin >> zahl;
    	cin.get();
    	return 0;
    }
    
    double berechnung(int i)
    {
    	grad = (zahl / 111);
    	int grad2 = (int)grad;
    	grad = grad - (int)grad;
    	
    
    	double*newgrad = &grad;
    
    	bogenminute = (*newgrad * 60);
    	int bogenminute2 = (int)bogenminute;
    	bogenminute = bogenminute - (int)bogenminute;
    
    	double *newbogenminute = &bogenminute;
    
    
    	int bogensekunde = (*newbogenminute * 60);
    
    	cout << grad2 << "\n" << bogenminute2 << "\n" << bogensekunde << "";
    
    	cin.get();
    	return 0;
    
    }
    
    
    int main()
    
    
    {
    	eingabe(i);
    	berechnung(i);
    } ... 
    

  • Mod

    Globale Variablen sind ganz böse, aus gleich einem ganzen Haufen von Gründen, auf die ich jetzt nicht im Detail eingehen werde. Wenn du ohne globale Variablen arbeiten würdest, dann macht die Aufgabenstellung auf einmal Sinn. Wahrscheinlich ist es gerade der Zweck der Aufgabenstellung, dir zu zeigen, wie du auch ohne globale Variablen Werte aus Funktionen zurück geben kannst.


  • Gesperrt

    Dieser Beitrag wurde gelöscht!

Anmelden zum Antworten