kann jemand mir helfen bitte?
-
ich habe eine aufgabe:
Schreiben Sie ein Programm, welches eine short-Variable namens zahl mit dem Ausdruck pow(2,sizeof(short) * 8 - 1)-1.0 initialisiert. Inkludieren Sie die Bibliothek cmath, damit Sie die Funktion pow() verwenden können. Vereinbaren Sie anschließend einer short-Variable namens summe und initialiseieren Sie diese mit dem Ausdruck zahl + zahl. Geben Sie abschließend die Variablen zahl und summe auf dem Standardausgabestrom aus.Überlegen Sie sich vor der Ausführung des Programms, welche Werte Sie erwarten und vergleichen sie diese mit der Ausgabe.
Hinweis
Wenn bei der Übersetzung Warnungen ausgegeben werden, können Sie diese ignorieren.ich habe zwei programen geschrieben aber keine von diese ist richtig:
#include <cmath>
#include <iostream>using namespace std;
int main()
{
short zahl ;
cout << "wertebereich von short" << endl;
cout << "zahl " << pow(2,sizeof(short) * 8.0 - 1)-1.0 << endl;
cout << " sume: " << zahl + zahl << endl;system("PAUSE");
return 0;
}zweite:
#include <cmath>
#include <iostream>using namespace std;
int main()
{
short zahl = pow(2,sizeof(short) * 8.0 - 1)-1.0 ;
cout << "wertebereich von short" << endl;
cout << "zahl " << zahl << endl;
cout << " sume: " << zahl + zahl << endl;system("PAUSE");
return 0;
}kann jemand mir vieleich erklären wo meine fehler stehn weil ich habe keine andere idee.
ich wäre dankbar für jede antwort
mfg toni
-
So vielleicht???
#include <iostream> #include <cmath> using namespace std; int main() { cout<<"Wertebereich von Short!\n"; cout<<"Wertebereich: "<<pow(2,sizeof(short) * 8.0 - 1)-1.0 ; cout<<"\nSumme: "<<pow(2,sizeof(short) * 8.0 - 1)-1.0+pow(2,sizeof(short) * 8.0 - 1)-1.0 ; cout<<"\n\n"; system("Pause"); return 0; }
-
toni733 schrieb:
ich habe zwei programen geschrieben aber keine von diese ist richtig:
das zweite program ist schon sehr fein. tu noch die variable summe bauen, damit es ganz der aufgabe entspricht.
short summe=zahl+zahl;
wo wähnst du den fehler, womit ich meine, warum vertrittst du die meinung, die programen wären falsch? ok, das erste program benutzt die uninitialisierte variable zahl, da kommt crap raus. beim zweiten programm sollte ein überlauf kommen, oder?
-
Immer brav machen was im Text steht:
#include <iostream> #include <cmath> //Inkludieren Sie die Bibliothek cmath using namespace std; //Schreiben Sie ein Programm int main () { // welches eine short-Variable namens zahl mit dem Ausdruck pow(2,sizeof(short) * 8 - 1)-1.0 initialisiert. short shortVar = pow(2,sizeof(short)*8-1)-1; // Vereinbaren Sie anschließend einer short-Variable namens summe und initialiseieren Sie diese mit dem Ausdruck zahl + zahl. short summe = zahl + zahl; // Geben Sie abschließend die Variablen zahl und summe auf dem Standardausgabestrom aus. cout << "Zahl: " << zahl << endl; cout << "Summe: " << summe << endl; return 0; }Denk daran, dass bei summe ein Überlauf passiert.
MfG SideWinder
-
SideWinder schrieb:
Immer brav machen was im Text steht:
[cpp]
// welches eine short-Variable namens zahl mit dem Ausdruck pow(2,sizeof(short) * 8 - 1)-1.0 initialisiert.
short shortVar = pow(2,sizeof(short)*8-1)-1;
[/cpp]
-
SideWinder schrieb:
Immer brav machen was im Text steht:
#include <iostream> #include <cmath> //Inkludieren Sie die Bibliothek cmath using namespace std; //Schreiben Sie ein Programm int main () { // welches eine short-Variable namens zahl mit dem Ausdruck pow(2,sizeof(short) * 8 - 1)-1.0 initialisiert. short shortVar->zahl??? = pow(2,sizeof(short)*8-1)-1; // Vereinbaren Sie anschließend einer short-Variable namens summe und initialiseieren Sie diese mit dem Ausdruck zahl + zahl. short summe = zahl + zahl; // Geben Sie abschließend die Variablen zahl und summe auf dem Standardausgabestrom aus. cout << "Zahl: " << zahl << endl; cout << "Summe: " << summe << endl; return 0; }Denk daran, dass bei summe ein Überlauf passiert.
MfG SideWinder
Mist war zu langsam^^
-
volkard: Oh, hab mich schon gewundert, warum hier kein Name vorgegeben ist und bei der anderen Variable schon

Edit: Vor allem weil ich unten dann schon zahl verwendet habe

MfG SideWinder