Zum Inhalt springen

GaZa

Mitglieder
  • Gesamte Inhalte

    7
  • Benutzer seit

  • Letzter Besuch

  1. also tut mir leid aber ob das bei dir zum punkteabzug kommt oder nicht... is für mich jez an der stelle eigentlich wurst... ich hab meine aufgabenstellung -------------------------------------- Ich habe die Else-blöcke bewusst so rein getan... weil wir das so machen sollten... ich weiss sehr wohl dass man den else block weglassen kann und nur schreiben kann.. wenn ihr jez her kommt und mir sagt dass das viel zu umständlich und verwirrend ist... und ich das irrgentwie anders mit men "switch" machen soll .. bringt mir das garnichts.. weil wir das mit else machen sollten... ich kann ja nich hingehen und sagen.. was der von mir will da pfeif ich drauf... ich mach das so wie ichs für richtig halte... ich hab meine aufgabenstellung und ich muss die auch so erfüllen.. @ chooter... danke... du bist der erste der mir in diesem threat richtig weitergeholfen hat ^^... jez weiss ich auch dass der aufbau wenigstens semantisch richtig war...
  2. ja mir ist schon klar dass ein if block reicht... nämlich das für "true"... wenn da "false" kommt.. macht das ding garnix... in meinem fall SOLL!!! er aber was machen.. und zwar das nächste if starten... verstehst? und mit dem switch ist das auch so ne sache... wir haben das nocht nicht beigebracht bekommen... meine freage an der stelle.. könnte das programm in dem aufbau ÜBERHAUPT funktionieren? sprich darf ich in ein "IF" ein weiteres "IF" einbauen? also dass wer bei true... irrgentwas rechnet und bei false einen weiteres if macht...
  3. Die aufgabenstellung hieß schreib nen progi bei dem du zähler und nenner von 2 brüchen seperat eingibst.. mit diesen sollen dann die 4 grundrechenarten realisierbar sein.. sprich +-*/ das ergebniss soll ne kommazahl sein... diese kommazahl soll nach ihrer ausgabe noch einmal gerunden rauskommen.. sprich wenn da 5.823434 raus kommt sollte dies einmal so gedruckt werden... und ein weiteres mal als 5.82 @klotzkopp.. danke ... für den tipp mit den kommastellen... @ flashpixx... was du von mir willst versteh ich immernochnicht oO... ichhab mir das so gedacht.. Addition ordne ich der 1 zu subtraktion der 2 multiplikation der 3 und division der 4... dann lasse ich den benutzer die operation durch eingabe von 1-4 auswählen... wenn das die division sein sollte.. sprich die 4 sieht das bei mir im diagramm so aus: Ist die Operation eine Addition? -->Nein (dann kommt die nächste frage) Ist die Operation eine Subtraktion?--> Nein Ist die Operation eine Multiplikation? --> Nein Ist die Operation eine Division? --> Ja dann rechnet er den zweig für die Division... in dem fall: (den hinweis von klotzkopp.. hab ich da doch nicht verbessert...) fals er eine 5 eingibt... oder 3542.. oder sonnst was... ist keiner der 4 fälle erfüllt und er gibt wie unten geschrieben die Fehlermeldung aus... was is falsch an dem ansatz? also ich hab schon gesagt dass ich mit dem programieren gerade eben erst angefangen habe und was du unter einem switch verstehst.. weiss ich nicht... ich sollte das als "if" machen.. (nur um laut proff ein gefühl dafür zu benutzten...)
  4. ..... ich hab mir sienen beitrag durchgelesen-.. und ich kann mich nur wiederholen.. ich verstehe seinen standpunkt nicht... und ich soll das ergebnis als kommazahl angeben nicht als bruch.... danach soll diese kommazahl gerundet werden... aber das mit dem runden mach ich noch ich will wissen warum da 0 rauskommt... das is das was ich nicht verstehe... ich hab c mit double definiert... wieso kommt da 0.000000 raus? und ich hab vom prof vermittelt bekommen dass beim "if" erst der ja fall kommt und dann der nein fall... den nein fall sollte ich mit else einleiten.. und dann in den nein fall das nächste if einfügen....
  5. kann schon sein dass er den fehler meint... aber ich versteh seinen standpunkt nicht... wieso bauche ich die else nicht? bei mir gibt es 4 verschiedene fälle.. 1 addition 1 subtraktion 1 multipli. und 1 division.. und die arbeitet er der reihe nach durch... addition = 1 sub =2 usw. ich hab 4 fälle und in jedem fall muss er entweder +,-,* oder / rechnen... und die sind ja unterschieden... ich versteh nich warum ich die nich brauche oO?
  6. ahm... ja ich merks.... ich hab vergessen nach dem kopieren des blocks... die zeichen zu ändern... hier ist das berichtigte: #include <stdio.h> #include <stdlib.h> int main() { int z1; int z2; int n1; int n2; double c; int operation; double s; double q; printf("Welche Operation soll ausgefuehrt werden?\n(Addition 1, Subtraktion 2, Multiplikation 3, Division 4)\n\n"); printf("Operation = "); scanf("%d",&operation); fflush(stdin); printf("\nZaehler erste Zahl: "); scanf("%d",&z1); fflush(stdin); printf("\nNenner erste Zahl: "); scanf("%d",&n1); fflush(stdin); printf("\nZaehler zweite Zahl: "); scanf("%d",&z2); fflush(stdin); printf("\nNenner zweite Zahl: "); scanf("%d",&n2); if(operation==1) { /*Addition*/ s=(z1/n1); q=(z2/n2); c=(s+q); printf("Ergebnis = "); printf("%lf",c); } else { if(operation==2) { /*Subtraktion*/ s=(z1/n1); q=(z2/n2); c=(s-q); printf("Ergebnis = "); printf("%d",c); } else { if(operation==3) { /*Multiplikation*/ s=(z1/n1); q=(z2/n2); c=(s*q); printf("Ergebnis = "); printf("%d",c); } else { if(operation ==4) { /*Division*/ s=(z1/n1); q=(z2/n2); c=(s/q); printf("Ergebnis = "); printf("%d",c); } else { /*Error*/ printf("Es wurde ein Fehler festgestellt"); } } } } }
  7. Hallo liebe Info freunde. Ich hab ein mittelschweres Problem und hoffe ihr könnt mir weiterhelfen. Folgendes: Ich muss ein Programm schreiben dass: - Die 4 Grundrechenarten beherrscht - Mit mit 2 Brüchen rechnet - Das Ergebnis 1 mal ungereundet und 1 mal gerundet anzeigt (das mit dem runden füg ich später noch ein) Ich hab mir gedacht ich teile den Grundrechenarten die Zahlen 1 bis 4 zu... (bitte nicht sagen dass das viel zu umständlich ist und dass das viel einfacher geht... ich steh gerade mal am anfang ^^) Programm: #include <stdio.h> #include <stdlib.h> int main() { int z1; int z2; int n1; int n2; double c; int operation; double s; double q; printf("Welche Operation soll ausgefuehrt werden?\n(Addition 1, Subtraktion 2, Multiplikation 3, Division 4)\n\n"); printf("Operation = "); scanf("%d",&operation); fflush(stdin); printf("\nZaehler erste Zahl: "); scanf("%d",&z1); fflush(stdin); printf("\nNenner erste Zahl: "); scanf("%d",&n1); fflush(stdin); printf("\nZaehler zweite Zahl: "); scanf("%d",&z2); fflush(stdin); printf("\nNenner zweite Zahl: "); scanf("%d",&n2); if(operation==1) { /*Addition*/ s=(z1/n1); q=(z2/n2); c=(s+q); printf("Ergebnis = "); printf("%lf",c); } else { if(operation==2) { /*Subtraktion*/ s=(z1/n1); q=(z2/n2); c=(s+q); printf("Ergebnis = "); printf("%d",c); } else { if(operation==3) { /*Multiplikation*/ s=(z1/n1); q=(z2/n2); c=(s+q); printf("Ergebnis = "); printf("%d",c); } else { if(operation ==4) { /*Division*/ s=(z1/n1); q=(z2/n2); c=(s+q); printf("Ergebnis = "); printf("%d",c); } else { /*Error*/ printf("Es wurde ein Fehler festgestellt"); } } } } } Mein Problem: Ich habe das Programm zunächst ohne die fflush eingegeben und ausgeführt.. da kahm allerdings in jedem der 4 fälle 0 als ergebnis raus... ich dachte mir dass es vielleicht am tastaturpuffer liegen könnte... und ich hab nach jeder eingabe mal fflush(stdin); eingebenen... doch das hat nich wirklich was gebracht (das ergebnis blieb 0) =( ich denke mal dass es vielleicht daran liegen könnte dass ich das fflush() falsch benutzt habe.. Kann mir bitte einer auf die sprünge helfen? Ich steh auf dem schlauch

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...