C Programmierung: 2 Eingaben durch Komma trennen?

2 Antworten

Vom Fragesteller als hilfreich ausgezeichnet

Ich glaube nicht, dass du bei der Eingabe die Zahlen durch ein Komma trennen sollst. Das Enter bei der Eingabe ist der Zeilenumbruch, und so einfach lässt sich dieser auch nicht verhindern.

Hättest du mit großen Zahlen experimentiert, hättest du gemerkt, dass ein Overflow passiert, die Zahl beginnt also wieder von unten.

Zum nachlesen: https://en.wikipedia.org/wiki/Integer_overflow

Ich kenn mich nicht genug mit C aus um dir mit deinem Code zu helfen, aber ich weis dass der nächst größere Datentypen über Int, Long ist, vllt hilft dir das weiter 

Mit freundlichen Grüßen Stadch 

Zahlenraten mit C programmieren

Hallo lieber Leser,

Ich habe ein Problem mit einer Aufgabe, die die C-Programmierung betrifft.

Es geht um ein C-Programm, das zufällig zwei ganze Zahlen a und b zwischen 1 und 1000 bestimmt, so dass a <= b gilt. Der Benutzer soll so lange aufgefordert werden, eine Zahl zu raten, bis er die Zahl gefunden hat, die genau in der Mitte von a und b liegt. Nach jedem Rateversuch erhält der Benutzer einen Hinweis: Ist die Zahl kleiner als a oder größer als b: „Viel zu klein!“ bzw. „Viel zu groß!“ Ist die Zahl im richtigen Bereich, aber näher einer Grenze als an der Mitte: „Zu klein!“ bzw. „Zu groß!“ Anderenfalls: „Ein bisschen zu klein!“ bzw. „Ein bisschen zu groß!“

Wenn der Benutzer richtig geraten hat, erhält er die Mitteilung „Richtig!“ und die Grenzen werden zur Kontrolle ausgegeben. Ich komme nicht richtig zurecht und stehe auf dem Schlauch.

Mein Code sieht bisher so aus, aber ich komme nicht so recht weiter: Auch wollte ich Zahlenräume schaffen, die unterscheiden zwischen "viel zu groß" und "ein bisschen zu groß" - die ich aber nicht umsetzten kann.

#include <stdio.h>
#include <time.h>
#include <stdlib.h>


//Funktion für die zufällige Nummer
//int randomNumber() {
//int r = rand() % 1001 + 1;


int main() {

    srand(time(NULL));

    //int a = randomNumber();
    //int b = randomNumber();

    int a, b;
    do{
        a = rand() % 1000 + 1;
        b = rand() % 1000 + 1;
    } while (a < b);
    int mitte = (a + b) / 2;
    int gerateneZahl;

    //Diese drei Zeilen habe ich nur genutzt, um zu überprüfen, ob die Zahlen stimmen
    printf("%i\n", a);
    printf("%i\n", b);
    printf("%i\n", mitte);

    printf("\nBitte geben Sie eine Zahl ein: ");
        scanf_s("%i", &gerateneZahl);


    while (a >= b) {

        printf("\nBitte geben Sie eine Zahl ein: ");
        scanf_s("%i", &gerateneZahl);

        if (gerateneZahl > mitte) {
            printf("ein bisschen zu groß\n");
        }
        if (gerateneZahl > (mitte)) {
            printf("viel zu gross\n");
        }
        else if (gerateneZahl < mitte) {
            printf("ein bisschen zu klein\n");
        }
        else if (gerateneZahl < (mitte)) {
            printf("viel zu klein\n");
        }
        if (gerateneZahl == mitte) {
            printf("Richtig! Die Grenzen waren %d und %d\n", a, b);
        }
    }

    return 0;

}

das > soll eigentlich ein < bzw > sein. Keine Ahnung wieso das so angezeigt wird.

Kann mir da jemand helfen bitte? Ich habe ein paar Probleme und bräuchte echt Hilfe. Ich wäre nicht hier wenn es nicht ernst wäre.

Danke!

...zur Frage

Visual Studio C++ eingabe und ausgabe eines Buchstaben

include

include

int main (void) { char B; int i;

printf("Geben Sie einen Buchstaben ein:"); scanf_s("%s",&B); printf("Der eingegebene Buchstabe war: %s\n",B); system("Pause"); return 0; }

Bei diesem Programm kann ich zwar einen Buchstaben eingeben,aber es wird mir keiner ausgegeben. Da steht dann der Buchstabe wäre (null). Was mach ich falsch, bei meinen Kommilitonen klappts mit genau dem selben Programm...

...zur Frage

Welche Programmiersprache ist plattformübergreifend und was muss ich sonst noch alles wissen für die eigene App? Welche Programmierumgebung ist zu empfehlen?

Zwei Freunde und ich haben eine super Idee für eine neue App. Leider kann keiner von uns programmieren, da wir aber so überzeugt von unserer Idee sind, sind wir gerne bereit dafür viel zu lernen und viel Zeit zu Investieren. Die App soll mindestens auf Android und IOS laufen.

Was die App können muss:

Man muss sich einloggen können mit seinem spezifischen Benutzerkonto. Es wäre schön wenn ein Radar einbaubar wäre, wie man ihn von der App Lovoo z.B. kennt. Eine Umgebungskarte muss vorhanden sein wo man wenn möglich auch andere Benutzer sehen kann. Und jeder muss ein eigenes Profil erstellen können.

Was wir bis jetzt nicht wissen:

Welche Programmiersprache bietet sich dafür am besten an? Welche Programmierumgebungen stehen dazu zur Auswahl? Wie läuft das mit Servern, mietet man da einfach einen auf dem dann das Programm ab läuft? Kann ich das ganze mit einer Webseite verbinden? Also Account auch aus dem normalen Browser erreichbar? Und habt ihr eventuelle Buchvorschläge um das ganze zu lernen?

Vielen Dank schon mal im voraus!!

...zur Frage

Ist Perl 2016, im Bereich Webentwicklung, noch aktuell - und sollte man lieber PHP oder Perl wählen für einfache 'Backend'-Anwendungen?

Hey, ich überlege gerade ob ich Perl lernen sollte. Weil ich gern meine eigenen 'Backends' schreiben würde. Ich möchte dass man sich auf einer Website einloggen kann und dann in diesem Backend einfach bestimmte Daten wie z.B. die Kosten für verschiedene Produkte oder die Starttermine von Veranstaltungen ändern kann. Ich kenne da einen ziemlich einfachen Weg mit Perl, bei dem quasie für eine art Kalender einfach .dat Dateien geschrieben werden und diese werden dann per .cgi Script in die Website Geladen. Die Informationen die man im Backend verändert, werden in diesen Dateien gespeichert.

Ist dieses Vorhaben schwerer mit PHP oder Perl zu realisieren? Da PHP doch um einiges umfangreicher ist als Perl weiß ich nicht ob ich extra PHP lernen möchte.

Perl ist ja doch schon etwas in die Jahre gekommen, findet es denn 2016 immernoch anwendung bei Websites?

...zur Frage

PQ Formel in C

Kann mir wer sagen, warum ich falsche Ergebnisse bekomme? (Bisher nur ein falsches Ergebnis, x2 ergänze ich dann später)

#include <stdio.h>



int main()

{

  int p,q,x1,x2;

  printf("Bitte P eingeben:\n");

  scanf("%d",&p);

  printf("Bitte Q eingeben:\n");

  scanf("%d",&q);



  x1=(-(p/2))+sqrt((-p/2)*(-p/2)-q);
  printf("Ergebnis 1: %d\n", x1);


  system( "pause" );

}
...zur Frage

Wie lerne ich Programmier-Basics?

Ich würde gerne mal ausprobieren zu programmieren, aber da es so viele verschiedene Sprachen gibt, bin ich etwas überfordert und weiß nicht direkt wo ich anfangen soll, vorallem weil ich zuerst noch die Basics lernen sollte. Wie kann ich das am besten machen? Oder soll ich gleich mit einer Sprache wie z.B Java beginnen? Gibt es dazu gute Youtube Kanäle oder Internet Seiten? Danke schonmal

...zur Frage

Was möchtest Du wissen?