Ich benötige Hilfe
-
Ich hab erst angefangen mit c++ doch meine Frage ist jetzt warum diese Bruchrechnung in meiner Console so gemischt wie ein Salat auf einmal aussieht weiß jemand was der Fehler ist ?
#include "stdafx.h"
#include <iostream>
#include "gotoxy.h"
using namespace std;void main()
{
int auswahl;//char Addition[8]; //char Subtraktion[11]; //char Multiplikation[14]; //char Division[8]; //printf("Mit diesem Programm können sie eine Addition,Subtraktion,Multiplikation und Divison mit Brüchen durchführen"); //printf("Wählen Sie nun eine von diesen vier Möglichkeiten aus indem sie Addition,Subtraktion,Multiplikation oder Division eingeben"); //printf("Geben Sie nun an wie sie ihren Bruch rechnen möchten"); //scanf_s("%s") cout << "Geben Sie nun an wie sie ihren Bruch rechnen möchten:\n" "1 - Addition\n" "2 - Subtraktion\n" "3 - Multiplikation\n" "4 - Division\n"; cin >> auswahl; if (auswahl == 1) { //Bruch 1 float Zaehler1; float Nenner1; //Bruch 2 float Zaehler2; float Nenner2; //Bruch 3 float Zaehler_e; float Nenner_e; //Überschrift printf("**************************************************************\n"); printf("Addition von Bruchzahlen\n"); printf("**************************************************************\n"); // Bruch 1 Eingabe printf("Gebe nun den ersten Zaehler ein:"); scanf_s("%g", &Zaehler1); printf("Gebe nun den ersten Nenner ein:"); scanf_s("%g", &Nenner1); //Bruch 2 Eingabe printf("Gebe nun den zweiten Zaehler ein:"); scanf_s("%g", &Zaehler2); printf("Gebe nun den zweiten Nenner ein:"); scanf_s("%g", &Nenner2); // Deko printf("**************************************************************\n"); //Rechnung Bruch erweitern Zaehler_e = (Zaehler1 * Nenner2) + (Nenner1 * Zaehler2); Nenner_e = (Nenner1*Nenner2); printf("\n"); //Bruch 1 Ausgabe gotoxy(4, 8); printf("%g\n", Zaehler1); gotoxy(2, 9); printf("-----"); gotoxy(4, 10); printf("%g\n", Nenner1); // Ausgabe "+" Symbol gotoxy(8, 9); printf("+"); //Bruch 2 Ausgabe gotoxy(12, 8); printf("%g\n", Zaehler2); gotoxy(10, 9); printf("-----"); gotoxy(12, 10); printf("%g\n", Nenner2); //Ausgabe "=" Symbol gotoxy(16, 9); printf("="); //Bruch 3 Ausgabe gotoxy(20, 8); printf("%g\n", Zaehler_e); gotoxy(18, 9); printf("-----"); gotoxy(20, 10); printf("%g", Nenner_e); //Deko printf("\n**************************************************************\n"); system("pause");
-
BILD : http://prntscr.com/l5grfb
-
Woher hast du denn
%g
für printf and scanf? Bei floats ist es%f
.Und du solltest dich entscheiden, welche Sprache du lernen möchtest. Du sschreibst zwar von C++, benutzt auch oben cin und cout aber dann auch wieder printf/scanf und postest im C-Forum.
Das Mischen solltest du sein lassen.
Es gibt aber auch noch ein paar andere Sachen wie void main, die Variablendeklaration am Anfang des Scopes (nicht nötig sowohl bei C++ als auch bei C99) den system-Aufruf und generell die Struktur des Programms. Aber fang erst einmal richtig an, das wird schon.
-
@yahendrik sagte in Ich benötige Hilfe:
Woher hast du denn %g für printf and scanf?
Wahrscheinlich aus einem Lehrbuch oder einer man-Page zu
scanf
, bzwprintf
.Bei floats ist es %f
Und %e und %g
Während es beiscanf
keine Rolle spielt, welcher der drei Spceifier benutz wird, gibt es beiprintf
jedoch große Auswirkungen.Man sollte aber auch nicht von
scanf
aufprintf
schließen und umgekehrt. Das sind zwei völlig verschiedene Funktionen.Bei
double
brauchtscanf
dasl
beim Specifier (%lf), wähjrend beiprintf
das %f fürdouble
undfloat
gilt.
-
Ja ich hab das in der Schule so beigebracht bekommen und dann dachte ich mir warum kopierst du nicht diese Bruchrechnung und hängst dann noch was davor . Wollte nämlich bisschen was ausprobieren also hab ich im Internet danach geschaut da kam das mit dem cout und dann dachte ich mir ok das nimmst mal klatscht es davor und fertig . Meine Idee war halt Addition,Subtraktion,Division und Multiplikation von Brüchen in eine Datei zu machen und dann wird am Anfang gefragt was man nutzen möchte und dann springt er zum jeweiligen Part aber ich weiß nicht wie ich das machen soll.
-
Aber in C++
cout
undcin
mitprintf
undscanf
zu mischen ist nicht sinnvoll.
Benutze in C++ besser nurcout
undcin
!PS: Daher ist dies auch das falsche Unterforum (und einen aussagekräftigeren Titel solltest du auch wählen)!
-
@bubimasterxd sagte in Ich benötige Hilfe:
warum diese Bruchrechnung in meiner Console so gemischt wie ein Salat auf einmal aussieht weiß jemand was der Fehler ist ?
Weil du mit dem gotoxy wild auf dem Bildschirm rumschreibst.
WEnndu normal Text auf ein Blatt schreibst und dann anfängst an irgendeiner Stelle weiter zu schreiben, sieht es ähnlich aus
-
@th69 sagte in Ich benötige Hilfe:
PS: Daher ist dies auch das falsche Unterforum (und einen aussagekräftigeren Titel solltest du auch wählen)!
Das war durchaus in C++ gefragt, aber ich habe es nach C verschoben, weil der Fragesteller eindeutig C gelernt hat (und vielleicht versehentlich irgendwo ein paar Zeilen C++ aufgeschnappt hat).