C (Programmiersprache) – die besten Beiträge

C++: Kann ich diesen Code irgendwie noch vereinfachen?

Guten Abend,

ich schreibe gerade in C++ an einem kleinen Kniffelspiel. Im Moment bin ich soweit, dass ich mir fünf zufällige Zahlen (Würfel) über die rand()-Funktion erstelle, diese dann in einem Vektor speichere und anschließend über die Funktion auswertung() den höchsten Pasch zurückgebe. Jedoch ist der Code nicht gerade sehr kompakt. Hat jemand Vorschläge für Optimierungen?

Vielen Dank im Voraus!

#include <iostream>
#include <ctime>
#include <vector>
#include <random>

using namespace std;

vector<int> würfe()
{
  vector<int> list; // Ermittelt über die aktuelle Systemzeit 5 Zufallszahlen und übergibt sie dem Vektor list
  srand(time(0));

  for (int i = 0; i < 5; i++) {
    list.push_back(1 + rand() % 6);
    cout << list[i];
  }

  cout << endl;
  return list;
}

int auswertung(vector<int> ergebnis)
{
  int pasch = 0;

  // Verschachtelte for-Schleife iteriert durch Vektor und vergleicht alle Elemente miteinander
  for (vector<int>::iterator it = ergebnis.begin(); it != ergebnis.end(); ++it) {
    for (vector<int>::iterator it1 = ergebnis.begin(); it1 != ergebnis.end(); ++it1) {
      // Nur wenn die Werte gleich sind (Pasch) und nicht auf dasselbe Element zeigen, geht es weiter
      if (*it1 == *it && it != it1) {
        // Nur wenn der gefundene Pasch höher als der Höchste bereits gefundene ist, wird er ausgewertet
        if (*it > pasch) {
          switch (*it) {
            case 1: pasch = 1;
              break;
            case 2:
              pasch = 2;
              break;
            case 3: pasch = 3;
              break;
            case 4: pasch = 4;
              break;
            case 5: pasch = 5;
              break;
            case 6: pasch = 6;
              break;
          }
        }
      }
    }
  }

  return pasch;
}

int main()
{
  int pasch;
  vector<int> random = würfe();
  pasch = auswertung(random);

  cout << "Pasch: " << pasch << endl;
}
Computer, Software, Technik, programmieren, Cplusplus, CC, Code, CPP, Informatik, Softwareentwicklung, Technologie, C (Programmiersprache)

VS-Code findet Datei zum compilieren im Pfad nicht obwohl der Pfad der im Dateimanager kopierte Pfad zur Datei ist?

Hi, ich lern gerade Programmieren in VS-Code und habe mir als erste Sprache C ausgesucht. Ich versuche jetzt seit gut zwei Tagen, mein erstes kleines miniprogramm was schon automatisch da steht, zum laufen zu bringen, allerdings klappt da etwas nicht, vscode findet nähmlich die datei im angegeben Pfad nicht und spuckt mir immer wieder diese Fehlermeldung im Ausgabe Bereich aus (Bild1) wenn ich es versuche mit code runner zu starten

[Running] cd "c:\Users\LaughBoy\programmieren mit c\" && gcc zweiter_versuch.c -o zweiter_versuch && "c:\Users\Jojo\programmieren mit c\"zweiter_versuch

gcc: error: CreateProcess: No such file or directory

vorher hab ich schon noch den complier MinGW runtergeladen, weil vorher der complier komplett gefehlt hat, damit habe ich dann versucht die datei zu kompilieren und zwar im Terminalbereich mit powershell, da bekomm ich aber immer diese Fehlermeldung:

PS C:\Users\Jojo\programmieren mit c> gcc -o erster_code "C:\Users\Jojo\programmieren mit c\erster_code"  

gcc.exe: error: C:\Users\Jojo\programmieren mit c\erster_code: No such file or directory

gcc.exe: fatal error: no input files

compilation terminated.

[Done] exited with code=1 in 0.074 seconds

ich bin mittlerweile komplett verwirrt und freue mich über Hilfe ich probier auch gerne was anderes von ganz vorne aus falls es an MinGW liegt, hauptsache ich kann endlich Anfangen mit C zu programmieren. Danke im vorraus.

Lg. LaughBoy

Bild zum Beitrag
compiler, Code, Programmiersprache, C (Programmiersprache), Visual Studio Code

Meistgelesene Beiträge zum Thema C (Programmiersprache)