Anfängerhilfe

thekoenna

Grünschnabel
Hallo Leute,
bin ein ziemlicher Anfänger auf dem Gebiet der C++ Programmierung. Muss ein Programm schreiben dass die n-te Zahl von m ausgibt! Soweit sogut nur happert es gerade irgendwie. Wäre nett wenn Ihr euch das mal anschauen könntet.

# include <iostream>
# include <cmath>
using namespace std;

int main () {
double m ;
cout << " Geben Sie die Zahl ein : " ;
cin >> m ;

double n ;
cout << " Geben die die Ziffer ein : " ;
cin >> n ;

int Anzeige ;
Anzeige = m % pow (10. ,n);

return 0;


}




Fehlermeldung :
15: error: invalid operands of types ‘double’ and ‘double’ to binary ‘operator%’
In function ‘int main()’



Herzlichen Dank im Vorraus :D
 
Bitte verwende doch die C++-Tags: [code=cpp]...[/code] und vergebe nächstes mal einen mehr inhaltsbeschreibenderen Titel ;) Danke.

Wieso verwendest du den Modula-Operator (%)?
Der erste Parameter "base" von pow() soll nicht die Basis des Zahlensystems sein, sondern wie folgendes:
Code:
Base^Exponent

Also Base hoch Exponent, siehe auch C++ Reference

Versuche mal folgendes:

C++:
/* n ^ m
    "n hoch m" */
#include <iostream>
#include <math.h>
#include <conio.h>

using namespace std;

int main()
{
    double base = 0;
    double exponent = 0;

    cout << "Base: ";
    cin  >> base;
    cout << "Exponent: ";
    cin  >> exponent;

    cout << endl << base << "^" << exponent << "=" << (pow(base, exponent));


    getch();
    return 0;
}
 
Zuletzt bearbeitet:
Hi.

@thekoenna: Verwende statt double einfach long oder unsigned long und caste das Ergebnis von pow:
C++:
long Anzeige = m / static_cast<long>(pow (10. ,n)) % 10;

@ComFreek: Was berechnest du da? Aufgabe verfehlt...

Gruß
 
Zuletzt bearbeitet:
Zurück