Forum
Tipps
News
Menu-Icon

Die boolean muss nicht drin sein, es kann dir nur das leben massiv einfacher machen.
Nachdem du korrekte abbruchbedingungen gefunden hast, kannste dir die getrost in die haare schmieren, nur wenn du die gesamte schleife durchlaufen lässt reicht einmal b = true; oder b=false; und schon kannste dich am ende der schleife daran orientieren.

Es gibt immer "viele" Wege die nach Rom führen, es gibt viele richtige Lösungen, ich bin bei dir ja dazu übergegangen dir ausschließlich n Tip hinzuwerfen und du greifst das auf und arbeitest damit - da kann was grundsätzlich anderes rauskommen als das was ich im kopf hatte, was aber letztendlich zum gleichen ergebnis führt ;)

so long mal. 

Hat dir diese Antwort geholfen?

Danke ButtonHilfreiche Antwort Button

Mensch iwie klappt nichts, immer wenn ich bestimmte programme starte geht nichts nach Plan:

Hier 1. ein Praogramm welches den kleinsten gemeinsammen Teiler bestimmen soll wo liegt der fehler (ich sitze schon ne Zeit dran  :'( ) :

#include <iostream>
using namespace std;

int main()
{
  int a, b;
  cin >> a;
  cin >> b;
  bool wert;
  for(int i = 2; i <= a || i <= b; i++)//ja sollte solange ausführen bis if passt.
  {
    wert = true;
    if(a % i == 0 && b % i == 0) //ehm erst wenn es kein Rest gibt sollte i ausgegeben werden ... kann man ja ablesen
    {
      cout << i << endl;
      break;
    }
    if(a % i != 0 && b % i != 0) //man glaubt hier sitzt der Fehler aber nein, die schleife geht ja weiter bis i den wert von a oder b erreicht hat.
    {
      wert = false;
    }
   
    if(wert == false)
    {
      cout << "es gibt keinen kgT " << endl;
      break;
    }
  }
}

2.Ein Programm, welches 4 Werte nach größe ordnen muss (ok ich weiß man sollte es mit max min machen, aber ich will es so schaffen) :

#include <iostream>
using namespace std;

int main()
{
  int i[3];
  cin >> i[0];
  int b = i[0];
  cin >> i[1];
  int c = i[1];
  cin >> i[2];
  int d = i[2];
  cin >> i[3];
  int e = i[3];
  while (i[0] >= 0 && i[1] >= 0 && i[2] >= 0 && i[3] >= 0 )
  {
    --i[0];
    --i[1];
    --i[2];
    --i[3];
    if(i[0] == 0 || i[1] == 0 || i[2] == 0 || i[3] == 0)//der Sinn besteht dadrin die werte (normale) solange zu subtrahieren, bis sie 0 ergeben und dann den alten wert wiederzugeben
    {
      if(i[0] = 0)
      {
        cout << b << endl;
      }
      if(i[1] = 0)
      {
        cout << c << endl;
      }
      if(i[2] = 0)
      {
        cout << d << endl;
      }
      if(i[3] = 0)
      {
      cout << e << endl;
      }
    }
  }
}


Hoffe ihr könnt mir helfen.  :-\ 

« Letzte Änderung: 01.04.10, 12:26:07 von gordasch »

« index.html komplizert oder doch nicht?kleines Problem in C »
 

Schnelle Hilfe: Hier nach ähnlichen Fragen und passenden Tipps suchen!

Fremdwörter? Erklärungen im Lexikon!
CD ROM
Die Abkürzung CD Rom steht für Compact Disk - Read Only Memory und ist ein physikalischer permanenter Speicher für digitale Daten. Eine Weiterentwicklung d...

EEPROM
EEPROM, die Abkürzung für "Electrically Erasable Programmable Read-Only Memory", bezeichnet eine Art von nichtflüchtigem Speicher, der für zahlreiche ...

ROM
Die ROM - Read Only Memory - Chips waren in den ersten Homecomputern Commodore C64 und Commodore Amiga Speicherchips, die das Betriebssystem enthielten. In das Deutsche l...