Array < C/C++ < Programmiersprachen < Praxis < Informatik < Vorhilfe
|
Status: |
(Frage) beantwortet | Datum: | 11:23 Mi 21.11.2012 | Autor: | tiger1 |
Aufgabe | Hallo leute ich habe gerade probleme bei C++ ein Array zu erstellen:
Es ist ein Programm zu erstellen, welches zunächst ein Array von maximal 20 Zahlen einliest
(Tastatur oder Datei) und nach der Eingabe zur Kontrolle am Bildschirm in einer Zeile formatiert
ausgibt.
Danach soll jedes Element des Arrays überprüft werden, ob es größer als das nächste Element ist.
Trifft dies zu werden diese beiden Elemente vertauscht.
Dies soll der Reihe nach vom ersten bis zum vorletzten Element durchgeführt werden.
Weiterhin soll die Anzahl der Vertauschungen gezählt werden.
Nach jedem Tausch sollen alle Elemente des Arrays am Bildschirm angezeigt werden inkl. der
Anzahl der bisher durchgeführten Vertauschungen
Beispiel:
Eingelesen: 3 4 2 1 5 3
1. Tausch : 3 2 4 1 5 3
2. Tausch : 3 2 1 4 5 3
3. Tausch : 3 2 1 4 3 5
Mein ANsatz war soweit der:
#include <cstdlib>
#include <iostream>
using namespace std;
int main(int argc, char *argv[])
{
int n;
int zahl[20];
cout<<" Anzahl der einzulesenden Elemente maximal 20 ";
cin>>n;
cout<<" Elemente eingeben ";
for (int i=0;i<n;i++)
cin>>zahl[i];
if( int i= 0; i<n; i++) {
i= n;
}
system("PAUSE");
return EXIT_SUCCESS;
}
Ich programiere im moment mit dev c++ aber ich weiss im moment nicht wie ich das array vertauscht darstellen soll.
Für hilfe wäre ich dankbar |
Ich habe diese Frage in keinem Forum auf anderen Internetseiten gestellt.
|
|
|
|
Hallo!
for (int i=0;i<n;i++)
cin>>zahl[i];
ist zwar korrekt, ich empfehle dir aber dringenst, da geschweifte Klammern einzufügen, etwa so:
for (int i=0;i<n;i++){
cin>>zahl[i];
}
Genauso kannst du das Array auch ausgeben:
for (int i=0;i<n;i++){
cout<<zahl[i]<<" ";
}
cout << endl;
Was nun die eigentliche Aufgabe angeht:
Das Array kannst du wieder und wieder auf diese Weise ausgeben.
zur Vertauschung: Hier bräuchtest du auch eine Schleife, die von 0 bis n-2 (!) geht, und jeweils zahl[i] mit zahl[i+1] vergleicht. Wenn du tauschen mußt, kommt der Wert von zahl[i+1] zunächst in eine temporäre Variable, dann wird zahl[i+1]=zahl[i] gesetzt, und anschließend wird der Wert der temporären Variablen zahl[i] zugewiesen.
|
|
|
|
|
Status: |
(Frage) beantwortet | Datum: | 15:25 Mi 21.11.2012 | Autor: | tiger1 |
Ich hab jetzt folgendes programm.
Aber mir wird immer noch kein array angezeigt.
#include <cstdlib>
#include <iostream>
using namespace std;
int main(int argc, char *argv[])
{
int n;
int zahl[20];
cout<<" Anzahl der einzulesenden Elemente maximal 20 ";
cin>>n;
cout<<" Elemente eingeben ";
for (int i=0;i<n;i++)
cin>>zahl[i];
for (int i=0;i<n;i++){
cout<<zahl[i]<<" ";
}
cout << endl;
system("PAUSE");
return EXIT_SUCCESS;
}
Wo liegt mein Fehler?
|
|
|
|
|
Hallo tiger1,
> Ich hab jetzt folgendes programm.
>
> Aber mir wird immer noch kein array angezeigt.
>
> #include <cstdlib>
> #include <iostream>
>
> using namespace std;
>
> int main(int argc, char *argv[])
> {
> int n;
> int zahl[20];
> cout<<" Anzahl der einzulesenden Elemente maximal 20 ";
> cin>>n;
> cout<<" Elemente eingeben ";
>
> for (int i=0;i<n;i++)
> cin>>zahl;
>
>
>
>
> for (int i=0;i<n;i++){
> cout<<zahl<<" ";
> }
> cout << endl;
>
> system("PAUSE");
> return EXIT_SUCCESS;
>
>
>
> }
>
> Wo liegt mein Fehler?
Starte doch das ausführbare Programm von Konsole aus.
Hier wird bei mir das Array angezeigt.
Gruss
MathePower
|
|
|
|
|
Status: |
(Frage) beantwortet | Datum: | 17:43 Mi 21.11.2012 | Autor: | tiger1 |
Kannst du mir sagen wie ich das Array vertauscht darstellen kann?
Das ist mir noch nicht so klar.
|
|
|
|
|
Hallo tiger1,
> Kannst du mir sagen wie ich das Array vertauscht darstellen
> kann?
> Das ist mir noch nicht so klar.
Meinst Du mit "vertauschter Darstellung" die Ausgabe des Arrays
beginnt mit dem letzten Element?
Falls ja, so ist das einfach zu realisieren.
Dazu ist nur der Schleifenkopt zu ändern.
Gruss
MathePower
|
|
|
|
|
hi!
Nee, es geht um das Vertauschen einzelner Elemente, wie im ersten Beitrag beschrieben. Das Konzept dazu hatte ich allerdings auch schon geliefert.
|
|
|
|
|
Status: |
(Frage) beantwortet | Datum: | 18:59 Mi 21.11.2012 | Autor: | tiger1 |
In der Aufgabenstellung steht ja:
Danach soll jedes Element des Arrays überprüft werden, ob es größer als das nächste Element ist.
Trifft dies zu werden diese beiden Elemente vertauscht.
Aber ich verstehe nicht wie ich das genau machen soll.
Könnt ihr mir das ein wenig genauer erklären?
|
|
|
|
|
Hallo tiger1,
> In der Aufgabenstellung steht ja:
>
> Danach soll jedes Element des Arrays überprüft werden, ob
> es größer als das nächste Element ist.
> Trifft dies zu werden diese beiden Elemente vertauscht.
>
> Aber ich verstehe nicht wie ich das genau machen soll.
>
> Könnt ihr mir das ein wenig genauer erklären?
Im Pseudocode kann das so aussehen:
1: |
| 2: | Ausgabe Array
| 3: | Schleife von j=0 bis n-2
| 4: | Wenn Zahl[j] > Zahl[j+1] dann
| 5: | Tausche Zahl[j] mit Zahl[j+1]
| 6: | Ausgabe "j+1. Tausch"
| 7: | Ausgabe Array
|
Gruss
MathePower
|
|
|
|
|
Status: |
(Frage) beantwortet | Datum: | 19:29 Mi 21.11.2012 | Autor: | tiger1 |
Wenn Zahl[j] > Zahl[j+1] dann
5: Tausche Zahl[j] mit Zahl[j+1]
Das würde ich so machen:
if( j > Zahl[j+1] ) {
j = Zahl[j+1]
cout<< "j+1"<<endl;
Aber wie schreibe ich das genau:
Schleife von j=0 bis n-2
}
|
|
|
|
|
Hallo tiger1,
> Wenn Zahl[j] > Zahl[j+1] dann
> 5: Tausche Zahl[j] mit Zahl[j+1]
>
>
> Das würde ich so machen:
>
> if( j > Zahl[j+1] ) {
> j = Zahl[j+1]
>
> cout<< "j+1"<<endl;
>
>
> Aber wie schreibe ich das genau:
>
> Schleife von j=0 bis n-2
>
> }
>
Der Tausch funktioniert so:
if (Zahl[j] > Zahl[j+1])
{
int hilf=Zahl[j];
Zahl[j]=Zahl[j+1];
Zahl[j+1]=hilf;
}
Gruss
MathePower
|
|
|
|
|
Status: |
(Frage) beantwortet | Datum: | 20:51 Mi 21.11.2012 | Autor: | tiger1 |
> Hallo tiger1,
>
> > Wenn Zahl[j] > Zahl[j+1] dann
> > 5: Tausche Zahl[j] mit Zahl[j+1]
> >
> >
> > Das würde ich so machen:
> >
> > if( j > Zahl[j+1] ) {
> > j = Zahl[j+1]
> >
> > cout<< "j+1"<<endl;
> >
> >
> > Aber wie schreibe ich das genau:
> >
> > Schleife von j=0 bis n-2
> >
> > }
> >
>
>
> Der Tausch funktioniert so:
>
> if (Zahl[j] > Zahl[j+1])
> {
> int hilf=Zahl[j];
> Zahl[j]=Zahl[j+1];
> Zahl[j+1]=hilf;
> }
>
>
> Gruss
> MathePower
int hilf=Zahl[j];
Wieso erstellst du hier ein int hilf ?
Kannst du mir das erklären?
Das Programm sieht bei mir so aus jetzt:
Scheint aber irgendwie nicht auszuführen:
#include <cstdlib>
#include <iostream>
using namespace std;
int main(int argc, char *argv[])
{
int n;
int zahl[20];
cout<<" Anzahl der einzulesenden Elemente maximal 20 ";
cin>>n;
cout<<" Elemente eingeben ";
for (int i=0;i<n;i++)
cin>>zahl[i];
for (int i=0;i<n;i++){
cout<<zahl[i]<<" ";
}
cout << endl;
if (Zahl[j] > Zahl[j+1])
{
int hilf=Zahl[j];
Zahl[j]=Zahl[j+1];
Zahl[j+1]=hilf;
}
system("PAUSE");
return EXIT_SUCCESS;
}
Wo liegt der Fehler?
Oh man bitte hilft mir leute.
|
|
|
|
|
Hallo tiger1,
> > Hallo tiger1,
> >
> > > Wenn Zahl[j] > Zahl[j+1] dann
> > > 5: Tausche Zahl[j] mit Zahl[j+1]
> > >
> > >
> > > Das würde ich so machen:
> > >
> > > if( j > Zahl[j+1] ) {
> > > j = Zahl[j+1]
> > >
> > > cout<< "j+1"<<endl;
> > >
> > >
> > > Aber wie schreibe ich das genau:
> > >
> > > Schleife von j=0 bis n-2
> > >
> > > }
> > >
> >
> >
> > Der Tausch funktioniert so:
> >
> > if (Zahl[j] > Zahl[j+1])
> > {
> > int hilf=Zahl[j];
> > Zahl[j]=Zahl[j+1];
> > Zahl[j+1]=hilf;
> > }
> >
> >
> > Gruss
> > MathePower
>
>
> int hilf=Zahl[j];
>
> Wieso erstellst du hier ein int hilf ?
>
> Kannst du mir das erklären?
>
"hilf" ist eine Hilfsvariable, die das aktuelle Array-Element aufnimmt.
Dieses Array-Element wird mit dem nachfolgenden Array-Element
getauscht.
> Das Programm sieht bei mir so aus jetzt:
>
> Scheint aber irgendwie nicht auszuführen:
>
> #include <cstdlib>
> #include <iostream>
>
> using namespace std;
>
> int main(int argc, char *argv[])
> {
> int n;
> int zahl[20];
> cout<<" Anzahl der einzulesenden Elemente maximal 20 ";
> cin>>n;
> cout<<" Elemente eingeben ";
>
> for (int i=0;i<n;i++)
> cin>>zahl;
>
>
>
>
> for (int i=0;i<n;i++){
> cout<<zahl<<" ";
> }
> cout << endl;
>
> if (Zahl[j] > Zahl[j+1])
> {
> int hilf=Zahl[j];
> Zahl[j]=Zahl[j+1];
> Zahl[j+1]=hilf;
> }
>
>
> system("PAUSE");
> return EXIT_SUCCESS;
>
>
>
> }
>
> Wo liegt der Fehler?
>
> Oh man bitte hilft mir leute.
>
Der Progammstück, das interessiert, ist das nach der Ausgabe des Array:
1: |
| 2: | int tausch=0; // gibt die Anzahl der Tausche an.
| 3: |
| 4: | for (int j=0; j < n-1; j++)
| 5: | {
| 6: | if (zahl[j] > zahl[j+1])
| 7: | {
| 8: | int hilf=zahl[j];
| 9: |
| 10: | zahl[j]=zahl[j+1];
| 11: | zahl[j+1]=hilf;
| 12: | tausch++;
| 13: |
| 14: | cout << tausch << ". Tausch: ";
| 15: |
| 16: | for (int i=0;i<n;i++){
| 17: | cout<<zahl[i]<<" ";
| 18: | }
| 19: | cout << endl;
| 20: | }
|
Gruss
MathePower
|
|
|
|
|
Status: |
(Frage) beantwortet | Datum: | 21:21 Mi 21.11.2012 | Autor: | tiger1 |
Eingabefehler: "{" und "}" müssen immer paarweise auftreten, es wurde aber ein Teil ohne Entsprechung gefunden (siehe rote Markierung)
Eingabefehler: "{" und "}" müssen immer paarweise auftreten, es wurde aber ein Teil ohne Entsprechung gefunden (siehe rote Markierung)
Hallo Mathe Power ich hab das Programm soweit korrigiert aber es gibt mir irgendwie immer noch ein Fehler an der letzten Klammer aus .
#include <cstdlib>
#include <iostream>
using namespace std;
int main(int argc, char *argv[])
{
int n;
int zahl[20];
cout<<" Anzahl der einzulesenden Elemente maximal 20 ";
cin>>n;
cout<<" Elemente eingeben ";
for (int i=0;i<n;i++)
cin>>zahl[i];
for (int i=0;i<n;i++){
cout<<zahl[i]<<" ";
}
cout << endl;
int tausch=0; // gibt die Anzahl der Tausche an.
for (int j=0; j < n-1; j++)
{
if (zahl[j] > zahl[j+1])
{
int hilf=zahl[j];
zahl[j]=zahl[j+1];
zahl[j+1]=hilf;
tausch++;
cout << tausch << ". Tausch: ";
for (int i=0;i<n;i++){
cout<<zahl[i]<<" ";
}
cout << endl;
system("PAUSE");
return EXIT_SUCCESS;
}
Ich habe ja alle Klammern geschlossen oder?
|
|
|
|
|
Status: |
(Frage) beantwortet | Datum: | 21:36 Mi 21.11.2012 | Autor: | tiger1 |
Leute wo liegt den mein Fehler.
Ich verzweifle gerade?
|
|
|
|
|
Hallo tiger1,
> Leute wo liegt den mein Fehler.
>
> Ich verzweifle gerade?
Siehe hier.
Gruss
MathePower
|
|
|
|
|
Eingabefehler: "{" und "}" müssen immer paarweise auftreten, es wurde aber ein Teil ohne Entsprechung gefunden (siehe rote Markierung)
Eingabefehler: "{" und "}" müssen immer paarweise auftreten, es wurde aber ein Teil ohne Entsprechung gefunden (siehe rote Markierung)
Hallo tiger1,
> Eingabefehler: "{" und "}" müssen immer paarweise
> auftreten, es wurde aber ein Teil ohne Entsprechung
> gefunden (siehe rote Markierung)
> Eingabefehler: "{" und "}" müssen immer paarweise
> auftreten, es wurde aber ein Teil ohne Entsprechung
> gefunden (siehe rote Markierung)
>
> Hallo Mathe Power ich hab das Programm soweit korrigiert
> aber es gibt mir irgendwie immer noch ein Fehler an der
> letzten Klammer aus .
>
> #include <cstdlib>
> #include <iostream>
>
> using namespace std;
>
> int main(int argc, char *argv[])
> {
> int n;
> int zahl[20];
> cout<<" Anzahl der einzulesenden Elemente maximal 20 ";
> cin>>n;
> cout<<" Elemente eingeben ";
>
> for (int i=0;i<n;i++)
> cin>>zahl;
>
>
>
>
> for (int i=0;i<n;i++){
> cout<<zahl<<" ";
> }
> cout << endl;
>
> int tausch=0; // gibt die Anzahl der Tausche an.
>
> for (int j=0; j < n-1; j++)
> {
> if (zahl[j] > zahl[j+1])
> {
> int hilf=zahl[j];
>
> zahl[j]=zahl[j+1];
> zahl[j+1]=hilf;
> tausch++;
>
> cout << tausch << ". Tausch: ";
>
> for (int i=0;i<n;i++){
> cout<<zahl<<" ";
> }
> cout << endl;
Hier gehört noch eine schliessende Klammer hin.
>
>
>
>
> system("PAUSE");
> return EXIT_SUCCESS;
>
>
> }
>
>
>
> Ich habe ja alle Klammern geschlossen oder?
Zu der äußeren for-Schleife gehört auch noch eine schliessende Klammer.
Gruss
MathePower
|
|
|
|
|
Status: |
(Frage) beantwortet | Datum: | 21:46 Mi 21.11.2012 | Autor: | tiger1 |
Bin ich damit mit der Aufgabe fertig oder wie?
|
|
|
|
|
Hallo tiger1,
> Bin ich damit mit der Aufgabe fertig oder wie?
>
Laut Aufgabenstellung ist nichts mehr zu machen.
Gruss
MathePower
|
|
|
|
|
Status: |
(Frage) beantwortet | Datum: | 21:59 Mi 21.11.2012 | Autor: | tiger1 |
Eingabefehler: "{" und "}" müssen immer paarweise auftreten, es wurde aber ein Teil ohne Entsprechung gefunden (siehe rote Markierung)
Hallo Mathe Power ich habe nur eine letzte frage ich versuche dieses Programm jetzt mit microsoft visual studio auszuführen aber es geht nicht .
Kannst du mir sagen warum?
#include <cstdlib>
#include <iostream>
using namespace std;
int main(int argc, char *argv[])
{
int n;
int zahl[20];
cout<<" Anzahl der einzulesenden Elemente maximal 20 ";
cin>>n;
cout<<" Elemente eingeben ";
for (int i=0;i<n;i++)
cin>>zahl[i];
for (int i=0;i<n;i++){
cout<<zahl[i]<<" ";
}
cout << endl;
int tausch=0; // gibt die Anzahl der Tausche an.
for (int j=0; j < n-1; j++)
if (zahl[j] > zahl[j+1])
{
int hilf=zahl[j];
zahl[j]=zahl[j+1];
zahl[j+1]=hilf;
tausch++;
cout << tausch << ". Tausch: ";
for (int i=0;i<n;i++){
cout<<zahl[i]<<" ";
cout << endl;
}
}
Weil ich habe bei dieser ide immer probleme und will sie endlich auch benutzn können.
|
|
|
|
|
Eingabefehler: "{" und "}" müssen immer paarweise auftreten, es wurde aber ein Teil ohne Entsprechung gefunden (siehe rote Markierung)
Hallo tiger1,
> Eingabefehler: "{" und "}" müssen immer paarweise
> auftreten, es wurde aber ein Teil ohne Entsprechung
> gefunden (siehe rote Markierung)
>
> Hallo Mathe Power ich habe nur eine letzte frage ich
> versuche dieses Programm jetzt mit microsoft visual studio
> auszuführen aber es geht nicht .
>
> Kannst du mir sagen warum?
>
> #include <cstdlib>
> #include <iostream>
>
> using namespace std;
>
> int main(int argc, char *argv[])
> {
> int n;
> int zahl[20];
> cout<<" Anzahl der einzulesenden Elemente maximal 20 ";
> cin>>n;
> cout<<" Elemente eingeben ";
>
> for (int i=0;i<n;i++)
> cin>>zahl;
>
>
>
>
> for (int i=0;i<n;i++){
> cout<<zahl<<" ";
> }
> cout << endl;
> int tausch=0; // gibt die Anzahl der Tausche an.
>
>
> for (int j=0; j < n-1; j++)
> if (zahl[j] > zahl[j+1])
> {
> int hilf=zahl[j];
>
> zahl[j]=zahl[j+1];
> zahl[j+1]=hilf;
> tausch++;
>
> cout << tausch << ". Tausch: ";
>
> for (int i=0;i<n;i++){
> cout<<zahl<<" ";
>
> cout << endl;
>
> }
>
>
>
>
>
> }
>
>
>
>
>
>
>
> Weil ich habe bei dieser ide immer probleme und will sie
> endlich auch benutzn können.
>
Ich kenne mich leider nicht mit Microsoft Visual Studio aus,
denke aber, daß Du erst ein Projekt anlegen musst.
Gruss
MathePower
|
|
|
|
|
Status: |
(Frage) beantwortet | Datum: | 19:09 Mi 21.11.2012 | Autor: | tiger1 |
Eingabefehler: "{" und "}" müssen immer paarweise auftreten, es wurde aber ein Teil ohne Entsprechung gefunden (siehe rote Markierung)
Könnte ich das so machen?
#include <cstdlib>
#include <iostream>
using namespace std;
int main(int argc, char *argv[])
{
int n;
int zahl[20];
cout<<" Anzahl der einzulesenden Elemente maximal 20 ";
cin>>n;
cout<<" Elemente eingeben ";
for (int i=0;i<n;i++)
cin>>zahl[i];
for (int i=0;i<n;i++){
cout<<zahl[i]<<" ";
}
cout << endl;
if( i< i+1) {
i= i+1
}
system("PAUSE");
return EXIT_SUCCESS;
|
|
|
|
|
Eingabefehler: "{" und "}" müssen immer paarweise auftreten, es wurde aber ein Teil ohne Entsprechung gefunden (siehe rote Markierung)
Hallo tiger1,
> Eingabefehler: "{" und "}" müssen immer paarweise
> auftreten, es wurde aber ein Teil ohne Entsprechung
> gefunden (siehe rote Markierung)
>
> Könnte ich das so machen?
>
> #include <cstdlib>
> #include <iostream>
>
> using namespace std;
>
> int main(int argc, char *argv[])
> {
> int n;
> int zahl[20];
> cout<<" Anzahl der einzulesenden Elemente maximal 20 ";
> cin>>n;
> cout<<" Elemente eingeben ";
>
> for (int i=0;i<n;i++)
> cin>>zahl;
>
>
>
>
> for (int i=0;i<n;i++){
> cout<<zahl<<" ";
> }
> cout << endl;
>
> if( i< i+1) {
>
> i= i+1
>
>
> }
>
> system("PAUSE");
> return EXIT_SUCCESS;
>
>
>
Das erfüllt den zweck nicht.
Gruss
MathePower
|
|
|
|
|
Status: |
(Frage) beantwortet | Datum: | 22:15 Mi 21.11.2012 | Autor: | tiger1 |
Hallo mathepower ich habe noch eine frage wenn ich das program ausführe auf dev c++.
Dann fragt das Programm Anzahl der elemente max 20 usw .
Soll ich da jetzt 20 Zahlen eigeben oder wie um das zu testen ?
Das ist mir nicht so klar?
|
|
|
|
|
Hallo tiger1,
> Hallo mathepower ich habe noch eine frage wenn ich das
> program ausführe auf dev c++.
>
> Dann fragt das Programm Anzahl der elemente max 20 usw .
>
> Soll ich da jetzt 20 Zahlen eigeben oder wie um das zu
> testen ?
>
Zunächst gibst Du die Anzahl der Elemente ein.
Danach geht es an die Eingabe dieser Elemente.
> Das ist mir nicht so klar?
Gruss
MathePower
|
|
|
|
|
Status: |
(Frage) beantwortet | Datum: | 22:24 Mi 21.11.2012 | Autor: | tiger1 |
> Hallo tiger1,
>
> > Hallo mathepower ich habe noch eine frage wenn ich das
> > program ausführe auf dev c++.
> >
> > Dann fragt das Programm Anzahl der elemente max 20 usw .
> >
> > Soll ich da jetzt 20 Zahlen eigeben oder wie um das zu
> > testen ?
> >
>
>
> Zunächst gibst Du die Anzahl der Elemente ein.
>
> Danach geht es an die Eingabe dieser Elemente.
>
>
> > Das ist mir nicht so klar?
>
>
> Gruss
> MathePower
Das problem ist ich hab bei dem programm zuertst 5 eingegeben . Dann enter gedrückt . Und dann 12345 eingegeben und es passiert nichts
Was mache ich falsch?
|
|
|
|
|
Status: |
(Frage) beantwortet | Datum: | 22:28 Mi 21.11.2012 | Autor: | tiger1 |
Ach mathe power jetzt habe ich es verstanden.
Schade aber das sich nieman mit visual studio auskennt.
Danke leute
|
|
|
|
|
Hallo!
Du schmeißt hier was durcheinander.
Du redest von Devc++ und Visualstudio. Das sind aber erstmal auch "nur" Texteditoren, die dich durch ihren mächtigen Funktionsumfang unterstützen, dein Programm zu schreiben. So werden z.B. einige Befehle farblich hervorgehoben, oder es wird auf Knopfdruck ein Compiler aufgerufen, der aus deinen für den Menschen lesbaren Zeilen ein für den Computer verständliches Programm macht.
Genauso könntest du aber erstmal Notepad benutzen, und den Compiler ebenfalls selbst starten. Ich benutze Eclipse, um meine Programme zu schreiben.
Der Code, den du geschrieben hast, hast du in der Programmiersprache C geschrieben, und die bisherigen Probleme betrafen eben C, und nicht dein zum Programmieren benutztes Programm.
|
|
|
|
|
Hallo tiger1,
> > Hallo tiger1,
> >
> > > Hallo mathepower ich habe noch eine frage wenn ich das
> > > program ausführe auf dev c++.
> > >
> > > Dann fragt das Programm Anzahl der elemente max 20 usw .
> > >
> > > Soll ich da jetzt 20 Zahlen eigeben oder wie um das zu
> > > testen ?
> > >
> >
> >
> > Zunächst gibst Du die Anzahl der Elemente ein.
> >
> > Danach geht es an die Eingabe dieser Elemente.
> >
> >
> > > Das ist mir nicht so klar?
> >
> >
> > Gruss
> > MathePower
>
> Das problem ist ich hab bei dem programm zuertst 5
> eingegeben . Dann enter gedrückt . Und dann 12345
> eingegeben und es passiert nichts
> Was mache ich falsch?
>
Du musst noch 4 weitere Elemente eingeben.
Gruss
MathePower
|
|
|
|
|
Status: |
(Frage) beantwortet | Datum: | 14:57 Di 27.11.2012 | Autor: | tiger1 |
Hallo leute ich muss zu der Aufgabe auch einen testplan machen mit Werten .
Kann mir jemand sagen wie ich das machen kann?
|
|
|
|
|
Hallo!
Da ist mir nicht ganz klar, was du genau meinst, aber vermutlich geht es darum, eine Tabelle mit unsortierten Zahlen sowie eine weitere Tabelle, die die Zahlen in der erwarteten Reihenfolge enthält, anzulegen. Dann jagt man das Programm über die erste Tabelle und vergleicht das Ergebnis mit der zweiten Tabelle.
Die Frage ist, soll das nur auf dem Papier stehen, oder soll das auch in irgendeiner Art im Code implementiert werden? Da müßtest du etwas genauer werden.
|
|
|
|
|
Status: |
(Frage) für Interessierte | Datum: | 15:57 Di 27.11.2012 | Autor: | tiger1 |
Nein es soll nur einfach so auf papier stehen und ich wollte fragen ob du mir helfen kannst?
Wie man das macht?
|
|
|
|
|
Status: |
(Frage) für Interessierte | Datum: | 23:45 Di 27.11.2012 | Autor: | tiger1 |
Kann mir jemand sagen wie ich das testplan machen soll?
|
|
|
|
|
Status: |
(Frage) beantwortet | Datum: | 00:07 Do 29.11.2012 | Autor: | tiger1 |
Eingabefehler: "{" und "}" müssen immer paarweise auftreten, es wurde aber ein Teil ohne Entsprechung gefunden (siehe rote Markierung)
Eingabefehler: "{" und "}" müssen immer paarweise auftreten, es wurde aber ein Teil ohne Entsprechung gefunden (siehe rote Markierung)
#include <cstdlib>
#include <iostream>
using namespace std;
int main(int argc, char *argv[])
{
int n;
int zahl[20];
cout<<" Anzahl der einzulesenden Elemente maximal 20 ";
cin>>n;
cout<<" Elemente eingeben ";
for (int i=0;i<n;i++)
{
cin>>zahl;
}
for (int i=0;i<n;i++){
cout<<zahl<<" ";
}
cout << endl;
int tausch=0; // gibt die Anzahl der Tausche an.
for (int j=0; j < n-1; j++)
{
if (zahl[j] > zahl[j+1])
{
int hilf=zahl[j];
zahl[j]=zahl[j+1];
zahl[j+1]=hilf;
tausch++;
cout << tausch << ". Tausch: ";
for (int i=0;i<n;i++){
cout<<zahl<<" ";
}
cout << endl;
}
Aber es scheint immer noch nicht die ZAhlen vertauscht bei visual studio darzustellen .
Ist was am Programm falsch?
|
|
|
|
|
Eingabefehler: "{" und "}" müssen immer paarweise auftreten, es wurde aber ein Teil ohne Entsprechung gefunden (siehe rote Markierung)
Hallo!
Wie bereits gesagt, das hat mit VisualStudio nix zu tun, du könntest das ganze auch mit Notepad programmieren, ist nur nicht so komfortabel.
Dein Problem sind diese Zeilen:
> for (int i=0;i<n;i++){
> cout<<zahl<<" "; }
> cout << endl;
> }
Du gibst nur zahl aus, nicht zahl[i]. zahl ist die Speicheradresse, aber der alle Elemente des Arrays im Speicher hintereinander liegen. zahl ist daher eine kryptische Zahl, die auch noch bei jedem Programmaufruf anders sein kann.
|
|
|
|
|
Status: |
(Frage) beantwortet | Datum: | 15:13 Do 29.11.2012 | Autor: | tiger1 |
Ich hab jetzt dieses Programm stehen aber es zeigt mir immer noch nicht die Zahlen vertauscht an:
#include <cstdlib>
#include <iostream>
using namespace std;
int main(int argc, char *argv[])
{
int n;
int zahl[20];
cout<<" Anzahl der einzulesenden Elemente maximal 20 ";
cin>>n;
cout<<" Elemente eingeben ";
for (int i=0;i<n;i++)
{
cin>> zahl[i];
}
for (int i=0;i<n;i++){
cout<<zahl[i]<<" ";
}
cout << endl;
int tausch=0; // gibt die Anzahl der Tausche an.
for (int j=0; j < n-1; j++)
{
if (zahl[j] > zahl[j+1])
{
int hilf=zahl[j];
zahl[j]=zahl[j+1];
zahl[j+1]=hilf;
tausch++;
cout << tausch << ". Tausch: ";
for (int i=0;i<n;i++){
cout<<zahl[i]<<" ";
}
cout << endl;
}
}
}
Ist mein Programm falsch oder wie?
|
|
|
|
|
Hallo tiger1,
> Ich hab jetzt dieses Programm stehen aber es zeigt mir
> immer noch nicht die Zahlen vertauscht an:
>
> #include <cstdlib>
> #include <iostream>
>
> using namespace std;
>
> int main(int argc, char *argv[])
> {
> int n;
> int zahl[20];
> cout<<" Anzahl der einzulesenden Elemente maximal 20 ";
> cin>>n;
> cout<<" Elemente eingeben ";
>
> for (int i=0;i<n;i++)
> {
> cin>> zahl;
>
> }
>
>
>
>
> for (int i=0;i<n;i++){
> cout<<zahl<<" ";
> }
> cout << endl;
>
> int tausch=0; // gibt die Anzahl der Tausche an.
>
> for (int j=0; j < n-1; j++)
> {
> if (zahl[j] > zahl[j+1])
> {
> int hilf=zahl[j];
>
> zahl[j]=zahl[j+1];
> zahl[j+1]=hilf;
> tausch++;
>
> cout << tausch << ". Tausch: ";
>
> for (int i=0;i<n;i++){
> cout<<zahl<<" ";
> }
> cout << endl;
> }
> }
> }
>
>
> Ist mein Programm falsch oder wie?
Nein, das Programm ist richtig.
Gruss
MathePower
|
|
|
|
|
Status: |
(Frage) beantwortet | Datum: | 16:44 Do 29.11.2012 | Autor: | tiger1 |
Aber warum vertausch das Programm dann die Zahlen nicht ?
|
|
|
|
|
Hallo tiger1,
> Aber warum vertausch das Programm dann die Zahlen nicht ?
Bei Eingabe der 6 Zahlen: 6,5,1,3,7,4
erscheint folgende Ausgabe auf Konsole:
6 5 1 3 7 4
1. Tausch: 5 6 1 3 7 4
2. Tausch: 5 1 6 3 7 4
3. Tausch: 5 1 3 6 7 4
4. Tausch: 5 1 3 6 4 7
Gruss
MathePower
|
|
|
|
|
Status: |
(Frage) beantwortet | Datum: | 17:25 Do 29.11.2012 | Autor: | tiger1 |
Die Meldung 1. Tausch usw wird bei mir gar nicht angezeigt.
|
|
|
|
|
Hallo tiger1,
> Die Meldung 1. Tausch usw wird bei mir gar nicht angezeigt.
Dann hast Du wohl die Zahlen geordnet eingegeben.
Gruss
MathePower
|
|
|
|
|
aber compiliert hast du das Programm?
|
|
|
|
|
Status: |
(Frage) beantwortet | Datum: | 01:12 Sa 01.12.2012 | Autor: | tiger1 |
Hey leute danke das programm funktioniert jetzt.
Könnt ihr mir nicht sagen was ich in dem programm einbauen könnte , damit das programm überpruft ob der nutzer maximal
20 Werte eingibt.
Könnt ihr mir helfen bitte.
|
|
|
|
|
Status: |
(Frage) beantwortet | Datum: | 18:46 Sa 01.12.2012 | Autor: | tiger1 |
Hat jemand eine Ahnung wie ich das machen könnte.
|
|
|
|
|
Hallo tiger1,
> Hat jemand eine Ahnung wie ich das machen könnte.
Siehe dazu hier.
Gruss
MathePower
|
|
|
|
|
Hallo tiger1,
> Hey leute danke das programm funktioniert jetzt.
>
> Könnt ihr mir nicht sagen was ich in dem programm einbauen
> könnte , damit das programm überpruft ob der nutzer
> maximal
> 20 Werte eingibt.
>
Überprüfe in einer Schleife, ob der Benutzer
eine Zahl kleiner gleich 20 eingeben hat.
> Könnt ihr mir helfen bitte.
Gruss
MathePower
|
|
|
|
|
Status: |
(Frage) beantwortet | Datum: | 11:44 So 02.12.2012 | Autor: | tiger1 |
> Hallo tiger1,
>
> > Hey leute danke das programm funktioniert jetzt.
> >
> > Könnt ihr mir nicht sagen was ich in dem programm einbauen
> > könnte , damit das programm überpruft ob der nutzer
> > maximal
> > 20 Werte eingibt.
> >
>
>
> Überprüfe in einer Schleife, ob der Benutzer
> eine Zahl kleiner gleich 20 eingeben hat.
>
>
> > Könnt ihr mir helfen bitte.
>
>
> Gruss
> MathePower
Kann man das so machen?
for( int i = 0; i<20; i++;) {
return zahl[i];
}
|
|
|
|
|
Hallo tiger1,
> > Hallo tiger1,
> >
> > > Hey leute danke das programm funktioniert jetzt.
> > >
> > > Könnt ihr mir nicht sagen was ich in dem programm einbauen
> > > könnte , damit das programm überpruft ob der nutzer
> > > maximal
> > > 20 Werte eingibt.
> > >
> >
> >
> > Überprüfe in einer Schleife, ob der Benutzer
> > eine Zahl kleiner gleich 20 eingeben hat.
> >
> >
> > > Könnt ihr mir helfen bitte.
> >
> >
> > Gruss
> > MathePower
>
>
> Kann man das so machen?
>
> for( int i = 0; i<20; i++;) {
>
> return zahl;
>
>
> }
>
Nein.
Das kann man z.B. so machen:
1: |
| 2: | do
| 3: | {
| 4: | // Eingabe des Benutzers wieviel Werte einzulesen sind
| 5: | ...
| 6: | } while ( n < 1 || n > 20);
|
Gruss
MathePower
|
|
|
|
|
Status: |
(Frage) beantwortet | Datum: | 22:57 So 02.12.2012 | Autor: | tiger1 |
Wäre das so richtig?
#include <cstdlib>
#include <iostream>
using namespace std;
int main(int argc, char *argv[])
{
int n;
int zahl[20];
do
{
cout<< "Eingabe maximal 20 Zahlen"<<endl;
...
} while ( n < 1 || n > 20);
for (int i=0;i<n;i++)
{
cin>> zahl[i];
}
for (int i=0;i<n;i++){
cout<<zahl[i]<<" ";
}
cout << endl;
int tausch=0; // gibt die Anzahl der Tausche an.
for (int j=0; j < n-1; j++)
{
if (zahl[j] > zahl[j+1])
{
int hilf=zahl[j];
zahl[j]=zahl[j+1];
zahl[j+1]=hilf;
tausch++;
cout << tausch << ". Tausch: ";
for (int i=0;i<n;i++){
cout<<zahl[i]<<" ";
}
cout << endl;
}
}
}
|
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 09:48 Mo 03.12.2012 | Autor: | tiger1 |
Kann mir jemand helfen?
|
|
|
|
|
Hallo tiger1,
> Wäre das so richtig?
>
> #include <cstdlib>
> #include <iostream>
>
> using namespace std;
>
> int main(int argc, char *argv[])
> {
> int n;
> int zahl[20];
>
> do
> {
> cout<< "Eingabe maximal 20 Zahlen"<<endl;
> ...
Hier fehlt noch das "cin >> n;"
> } while ( n < 1 || n > 20);
> for (int i=0;i<n;i++)
> {
> cin>> zahl;
>
> }
>
>
>
>
> for (int i=0;i<n;i++){
> cout<<zahl<<" ";
> }
> cout << endl;
>
> int tausch=0; // gibt die Anzahl der Tausche an.
>
> for (int j=0; j < n-1; j++)
> {
> if (zahl[j] > zahl[j+1])
> {
> int hilf=zahl[j];
>
> zahl[j]=zahl[j+1];
> zahl[j+1]=hilf;
> tausch++;
>
> cout << tausch << ". Tausch: ";
>
> for (int i=0;i<n;i++){
> cout<<zahl<<" ";
> }
> cout << endl;
> }
> }
> }
>
>
Gruss
MathePower
|
|
|
|
|
Status: |
(Frage) beantwortet | Datum: | 16:04 Mo 03.12.2012 | Autor: | tiger1 |
> Hallo tiger1,
>
> > Wäre das so richtig?
> >
> > #include <cstdlib>
> > #include <iostream>
> >
> > using namespace std;
> >
> > int main(int argc, char *argv[])
> > {
> > int n;
> > int zahl[20];
> >
> > do
> > {
> > cout<< "Eingabe maximal 20 Zahlen"<<endl;
> > ...
>
>
> cin >> " n ";
>
>
> > } while ( n < 1 || n > 20);
> > for (int i=0;i<n;i++)
> > {
> > cin>> zahl;
> >
> > }
> >
> >
> >
> >
> > for (int i=0;i<n;i++){
> > cout<<zahl<<" ";
> > }
> > cout << endl;
> >
> > int tausch=0; // gibt die Anzahl der Tausche an.
> >
> > for (int j=0; j < n-1; j++)
> > {
> > if (zahl[j] > zahl[j+1])
> > {
> > int hilf=zahl[j];
> >
> > zahl[j]=zahl[j+1];
> > zahl[j+1]=hilf;
> > tausch++;
> >
> > cout << tausch << ". Tausch: ";
> >
> > for (int i=0;i<n;i++){
> > cout<<zahl<<" ";
> > }
> > cout << endl;
> > }
> > }
> > }
> >
> >
>
>
> Gruss
> MathePower
Wäre das Programm so in Ordnung?
|
|
|
|
|
Hallo tiger1,
> > Hallo tiger1,
> >
> > > Wäre das so richtig?
> > >
> > > #include <cstdlib>
> > > #include <iostream>
> > >
> > > using namespace std;
> > >
> > > int main(int argc, char *argv[])
> > > {
> > > int n;
> > > int zahl[20];
> > >
> > > do
> > > {
> > > cout<< "Eingabe maximal 20 Zahlen"<<endl;
> > > ...
> >
> >
> > cin >> " n ";
Hier muss doch nur stehen: cin >> n;
> >
> >
> > > } while ( n < 1 || n > 20);
> > > for (int i=0;i<n;i++)
> > > {
> > > cin>> zahl;
> > >
> > > }
> > >
> > >
> > >
> > >
> > > for (int i=0;i<n;i++){
> > > cout<<zahl<<" ";
> > > }
> > > cout << endl;
> > >
> > > int tausch=0; // gibt die Anzahl der Tausche an.
> > >
> > > for (int j=0; j < n-1; j++)
> > > {
> > > if (zahl[j] > zahl[j+1])
> > > {
> > > int hilf=zahl[j];
> > >
> > > zahl[j]=zahl[j+1];
> > > zahl[j+1]=hilf;
> > > tausch++;
> > >
> > > cout << tausch << ". Tausch: ";
> > >
> > > for (int i=0;i<n;i++){
> > > cout<<zahl<<" ";
> > > }
> > > cout << endl;
> > > }
> > > }
> > > }
> > >
> > >
> >
> >
> > Gruss
> > MathePower
>
> Wäre das Programm so in Ordnung?
>
Gruss
MathePower
|
|
|
|
|
Status: |
(Frage) beantwortet | Datum: | 16:17 Mo 03.12.2012 | Autor: | tiger1 |
> Hallo tiger1,
>
> > > Hallo tiger1,
> > >
> > > > Wäre das so richtig?
> > > >
> > > > #include <cstdlib>
> > > > #include <iostream>
> > > >
> > > > using namespace std;
> > > >
> > > > int main(int argc, char *argv[])
> > > > {
> > > > int n;
> > > > int zahl[20];
> > > >
> > > > do
> > > > {
> > > > cout<< "Eingabe maximal 20 Zahlen"<<endl;
> > > > ...
> > >
> > >
> > >
>
>
> cin >> n;
>
>
> > >
> > >
> > > > } while ( n < 1 || n > 20);
> > > > for (int i=0;i<n;i++)
> > > > {
> > > > cin>> zahl;
> > > >
> > > > }
> > > >
> > > >
> > > >
> > > >
> > > > for (int i=0;i<n;i++){
> > > > cout<<zahl<<" ";
> > > > }
> > > > cout << endl;
> > > >
> > > > int tausch=0; // gibt die Anzahl der Tausche an.
> > > >
> > > > for (int j=0; j < n-1; j++)
> > > > {
> > > > if (zahl[j] > zahl[j+1])
> > > > {
> > > > int hilf=zahl[j];
> > > >
> > > > zahl[j]=zahl[j+1];
> > > > zahl[j+1]=hilf;
> > > > tausch++;
> > > >
> > > > cout << tausch << ". Tausch: ";
> > > >
> > > > for (int i=0;i<n;i++){
> > > > cout<<zahl<<" ";
> > > > }
> > > > cout << endl;
> > > > }
> > > > }
> > > > }
> > > >
> > > >
> > >
> > >
> > > Gruss
> > > MathePower
> >
> > Wäre das Programm so in Ordnung?
> >
>
>
> Gruss
> MathePower
Jetzt müsste es stimmen oder?
|
|
|
|
|
Hallo tiger1,
> > Hallo tiger1,
> >
> > > > Hallo tiger1,
> > > >
> > > > > Wäre das so richtig?
> > > > >
> > > > > #include <cstdlib>
> > > > > #include <iostream>
> > > > >
> > > > > using namespace std;
> > > > >
> > > > > int main(int argc, char *argv[])
> > > > > {
> > > > > int n;
> > > > > int zahl[20];
> > > > >
> > > > > do
> > > > > {
> > > > > cout<< "Eingabe maximal 20 Zahlen"<<endl;
> > > > > ...
> > > >
> > > >
> > > >
> >
> >
> > cin >> n;
> >
> >
> > > >
> > > >
> > > > > } while ( n < 1 || n > 20);
> > > > > for (int i=0;i<n;i++)
> > > > > {
> > > > > cin>> zahl;
> > > > >
> > > > > }
> > > > >
> > > > >
> > > > >
> > > > >
> > > > > for (int i=0;i<n;i++){
> > > > > cout<<zahl<<" ";
> > > > > }
> > > > > cout << endl;
> > > > >
> > > > > int tausch=0; // gibt die Anzahl der Tausche
> an.
> > > > >
> > > > > for (int j=0; j < n-1; j++)
> > > > > {
> > > > > if (zahl[j] > zahl[j+1])
> > > > > {
> > > > > int hilf=zahl[j];
> > > > >
> > > > > zahl[j]=zahl[j+1];
> > > > > zahl[j+1]=hilf;
> > > > > tausch++;
> > > > >
> > > > > cout << tausch << ". Tausch: ";
> > > > >
> > > > > for (int i=0;i<n;i++){
> > > > > cout<<zahl<<" ";
> > > > > }
> > > > > cout << endl;
> > > > > }
> > > > > }
> > > > > }
> > > > >
> > > > >
> > > >
> > > >
> > > > Gruss
> > > > MathePower
> > >
> > > Wäre das Programm so in Ordnung?
> > >
> >
> >
> > Gruss
> > MathePower
>
> Jetzt müsste es stimmen oder?
>
Ja, jetzt stimmt es.
Gruss
MathePower
|
|
|
|