Anzeige:
Ergebnis 1 bis 9 von 9

Thema: anfängerfrage bezügl. variablentypen

  1. #1
    Registrierter Benutzer
    Registriert seit
    08.12.2002
    Ort
    austria
    Beiträge
    9

    anfängerfrage bezügl. variablentypen

    hallo!

    mal eine frage: was für ein ergebnis sollte das folgende programm liefern? ich dachte eigentlich, es würde 2,5 liefern, bei mir kommt aber 2 raus. wo ist da jetzt der fehler?

    Code:
    #include <iostream.h>
    
    int main(){
    	float i = 5/2;
    	cout << i << "\n";
    	return 0;
    }
    sorry, ich bin kompletter programmier-anfänger...

    ogott

  2. #2
    Registrierter Benutzer Avatar von peschmae
    Registriert seit
    14.03.2002
    Ort
    Schweizland
    Beiträge
    4.549
    5/2 ist eine Integer-Divison. Ganzzahlig. Das Resultat ist auch Ganzzahlig. Hier halt nicht gerundet, sondern einfach mit den Nachkommastellen abgeschnitten.

    Das gewünschte gibts mit dem da:
    5.0/2.0
    dann weiss der Compiler, dass du floats dividierst.

    MfG Peschmä
    The greatest trick the Devil ever pulled was convincing the world he didn't exist. -- The Usual Suspects (1995)
    Hey, I feel their pain. It's irritating as hell when people act like they have rights. The great old one (2006)

  3. #3
    Registrierter Benutzer
    Registriert seit
    08.12.2002
    Ort
    austria
    Beiträge
    9
    ah, vielen dank, das erklaert jetzt einiges!

    danke,

    ogott

  4. #4
    Registrierter Benutzer
    Registriert seit
    08.12.2002
    Ort
    austria
    Beiträge
    9
    hmm... ich habe da noch eine frage zur modulo division: gibt die mir jetzt den rest wieder, oder nur eine 0 fuer "es gibt keinen rest" und eine 1 fuer "es gibt einen rest"?

    ogott

  5. #5
    Registrierter Benutzer
    Registriert seit
    24.06.2003
    Beiträge
    486
    Original geschrieben von ogott
    hmm... ich habe da noch eine frage zur modulo division: gibt die mir jetzt den rest wieder, oder nur eine 0 fuer "es gibt keinen rest" und eine 1 fuer "es gibt einen rest"?
    Du bekommst den Rest.
    Für den Spezialfall % 2,gibt es natürlich nur die Lösungen 0 oder 1 (also es gibt keinen Rest,oder es gibt einen ^^).
    Aber i.A. gilt für eine natürliche Zahl % N bekommst du Zahlen aus 0 - (N-1)

  6. #6
    Registrierter Benutzer Avatar von peschmae
    Registriert seit
    14.03.2002
    Ort
    Schweizland
    Beiträge
    4.549
    Original geschrieben von ogott
    hmm... ich habe da noch eine frage zur modulo division: gibt die mir jetzt den rest wieder, oder nur eine 0 fuer "es gibt keinen rest" und eine 1 fuer "es gibt einen rest"?
    wäre die Frage nicht schon beantwortet hätte ich hier gross "Ausprobieren" hingeschrieben. Schliesslich geht das 10 Sekunden und du hast es dann mit eigenen Augen gesehen. Das ist meist besser als etwas mal irgendwo von jemandem erzählt gekriegt zu haben.

    MfG Peschmä
    The greatest trick the Devil ever pulled was convincing the world he didn't exist. -- The Usual Suspects (1995)
    Hey, I feel their pain. It's irritating as hell when people act like they have rights. The great old one (2006)

  7. #7
    Registrierter Benutzer
    Registriert seit
    08.12.2002
    Ort
    austria
    Beiträge
    9
    hallo!

    @ wraith: danke für die antwort, hab einen totalen denkfehler gehabt, ist ja logisch, dass bei 1/3 der rest 1 ist und nicht 0.333333 (das war der denkfehler).

    @ peschmae: ich habe gefragt, weil das ergebnis, das ich bekommen habe durch meinen denkfehler etwas verwirrend war...

    danke nochmal

    ogott

  8. #8
    Administrator Avatar von anda_skoa
    Registriert seit
    17.11.2001
    Ort
    Graz, Österreich
    Beiträge
    5.477
    Und weils noch kein anderer geschrieben hat

    Es heißt <iostream> nicht <iostream.h>

    Ciao,
    _
    Qt/KDE Entwickler
    Debian Benutzer

  9. #9
    Registrierter Benutzer
    Registriert seit
    08.12.2002
    Ort
    austria
    Beiträge
    9
    hmm... ok.

    solange es funktioniert...

    aber danke!

    ogott

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •