Array 2 < C/C++ < Programmiersprachen < Praxis < Informatik < Vorhilfe
|
Status: |
(Frage) beantwortet | Datum: | 17:09 Mo 03.12.2012 | Autor: | tiger1 |
Aufgabe | HAllo alle zusammen ich habe gerade ein Problem bei einer Aufgabe:
Es ist ein Programm zu erstellen, in welchem der Anwender aus einer Anzahl möglicher Aufgaben
mit einem Array eine auswählen kann. Die maximale Anzahl der Elemente des Arrays sei 10.
Die Aufgaben sollen wiederholt angeboten werden bis zum Abbruch durch den Anwender. Zu
Beginn ist dabei die Anzahl der tatsächlich zu verwendenden Arrayelemente einzulesen.
Folgende Aktionen sollen zur Auswahl stehen und mittels switch realisiert werden:
- Aufgabe 1: Das Array mit der vorgegebenen Zahl der Elemente soll (neu) eingelesen werden.
- Aufgabe 2: Der Tauschalgorithmus ist durchzuführen.
- Aufgabe 3: Das Array soll gespiegelt werden (Reihenfolge umkehren).
- Aufgabe 4: Das Array soll am Bildschirm angezeigt werden.
- Aufgabe 5: Das Programm beenden.
Das Programm sieht so aus im Moment:
#include <iostream>
#include <cstdlib>
using namespace std;
int main() {
int n;
int zahl[10];
cout<<" Anzahl der einzulesenden Elemente/maximal 10 ";
cin>>n;
cout<<" Elemente eingeben ";
for (int i=0;i<n;i++)
cin>>zahl[i];
int Zahl[10] ={2, 4, 6, 8 , 10 , 12 , 14, 16 ,18 ,20}
cout<< " (1)Das Array mit der vorgegebenen Zahl der Elemente soll (neu) eingelesen werden.";
cout<< " (2)Der Tauschalgorithmus ist durchzuführen";
cout<< " (3)Das Array soll gespiegelt werden (Reihenfolge umkehren).";
cout<< " (4)Das Array soll am Bildschirm angezeigt werden";
cout<< " (5)Das Programm beenden";
}
Ich weiss nicht ob ich die array länge richtig erstellt habe , aber ich poste es mal.
Bitte hilft mir. |
Ich habe diese Frage in keinem Forum auf anderen Internetseiten gestellt.
|
|
|
|
Status: |
(Frage) beantwortet | Datum: | 17:19 Mo 03.12.2012 | Autor: | tiger1 |
Hab ich das Array richtig erstellt?
|
|
|
|
|
Hallo tiger1,
> Hab ich das Array richtig erstellt?
Siehe dazu hier.
Gruss
MathePower
|
|
|
|
|
Hallo tiger1,
> HAllo alle zusammen ich habe gerade ein Problem bei einer
> Aufgabe:
>
> Es ist ein Programm zu erstellen, in welchem der Anwender
> aus einer Anzahl möglicher Aufgaben
> mit einem Array eine auswählen kann. Die maximale Anzahl
> der Elemente des Arrays sei 10.
> Die Aufgaben sollen wiederholt angeboten werden bis zum
> Abbruch durch den Anwender. Zu
> Beginn ist dabei die Anzahl der tatsächlich zu
> verwendenden Arrayelemente einzulesen.
> Folgende Aktionen sollen zur Auswahl stehen und mittels
> switch realisiert werden:
> - Aufgabe 1: Das Array mit der vorgegebenen Zahl der
> Elemente soll (neu) eingelesen werden.
> - Aufgabe 2: Der Tauschalgorithmus ist durchzuführen.
> - Aufgabe 3: Das Array soll gespiegelt werden (Reihenfolge
> umkehren).
> - Aufgabe 4: Das Array soll am Bildschirm angezeigt werden.
>
> - Aufgabe 5: Das Programm beenden.
>
> Das Programm sieht so aus im Moment:
>
> #include <iostream>
> #include <cstdlib>
> using namespace std;
>
> int main() {
>
> int n;
> int zahl[10];
> cout<<" Anzahl der einzulesenden Elemente/maximal 10 ";
> cin>>n;
> cout<<" Elemente eingeben ";
> for (int i=0;i<n;i++)
> cin>>zahl;
>
Hier sollte doch nur die Anzahl der tatsächlich
verwenden Arrayelemente eingelesen werden.
> int Zahl[10] ={2, 4, 6, 8 , 10 , 12 , 14, 16 ,18 ,20}
>
> cout<< " (1)Das Array mit der vorgegebenen Zahl der
> Elemente soll (neu) eingelesen werden.";
> cout<< " (2)Der Tauschalgorithmus ist durchzuführen";
> cout<< " (3)Das Array soll gespiegelt werden (Reihenfolge
> umkehren).";
> cout<< " (4)Das Array soll am Bildschirm angezeigt werden";
> cout<< " (5)Das Programm beenden";
>
>
> }
>
> Ich weiss nicht ob ich die array länge richtig erstellt
> habe , aber ich poste es mal.
>
>
> Bitte hilft mir.
> Ich habe diese Frage in keinem Forum auf anderen
> Internetseiten gestellt.
Gruss
MathePower
|
|
|
|
|
Status: |
(Frage) beantwortet | Datum: | 17:58 Mo 03.12.2012 | Autor: | tiger1 |
Hier sollte doch nur die Anzahl der tatsächlich
verwenden Arrayelemente eingelesen werden.
Wie mache ich das?
|
|
|
|
|
Hallo tiger1,
> Hier sollte doch nur die Anzahl der tatsächlich
> verwenden Arrayelemente eingelesen werden.
>
> Wie mache ich das?
Das hast Du doch schon in Deinem Programm gemacht.
Gruss
MathePower
|
|
|
|
|
Status: |
(Frage) beantwortet | Datum: | 18:22 Mo 03.12.2012 | Autor: | tiger1 |
Ah ok da hatte ich dich ein wenig missverstanden.
Kannst du mir sagen wie ich mein Array nun neu einlesen kann?
Ich hab da im moment ganz schon probleme.
|
|
|
|
|
Hallo tiger1,
> Ah ok da hatte ich dich ein wenig missverstanden.
>
> Kannst du mir sagen wie ich mein Array nun neu einlesen
> kann?
>
Auch das hast Du in Deinem Programm schong gemacht:
cout<<" Elemente eingeben ";
for (int i=0;i<n;i++)
cin>>zahl[i];
> Ich hab da im moment ganz schon probleme.
Gruss
MathePower
|
|
|
|
|
Status: |
(Frage) beantwortet | Datum: | 19:02 Mo 03.12.2012 | Autor: | tiger1 |
Ah ok ich dachte es wäre irgendwie falsch daher.
Gut nun denn weiter.
Aber jetzt soll ich ja auch irgendwie den array spiegeln .
Wie mache ich das genau?
Habe ich eigentlich mein Menü richtig erstellt?
Ich war mir nicht sicher ob der Fehlerfrei war.
|
|
|
|
|
Hallo tiger1,
> Ah ok ich dachte es wäre irgendwie falsch daher.
>
> Gut nun denn weiter.
>
> Aber jetzt soll ich ja auch irgendwie den array spiegeln .
>
> Wie mache ich das genau?
>
Vertausche 1 mit letztem Element. zweites mit vorletztem usw.
> Habe ich eigentlich mein Menü richtig erstellt?
>
Ja.
Bei der Ausgabe der Menüpunkte sollte noch ein [mm] "\n" [/mm] stehen.
Sonst wird alles hintereinander geschrieben.
Das Menü selbst wird bis jetzt nur einmal ausgeführt.
> Ich war mir nicht sicher ob der Fehlerfrei war.
Gruss
MathePower
|
|
|
|
|
Status: |
(Frage) beantwortet | Datum: | 19:45 Mo 03.12.2012 | Autor: | tiger1 |
Bei der Ausgabe der Menüpunkte sollte noch ein stehen.
Sonst wird alles hintereinander geschrieben.
Das habe ich doch eigentlich in meinem Programm gemacht oder?
Oder wo sollen die Anführungszeichen stehen?
#include <iostream>
#include <cstdlib>
using namespace std;
int main() {
int n;
int zahl[10];
cout<<" Anzahl der einzulesenden Elemente/maximal 10 ";
cin>>n;
cout<<" Elemente eingeben ";
for (int i=0;i<n;i++)
cin>>zahl[i];
int Zahl[10] ={2, 4, 6, 8 , 10 , 12 , 14, 16 ,18 ,20}
cout<< " (1)Das Array mit der vorgegebenen Zahl der Elemente soll (neu) eingelesen werden.";
cout<< " (2)Der Tauschalgorithmus ist durchzuführen";
cout<< " (3)Das Array soll gespiegelt werden (Reihenfolge umkehren).";
cout<< " (4)Das Array soll am Bildschirm angezeigt werden";
cout<< " (5)Das Programm beenden";
}
Vertausche 1 mit letztem Element. zweites mit vorletztem usw.
Könnte man das irgendwie so machen?
if( i != zahl[i].length)
{
return.zahl[i].length;
}
Ich glaube das ist falsch ,aber ich verstehe nicht so ganz wie ich das letze array nennen kann oder auf es zugreifen kann.
|
|
|
|
|
Hallo tiger1,
>
> Bei der Ausgabe der Menüpunkte sollte noch ein stehen.
> Sonst wird alles hintereinander geschrieben.
>
> Das habe ich doch eigentlich in meinem Programm gemacht
> oder?
>
> Oder wo sollen die Anführungszeichen stehen?
> #include <iostream>
> #include <cstdlib>
> using namespace std;
>
> int main() {
>
> int n;
> int zahl[10];
> cout<<" Anzahl der einzulesenden Elemente/maximal 10 ";
> cin>>n;
> cout<<" Elemente eingeben ";
> for (int i=0;i<n;i++)
> cin>>zahl;
Ab "Elemente eingeben" sollte doch erst bei Auswahl
von Menüpunkt 1 ausgeführt werden.
>
> int Zahl[10] ={2, 4, 6, 8 , 10 , 12 , 14, 16 ,18 ,20}
>
> cout<< " (1)Das Array mit der vorgegebenen Zahl der
> Elemente soll (neu) eingelesen werden.";
> cout<< " (2)Der Tauschalgorithmus ist durchzuführen";
Ich meinte so:
cout<< " (2)Der Tauschalgorithmus ist durchzuführen [mm] \n";
[/mm]
Und das bei allen Menüpunkten.
I> cout<< " (3)Das Array soll gespiegelt werden (Reihenfolge
> umkehren).";
> cout<< " (4)Das Array soll am Bildschirm angezeigt werden";
> cout<< " (5)Das Programm beenden";
>
>
> }
> Vertausche 1 mit letztem Element. zweites mit vorletztem
> usw.
>
> Könnte man das irgendwie so machen?
>
> if( i != zahl.length)
> {
>
>
> return.zahl.length;
>
>
> }
>
> Ich glaube das ist falsch ,aber ich verstehe nicht so ganz
> wie ich das letze array nennen kann oder auf es zugreifen
> kann.
> [i] [/i
Z.B. so kannst Du das Array zahl spiegeln:
1: |
| 2: | int first=0;
| 3: | int last=n-1;
| 4: | while (first < last)
| 5: | {
| 6: | int hilf=zahl[first];
| 7: |
| 8: | zahl[first]=zahl[last];
| 9: | zahl[last]=hilf;
| 10: |
| 11: | first++;
| 12: | last--;
| 13: | }
|
Gruss
MathePower
|
|
|
|
|
Status: |
(Frage) beantwortet | Datum: | 20:03 Mo 03.12.2012 | Autor: | tiger1 |
Meinst du es so?
#include <iostream>
using namespace std;
int main()
{
int n;
int zahl[10];
cout<<" Anzahl der einzulesenden Elemente/maximal 10 ";
cin>>n;
cout<< " (1)Das Array mit der vorgegebenen Zahl der Elemente soll (neu) eingelesen werden.";
cout<< " (2)Der Tauschalgorithmus ist durchzuführen";
cout<< " (3)Das Array soll gespiegelt werden (Reihenfolge umkehren).";
cout<< " (4)Das Array soll am Bildschirm angezeigt werden";
cout<< " (5)Das Programm beenden";
for (int i=0;i<n;i++)
cin>>zahl[i];
int Zahl[10] ={2, 4, 6, 8 , 10 , 12 , 14, 16 ,18 ,20}
}
Aber mein programm wird im moment überhaupt nicht ausgeführt.
|
|
|
|
|
Hallo tiger1,
> Meinst du es so?
>
> #include <iostream>
>
> using namespace std;
>
> int main()
> {
> int n;
> int zahl[10];
> cout<<" Anzahl der einzulesenden Elemente/maximal 10 ";
> cin>>n;
> cout<< " (1)Das Array mit der vorgegebenen Zahl der
> Elemente soll (neu) eingelesen werden.";
> cout<< " (2)Der Tauschalgorithmus ist durchzuführen";
> cout<< " (3)Das Array soll gespiegelt werden (Reihenfolge
> umkehren).";
> cout<< " (4)Das Array soll am Bildschirm angezeigt werden";
> cout<< " (5)Das Programm beenden";
>
Den gewählten Menüpunkt musst Du natürlich abfragen.
> for (int i=0;i<n;i++)
> cin>>zahl;
>
> int Zahl[10] ={2, 4, 6, 8 , 10 , 12 , 14, 16 ,18 ,20}
>
>
> }
Gruss
MathePower
|
|
|
|
|
Status: |
(Frage) reagiert/warte auf Reaktion | Datum: | 20:08 Mo 03.12.2012 | Autor: | tiger1 |
Es zeigt mir im moment überhaupt gar nichts an.
Wenn ich auf run bei code blocks clicke
|
|
|
|
|
Status: |
(Frage) beantwortet | Datum: | 20:20 Mo 03.12.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)
Eingabefehler: "{" und "}" müssen immer paarweise auftreten, es wurde aber ein Teil ohne Entsprechung gefunden (siehe rote Markierung)
Hallo mathepower mein komplettes Programm sieht im moment so aus:
#include <iostream>
using namespace std;
int main()
{ int n;
int zahl[10];
cout<<" Anzahl der einzulesenden Elemente/maximal 10 ";
cin>>n;
cout<< " (1)Das Array mit der vorgegebenen Zahl der Elemente soll (neu) eingelesen werden.";
cout<< " (2)Der Tauschalgorithmus ist durchzuführen";
cout<< " (3)Das Array soll gespiegelt werden (Reihenfolge umkehren).";
cout<< " (4)Das Array soll am Bildschirm angezeigt werden";
cout<< " (5)Das Programm beenden";
for (int i=0;i<n;i++)
cin>>zahl[i];
int Zahl[10] ={2, 4, 6, 8 , 10 , 12 , 14, 16 ,18 ,20}
nt 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: ";
int first=0;
int last=n-1;
while (first < last)
{
int hilf=zahl[first];
zahl[first]=zahl[last];
zahl[last]=hilf;
first++;
last--;
}
Den Tauschalgorithmus habe ich auch noch eingefügt.
Ist das Programm soweit fehlerfrei?
Weil es wird irgendwie nichts ausgeführt bei mir.
|
|
|
|
|
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)
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)
> Eingabefehler: "{" und "}" müssen immer paarweise
> auftreten, es wurde aber ein Teil ohne Entsprechung
> gefunden (siehe rote Markierung)
>
> Hallo mathepower mein komplettes Programm sieht im moment
> so aus:
>
> #include <iostream>
>
> using namespace std;
>
> int main()
> { int n;
> int zahl[10];
> cout<<" Anzahl der einzulesenden Elemente/maximal 10 ";
> cin>>n;
> cout<< " (1)Das Array mit der vorgegebenen Zahl der
> Elemente soll (neu) eingelesen werden.";
> cout<< " (2)Der Tauschalgorithmus ist durchzuführen";
> cout<< " (3)Das Array soll gespiegelt werden (Reihenfolge
> umkehren).";
> cout<< " (4)Das Array soll am Bildschirm angezeigt werden";
> cout<< " (5)Das Programm beenden";
>
> for (int i=0;i<n;i++)
> cin>>zahl;
>
Das wird nur ausgeführt, wenn Menüpunkt 1 ausgewählt wurde.
> int Zahl[10] ={2, 4, 6, 8 , 10 , 12 , 14, 16 ,18 ,20}
>
> nt 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: ";
>
Das wird nur ausgeführt, wenn Menüpunkt 2 ausgewählt wurde.
> int first=0;
> int last=n-1;
> while (first < last)
> {
> int hilf=zahl[first];
>
> zahl[first]=zahl[last];
> zahl[last]=hilf;
>
> first++;
> last--;
> }
Das wird nur ausgeführt, wenn Menüpunkt 3 ausgewählt wurde.
Das Abfragen der Menüpunkte muss Du noch einfügen.
>
> Den Tauschalgorithmus habe ich auch noch eingefügt.
>
> Ist das Programm soweit fehlerfrei?
>
> Weil es wird irgendwie nichts ausgeführt bei mir.
Hast Du das Programm compiliert?
Gruss
MathePower
|
|
|
|
|
Status: |
(Frage) beantwortet | Datum: | 20:41 Mo 03.12.2012 | Autor: | tiger1 |
Hallo Mathepower ja compiliert habe ich das Programm.
Oh man tut mir leid ,dass ich dich direkt wieder fragen muss .
WIe füge ich das abfragen ein?
EInfach mit
cout << "Menüpunkte"<< endl; ?
Woher hast du denn so gut programieren gelernt?
Ich hab grosse Schwierigkeiten damit.
|
|
|
|
|
Hallo!
erst zu dem Programmierteil, das kannst du so machen:
int menu=0;
cout << "Bitte Menüpunkt wählen"<<endl;
cin >> menu;
if(menu == 1){
// bearbeite die erste Aufgabe
}
else if(menu == 2){
// bearbeite die zweite Aufgabe
}
...
Zu dem Programmieren lernen:
Programmieren lernt man in erster Linie durch Übung, und nicht durch pures Bücher lesen. Die meisten Bücher beinhalten zwar Aufgaben, aber du solltest dich nicht scheuen, dir auch eigene Aufgaben oder Abwandlungen / Ergänzungen auszudenken. Zugegeben, wenn man Programmieren im Unterricht lernt, hat man da nicht so die Zeit für solche Freiräume.
Taste dich an die Aufgabe heran:
Letztens war da die Aufgabe mit dem Vertauschen von Elementen des Arrays.
Erstelle also erstmal direkt im Code ein Array mit 20 Elementen, und schreib die drei Zeilen, die dir die Elemente ausgibt.
Denk dann drüber nach, wie du das erste mit dem zweiten Element vertauschst, und gib das Array danach wieder auf dem Bildschirm aus.
Erweitere das ganze so, daß jedes Element mit dem nächsten getauscht wird.
Und dann erweitere das ganze so, daß nur dann getauscht wird, wenn das eine Element größer als das andere ist.
Und dann kümmere dich darum, daß der Benutzer die Anzahl sowie die Elemente selbst eingeben kann.
Letztendlich kannst du deinen (Miß-)Erfolg direkt am Bildschirm sehen, weil dein Programm das macht, was es soll, oder auch nicht.
Dann ist ein Computerprogramm etwas, das von sich aus durch und durch logisch funktioniert und exakt das tut, was du schreibst. Diese Logik mußt du auch erstmal erlernen, sodaß du auch exakt das schreibst, was du meinst.
Ich glaube, du bist da etwas unkoordiniert und versuchst alle Probleme gleichzeitig zu lösen. Dabei stellst du Fragen, die du schon beantwortet hast (Das ist beim Programmieren übrigens wichtig: bekannte Lösungen für bekannte Probleme nutzen), und scheinst auch mit deiner Entwicklungsumgebung (visual studio) etwas auf Kriegsfuß zu stehen. (Das ist nicht böse gemeint!)
Denk dran, ein C-Programm muß kompiliert werden, bevor du es laufen lassen kannst. Kompilierst du nicht oder taucht dabei ein Fehler auf, existiert evtl noch eine alte Version deines Programms, und du wunderst dich, warum deine Änderungen nix bewirken. Hiergegen ein Tipp: Füge
cout << "Datei "<< __FILE__ <<" kompiliert am "__DATE__ << " um "<< __TIME__ << endl;
ganz am Anfang in die main() ein. Wenn du dein Programm dann ausführst, bekommst du exakt angezeigt, von wann dieses Programm ist. Und wenn es 5min alt ist, kann es die Änderungen von grade noch nicht enthalten.
|
|
|
|
|
Status: |
(Frage) beantwortet | Datum: | 23:46 Mo 03.12.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)
Eingabefehler: "{" und "}" müssen immer paarweise auftreten, es wurde aber ein Teil ohne Entsprechung gefunden (siehe rote Markierung)
Hi leute ich hab in der Zwischenzeit versucht bisschen mit Switch case zu arbeiten .
Ich glaube ich habe Fehler drinnen.
ABer vielleicht kann mir das jemand ein wenig verbessern.
#include <iostream>
using namespace std;
int main()
{
char Auswahl;
do{
cout<< " (A)Das Array mit der vorgegebenen Zahl der Elemente soll (neu) eingelesen werden."<< endl;
cout<< " (B)Der Tauschalgorithmus ist durchzuführen"<< endl;
cout<< " (C)Das Array soll gespiegelt werden (Reihenfolge umkehren)."<< endl;
cout<< " (D)Das Array soll am Bildschirm angezeigt werden"<< endl;
cout<< " (E)Das Programm beenden";
cin>> Auswahl;
cout<< "Drücken sie eine Zahl zwischen 1 bis 5 "endl;
switch(Auswahl)
{
case(´A`):
cout << " (1)Das Array mit der vorgegebenen Zahl wird eingelesen";
for (int i=0;i<n;i++)
cin>>zahl[i];
int Zahl[10] ={2, 4, 6, 8 , 10 , 12 , 14, 16 ,18 ,20}
break;
case(`B´):
cout << " Der Tauschalgorithmus wird durchgeführt"<< endl;
int n;
int zahl[10];
cout<<" Anzahl der einzulesenden Elemente/maximal 10 ";
cin>>n;
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: ";
break;
default:
}
}
case(`C´):
cout << " Das Array wird gespiegelt"<< endl;
int first=0;
int last=n-1;
while (first < last)
{
int hilf=zahl[first];
zahl[first]=zahl[last];
zahl[last]=hilf;
first++;
last--;
}
|
|
|
|
|
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)
Eingabefehler: "{" und "}" müssen immer paarweise auftreten, es wurde aber ein Teil ohne Entsprechung gefunden (siehe rote Markierung)
Hallo!
Naja, das Programm ist ja jetzt schon ne ganze Ecke größer. Hier den Fehler einfach so zu finden, ist schon was schwerer. Du solltest auch sagen, was für ein Fehler es ist, in dem Fall gehe ich davon aus, daß das Programm nicht kompiliert wird.
Dann schau mal, was beim Kompilieren so geschieht, du solltest irgendwo ein Fenster in deinem VisualStudio haben, in dem beim Kompilieren jede Menge Text erscheint. Unter anderem stehen da Warnungen, weil du irgendwas gemacht hast, das zwar funktioniert, aber u.U. Probleme verursachen kann, und Fehler, wegen denen der Computer das Compilieren abgebrochen hat. Lass dich da von der Menge der Fehler nicht beeindrucken, sondern schau dir nur den allerersten an. Die weiteren sind meist nur Folgefehler.
Der ausgegebene Text zu dem Fehler ist meist etwas kryptisch, sagt aber, wenn man ihn versteht, was das Problem ist. Oder zumindest, in welcher Zeile das Problem liegt. Wenn du die Meldung nicht verstehst, frag mal Google dazu!
Was ich sehe ist, daß dir gleich mehrere schließende geschweifte Klammern fehlen.
Die letzte gehört zu dem while des cases "C". Aber die letzte muß die zu dem main(){ sein, dann steht da ein do{ und ein switch(){ .
|
|
|
|
|
Status: |
(Frage) beantwortet | Datum: | 08:27 Di 04.12.2012 | Autor: | tiger1 |
Mir wird bei case('A') ein Fehler angezeigt. Ich verstehe aber nicht was daran falsch ist.
|
|
|
|
|
Hallo tiger1,
> Mir wird bei case('A') ein Fehler angezeigt. Ich verstehe
> aber nicht was daran falsch ist.
Diese Zeile ist wohl das Problem:
cout<< "Drücken sie eine Zahl zwischen 1 bis 5 "endl;
Korrekt muss diese Zeile lauten:
cout<< "Drücken sie eine Zahl zwischen 1 bis 5 " << endl;
Gruss
MathePower
|
|
|
|
|
Status: |
(Frage) beantwortet | Datum: | 18:40 Di 04.12.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)
Eingabefehler: "{" und "}" müssen immer paarweise auftreten, es wurde aber ein Teil ohne Entsprechung gefunden (siehe rote Markierung)
#include <iostream>
using namespace std;
int main()
{
char Auswahl;
do{
cout<< " (A)Das Array mit der vorgegebenen Zahl der Elemente soll (neu) eingelesen werden."<< endl;
cout<< " (B)Der Tauschalgorithmus ist durchzuführen"<< endl;
cout<< " (C)Das Array soll gespiegelt werden (Reihenfolge umkehren)."<< endl;
cout<< " (D)Das Array soll am Bildschirm angezeigt werden"<< endl;
cout<< " (E)Das Programm beenden";
cin>> Auswahl;
cout<< "Drücken sie eine Zahl zwischen 1 bis 5 " <<endl;
switch(Auswahl)
{
case(´A`):
cout << " (1)Das Array mit der vorgegebenen Zahl wird eingelesen";
for (int i=0;i<n;i++)
cin>>zahl[i];
int Zahl[10] ={2, 4, 6, 8 , 10 , 12 , 14, 16 ,18 ,20}
break;
case(`B´):
cout << " Der Tauschalgorithmus wird durchgeführt"<< endl;
int n;
int zahl[10];
cout<<" Anzahl der einzulesenden Elemente/maximal 10 ";
cin>>n;
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: ";
break;
default:
}
}
case(`C´):
cout << " Das Array wird gespiegelt"<< endl;
int first=0;
int last=n-1;
while (first < last)
{
int hilf=zahl[first];
zahl[first]=zahl[last];
zahl[last]=hilf;
first++;
last--;
}
Sind in diesem Programm noch mehr Fehler drinnen?
|
|
|
|
|
Status: |
(Frage) beantwortet | Datum: | 18:46 Di 04.12.2012 | Autor: | tiger1 |
Das Array soll am Bildschirm angezeigt werden.
Und kann mir das jemand sagen was ich machen kann , das das
Array mir angezegt wird.
Weil es wird mir immer noch ein Fehler bei case(´A);
angezeigt wird.
Habe ich das switch case falsch definiert ?
|
|
|
|
|
Hallo tiger1,
> Das Array soll am Bildschirm angezeigt werden.
>
>
> Und kann mir das jemand sagen was ich machen kann , das
> das
> Array mir angezegt wird.
>
> Weil es wird mir immer noch ein Fehler bei case(´A);
>
> angezeigt wird.
>
Poste die angezeigte Fehlermeldung.
> Habe ich das switch case falsch definiert ?
Gruss
MathePower
|
|
|
|
|
Status: |
(Frage) beantwortet | Datum: | 19:01 Di 04.12.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)
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)
Eingabefehler: "{" und "}" müssen immer paarweise auftreten, es wurde aber ein Teil ohne Entsprechung gefunden (siehe rote Markierung)
Ehrlich gesagt sind es sau viele Fehlermeldungen.
||=== Array2, Debug ===|
C:\Informatik\Array2\main.cpp|24|error: stray '\264' in program|
C:\Informatik\Array2\main.cpp|24|error: stray '`' in program|
C:\Informatik\Array2\main.cpp|35|error: stray '`' in program|
C:\Informatik\Array2\main.cpp|35|error: stray '\264' in program|
C:\Informatik\Array2\main.cpp|72|error: stray '`' in program|
C:\Informatik\Array2\main.cpp|72|error: stray '\264' in program|
C:\Informatik\Array2\main.cpp||In function 'int main()':|
C:\Informatik\Array2\main.cpp|24|error: 'A' was not declared in this scope|
C:\Informatik\Array2\main.cpp|28|error: 'n' was not declared in this scope|
C:\Informatik\Array2\main.cpp|29|error: 'zahl' was not declared in this scope|
C:\Informatik\Array2\main.cpp|33|error: expected ',' or ';' before 'break'|
C:\Informatik\Array2\main.cpp|35|error: 'B' was not declared in this scope|
C:\Informatik\Array2\main.cpp|35|error: jump to case label|
C:\Informatik\Array2\main.cpp|31|error: crosses initialization of 'int Zahl [10]'|
C:\Informatik\Array2\main.cpp|63|error: jump to case label|
C:\Informatik\Array2\main.cpp|53|error: crosses initialization of 'int hilf'|
C:\Informatik\Array2\main.cpp|49|error: crosses initialization of 'int j'|
C:\Informatik\Array2\main.cpp|47|error: crosses initialization of 'int tausch'|
C:\Informatik\Array2\main.cpp|31|error: crosses initialization of 'int Zahl [10]'|
C:\Informatik\Array2\main.cpp|67|error: expected primary-expression before '}' token|
C:\Informatik\Array2\main.cpp|67|error: expected ';' before '}' token|
C:\Informatik\Array2\main.cpp|72|error: 'C' was not declared in this scope|
C:\Informatik\Array2\main.cpp|72|error: jump to case label|
C:\Informatik\Array2\main.cpp|47|error: crosses initialization of 'int tausch'|
C:\Informatik\Array2\main.cpp|31|error: crosses initialization of 'int Zahl [10]'|
C:\Informatik\Array2\main.cpp|31|warning: unused variable 'Zahl'|
C:\Informatik\Array2\main.cpp|86|error: expected '}' at end of input|
C:\Informatik\Array2\main.cpp|86|error: expected '}' at end of input|
C:\Informatik\Array2\main.cpp|86|error: expected 'while' at end of input|
C:\Informatik\Array2\main.cpp|86|error: expected '(' at end of input|
C:\Informatik\Array2\main.cpp|86|error: expected primary-expression at end of input|
C:\Informatik\Array2\main.cpp|86|error: expected ')' at end of input|
C:\Informatik\Array2\main.cpp|86|error: expected ';' at end of input|
C:\Informatik\Array2\main.cpp|86|error: expected '}' at end of input|
||=== Build finished: 32 errors, 1 warnings ===|
Ich poste mal.
|
|
|
|
|
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)
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)
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)
> 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)
> Eingabefehler: "{" und "}" müssen immer paarweise
> auftreten, es wurde aber ein Teil ohne Entsprechung
> gefunden (siehe rote Markierung)
>
> Ehrlich gesagt sind es sau viele Fehlermeldungen.
>
> ||=== Array2, Debug ===|
> C:\Informatik\Array2\main.cpp|24|error: stray '\264' in
> program|
> C:\Informatik\Array2\main.cpp|24|error: stray ''' in
> program|
> C:\Informatik\Array2\main.cpp|35|error: stray ''' in
> program|
> C:\Informatik\Array2\main.cpp|35|error: stray '\264' in
> program|
> C:\Informatik\Array2\main.cpp|72|error: stray ''' in
> program|
> C:\Informatik\Array2\main.cpp|72|error: stray '\264' in
> program|
Zeichen sind in einfachen Anführungsstrichen zu schreiben:
Dann lautet das erste case-Statement: case('A')
> C:\Informatik\Array2\main.cpp||In function 'int main()':|
> C:\Informatik\Array2\main.cpp|24|error: 'A' was not
> declared in this scope|
> C:\Informatik\Array2\main.cpp|28|error: 'n' was not
> declared in this scope|
> C:\Informatik\Array2\main.cpp|29|error: 'zahl' was not
> declared in this scope|
> C:\Informatik\Array2\main.cpp|33|error: expected ',' or
> ';' before 'break'|
> C:\Informatik\Array2\main.cpp|35|error: 'B' was not
> declared in this scope|
> C:\Informatik\Array2\main.cpp|35|error: jump to case
> label|
> C:\Informatik\Array2\main.cpp|31|error: crosses
> initialization of 'int Zahl [10]'|
> C:\Informatik\Array2\main.cpp|63|error: jump to case
> label|
> C:\Informatik\Array2\main.cpp|53|error: crosses
> initialization of 'int hilf'|
> C:\Informatik\Array2\main.cpp|49|error: crosses
> initialization of 'int j'|
> C:\Informatik\Array2\main.cpp|47|error: crosses
> initialization of 'int tausch'|
> C:\Informatik\Array2\main.cpp|31|error: crosses
> initialization of 'int Zahl [10]'|
> C:\Informatik\Array2\main.cpp|67|error: expected
> primary-expression before '}' token|
> C:\Informatik\Array2\main.cpp|67|error: expected ';'
> before '}' token|
> C:\Informatik\Array2\main.cpp|72|error: 'C' was not
> declared in this scope|
> C:\Informatik\Array2\main.cpp|72|error: jump to case
> label|
> C:\Informatik\Array2\main.cpp|47|error: crosses
> initialization of 'int tausch'|
> C:\Informatik\Array2\main.cpp|31|error: crosses
> initialization of 'int Zahl [10]'|
> C:\Informatik\Array2\main.cpp|31|warning: unused variable
> 'Zahl'|
> C:\Informatik\Array2\main.cpp|86|error: expected '}' at
> end of input|
> C:\Informatik\Array2\main.cpp|86|error: expected '}' at
> end of input|
> C:\Informatik\Array2\main.cpp|86|error: expected 'while'
> at end of input|
> C:\Informatik\Array2\main.cpp|86|error: expected '(' at
> end of input|
> C:\Informatik\Array2\main.cpp|86|error: expected
> primary-expression at end of input|
> C:\Informatik\Array2\main.cpp|86|error: expected ')' at
> end of input|
> C:\Informatik\Array2\main.cpp|86|error: expected ';' at
> end of input|
> C:\Informatik\Array2\main.cpp|86|error: expected '}' at
> end of input|
> ||=== Build finished: 32 errors, 1 warnings ===|
>
> Ich poste mal.
>
"crosses initialization of" wird dadurch behoben,
daß Du sämtliche Variablen, die in den case-Statements deklariert
wurden, vor dem switch-Statement deklariert werden müssen.
Dann ist da ein do-Statement ohne while.
Gruss
MathePower
|
|
|
|
|
Status: |
(Frage) beantwortet | Datum: | 20:01 Di 04.12.2012 | Autor: | tiger1 |
Kannst du mir vielleicht einen anderen Weg sagen wie ich das machen kann?
|
|
|
|
|
Status: |
(Antwort) fertig | Datum: | 20:23 Di 04.12.2012 | Autor: | tiger1 |
Kann ich das nicht irgendwie anders machen ohne switch case?
|
|
|
|
|
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)
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)
> Eingabefehler: "{" und "}" müssen immer paarweise
> auftreten, es wurde aber ein Teil ohne Entsprechung
> gefunden (siehe rote Markierung)
>
> #include <iostream>
>
> using namespace std;
>
> int main()
> {
> char Auswahl;
>
> do{
>
> cout<< " (A)Das Array mit der vorgegebenen Zahl der
> Elemente soll (neu) eingelesen werden."<< endl;
> cout<< " (B)Der Tauschalgorithmus ist durchzuführen"<<
> endl;
> cout<< " (C)Das Array soll gespiegelt werden
> (Reihenfolge umkehren)."<< endl;
> cout<< " (D)Das Array soll am Bildschirm angezeigt
> werden"<< endl;
> cout<< " (E)Das Programm beenden";
>
> cin>> Auswahl;
>
> cout<< "Drücken sie eine Zahl zwischen 1 bis 5 "
> <<endl;
> switch(Auswahl)
>
> {
>
> case(´A'):
>
>
> cout << " (1)Das Array mit der vorgegebenen Zahl wird
> eingelesen";
> for (int i=0;i<n;i++)
> cin>>zahl;
>
> int Zahl[10] ={2, 4, 6, 8 , 10 , 12 , 14, 16 ,18 ,20}
>
> break;
>
> case('B´):
>
> cout << " Der Tauschalgorithmus wird durchgeführt"<<
> endl;
>
> int n;
> int zahl[10];
> cout<<" Anzahl der einzulesenden Elemente/maximal
> 10 ";
> cin>>n;
>
>
>
>
> 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: ";
>
> break;
>
> default:
>
>
>
> }
>
> }
>
>
> case('C´):
>
> cout << " Das Array wird gespiegelt"<< endl;
> int first=0;
> int last=n-1;
> while (first < last)
> {
> int hilf=zahl[first];
>
> zahl[first]=zahl[last];
> zahl[last]=hilf;
>
> first++;
> last--;
> }
>
>
> Sind in diesem Programm noch mehr Fehler drinnen?
Einige.
Stell Deinen Compiler so ein, daß er Dir die Fehlermeldungen anzeigt.
Gruss
MathePower
|
|
|
|
|
Status: |
(Frage) beantwortet | Datum: | 19:12 Di 04.12.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)
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)
> 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)
> > Eingabefehler: "{" und "}" müssen immer paarweise
> > auftreten, es wurde aber ein Teil ohne Entsprechung
> > gefunden (siehe rote Markierung)
> >
> > #include <iostream>
> >
> > using namespace std;
> >
> > int main()
> > {
> > char Auswahl;
> >
> > do{
> >
> > cout<< " (A)Das Array mit der vorgegebenen Zahl der
> > Elemente soll (neu) eingelesen werden."<< endl;
> > cout<< " (B)Der Tauschalgorithmus ist
> durchzuführen"<<
> > endl;
> > cout<< " (C)Das Array soll gespiegelt werden
> > (Reihenfolge umkehren)."<< endl;
> > cout<< " (D)Das Array soll am Bildschirm angezeigt
> > werden"<< endl;
> > cout<< " (E)Das Programm beenden";
> >
> > cin>> Auswahl;
> >
> > cout<< "Drücken sie eine Zahl zwischen 1 bis 5 "
> > <<endl;
> > switch(Auswahl)
> >
> > {
> >
> > case(´A'):
> >
> >
> > cout << " (1)Das Array mit der vorgegebenen Zahl wird
> > eingelesen";
> > for (int i=0;i<n;i++)
> > cin>>zahl;
> >
> > int Zahl[10] ={2, 4, 6, 8 , 10 , 12 , 14, 16 ,18 ,20}
> >
> > break;
> >
> > case('B´):
> >
> > cout << " Der Tauschalgorithmus wird durchgeführt"<<
> > endl;
> >
> > int n;
> > int zahl[10];
> > cout<<" Anzahl der einzulesenden Elemente/maximal
> > 10 ";
> > cin>>n;
> >
> >
> >
> >
> > 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: ";
> >
> > break;
> >
> > default:
> >
> >
> >
> > }
> >
> > }
> >
> >
> > case('C´):
> >
> > cout << " Das Array wird gespiegelt"<< endl;
> > int first=0;
> > int last=n-1;
> > while (first < last)
> > {
> > int hilf=zahl[first];
> >
> > zahl[first]=zahl[last];
> > zahl[last]=hilf;
> >
> > first++;
> > last--;
> > }
> >
> >
> > Sind in diesem Programm noch mehr Fehler drinnen?
>
>
> Einige.
>
> Stell Deinen Compiler so ein, daß er Dir die
> Fehlermeldungen anzeigt.
>
>
> Gruss
> MathePower
Hallo Mathe power kannst du es vielleicht korrigieren , weil ich stecke schon seit stunden fest.
Ist das Programm überhaupt inhaltlich richtig?
|
|
|
|
|
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)
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)
> 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)
> > 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)
> > > Eingabefehler: "{" und "}" müssen immer paarweise
> > > auftreten, es wurde aber ein Teil ohne Entsprechung
> > > gefunden (siehe rote Markierung)
> > >
> > > #include <iostream>
> > >
> > > using namespace std;
> > >
> > > int main()
> > > {
> > > char Auswahl;
> > >
> > > do{
> > >
> > > cout<< " (A)Das Array mit der vorgegebenen Zahl der
> > > Elemente soll (neu) eingelesen werden."<< endl;
> > > cout<< " (B)Der Tauschalgorithmus ist
> > durchzuführen"<<
> > > endl;
> > > cout<< " (C)Das Array soll gespiegelt werden
> > > (Reihenfolge umkehren)."<< endl;
> > > cout<< " (D)Das Array soll am Bildschirm
> angezeigt
> > > werden"<< endl;
> > > cout<< " (E)Das Programm beenden";
> > >
> > > cin>> Auswahl;
> > >
> > > cout<< "Drücken sie eine Zahl zwischen 1 bis 5 "
> > > <<endl;
> > > switch(Auswahl)
> > >
> > > {
> > >
> > > case(´A'):
> > >
> > >
> > > cout << " (1)Das Array mit der vorgegebenen Zahl wird
> > > eingelesen";
> > > for (int i=0;i<n;i++)
> > > cin>>zahl;
> > >
> > > int Zahl[10] ={2, 4, 6, 8 , 10 , 12 , 14, 16 ,18
> ,20}
> > >
> > > break;
> > >
> > > case('B´):
> > >
> > > cout << " Der Tauschalgorithmus wird
> durchgeführt"<<
> > > endl;
> > >
> > > int n;
> > > int zahl[10];
> > > cout<<" Anzahl der einzulesenden Elemente/maximal
> > > 10 ";
> > > cin>>n;
> > >
> > >
> > >
> > >
> > > 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: ";
> > >
> > > break;
> > >
> > > default:
> > >
> > >
> > >
> > > }
> > >
> > > }
> > >
> > >
> > > case('C´):
> > >
> > > cout << " Das Array wird gespiegelt"<< endl;
> > > int first=0;
> > > int last=n-1;
> > > while (first < last)
> > > {
> > > int hilf=zahl[first];
> > >
> > > zahl[first]=zahl[last];
> > > zahl[last]=hilf;
> > >
> > > first++;
> > > last--;
> > > }
> > >
> > >
> > > Sind in diesem Programm noch mehr Fehler drinnen?
> >
> >
> > Einige.
> >
> > Stell Deinen Compiler so ein, daß er Dir die
> > Fehlermeldungen anzeigt.
> >
> >
> > Gruss
> > MathePower
>
> Hallo Mathe power kannst du es vielleicht korrigieren ,
> weil ich stecke schon seit stunden fest.
>
Ich habe in diesem Artikel geschrieben,
wie die Fehler zu beheben sind.
Zum Programmieren gehört nun mal auch die Fehlersuche.
> Ist das Programm überhaupt inhaltlich richtig?
Inhaltlich mag das richtig sein.
Aber ob das Programm dann das macht,
was Du willst, steht auf einem anderen Blatt.
Gruss
MathePower
|
|
|
|
|
Status: |
(Frage) beantwortet | Datum: | 20:40 Di 04.12.2012 | Autor: | tiger1 |
Eingabefehler: "{" und "}" müssen immer paarweise auftreten, es wurde aber ein Teil ohne Entsprechung gefunden (siehe rote Markierung)
Hey leut ich hab versucht das Programm ein wenig zu korrigieren aber jetzt finde ich irgendwie keine Fehler mehr.
Was ist noch falsch?
#include <iostream>
using namespace std;
int main()
{
char Auswahl;
do{
cout<< " (A)Das Array mit der vorgegebenen Zahl der Elemente soll (neu) eingelesen werden."<< endl;
cout<< " (B)Der Tauschalgorithmus ist durchzuführen"<< endl;
cout<< " (C)Das Array soll gespiegelt werden (Reihenfolge umkehren)."<< endl;
cout<< " (D)Das Array soll am Bildschirm angezeigt werden"<< endl;
cout<< " (E)Das Programm beenden";
cin>> Auswahl;
cout<< "Drücken sie eine Zahl zwischen 1 bis 5 "<<endl;
switch(Auswahl)
{
case(´A`):
cout << " (1)Das Array mit der vorgegebenen Zahl wird eingelesen"<< endl;
for (int i=0;i<n;i++)
cin>>zahl[i];
int Zahl[10] ={2, 4, 6, 8 , 10 , 12 , 14, 16 ,18 ,20}
break;
case(`B´):
cout << " Der Tauschalgorithmus wird durchgeführt"<< endl;
int n;
int zahl[10];
cout<<" Anzahl der einzulesenden Elemente/maximal 10 ";
cin>>n;
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: ";
break;
default:
}
}
case(`C´):
cout << " Das Array wird gespiegelt"<< endl;
int first=0;
int last=n-1;
while (first < last)
{
int hilf=zahl[first];
zahl[first]=zahl[last];
zahl[last]=hilf;
first++;
last--;
}
}
}
|
|
|
|
|
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)
>
> Hey leut ich hab versucht das Programm ein wenig zu
> korrigieren aber jetzt finde ich irgendwie keine Fehler
> mehr.
>
> Was ist noch falsch?
>
> #include <iostream>
>
> using namespace std;
>
> int main()
> {
> char Auswahl;
>
> do{
>
> cout<< " (A)Das Array mit der vorgegebenen Zahl der
> Elemente soll (neu) eingelesen werden."<< endl;
> cout<< " (B)Der Tauschalgorithmus ist durchzuführen"<<
> endl;
> cout<< " (C)Das Array soll gespiegelt werden
> (Reihenfolge umkehren)."<< endl;
> cout<< " (D)Das Array soll am Bildschirm angezeigt
> werden"<< endl;
> cout<< " (E)Das Programm beenden";
>
> cin>> Auswahl;
>
> cout<< "Drücken sie eine Zahl zwischen 1 bis 5 "<<endl;
> switch(Auswahl)
>
> {
>
> case(´A'):
>
>
> cout << " (1)Das Array mit der vorgegebenen Zahl wird
> eingelesen"<< endl;
> for (int i=0;i<n;i++)
> cin>>zahl;
>
> int Zahl[10] ={2, 4, 6, 8 , 10 , 12 , 14, 16 ,18 ,20}
>
> break;
>
> case('B´):
>
> cout << " Der Tauschalgorithmus wird durchgeführt"<<
> endl;
>
> int n;
> int zahl[10];
> cout<<" Anzahl der einzulesenden Elemente/maximal
> 10 ";
> cin>>n;
>
>
>
>
> 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: ";
>
> break;
>
> default:
>
>
>
> }
>
> }
>
>
> case('C´):
>
> cout << " Das Array wird gespiegelt"<< endl;
> int first=0;
> int last=n-1;
> while (first < last)
> {
> int hilf=zahl[first];
>
> zahl[first]=zahl[last];
> zahl[last]=hilf;
>
> first++;
> last--;
> }
> }
> }
>
Bei mir meldet der Compiler:
array2.cc:24:10: error: stray ‘\302’ in program
array2.cc:24:10: error: stray ‘\264’ in program
array2.cc:24:10: error: stray ‘'’ in program
array2.cc:35:10: error: stray ‘'’ in program
array2.cc:35:10: error: stray ‘\302’ in program
array2.cc:35:10: error: stray ‘\264’ in program
array2.cc:72:16: error: stray ‘'’ in program
array2.cc:72:16: error: stray ‘\302’ in program
array2.cc:72:16: error: stray ‘\264’ in program
array2.cc: In function ‘int main()’:
array2.cc:24:17: error: ‘A’ was not declared in this scope
array2.cc:28:25: error: ‘n’ was not declared in this scope
array2.cc:29:15: error: ‘zahl’ was not declared in this scope
array2.cc:33:10: error: expected ‘,’ or ‘;’ before ‘break’
array2.cc:35:16: error: ‘B’ was not declared in this scope
array2.cc:35:19: error: jump to case label
array2.cc:31:22: error: crosses initialization of ‘int Zahl [10]’
array2.cc:63:16: error: jump to case label
array2.cc:53:17: error: crosses initialization of ‘int hilf’
array2.cc:49:19: error: crosses initialization of ‘int j’
array2.cc:47:14: error: crosses initialization of ‘int tausch’
array2.cc:31:22: error: crosses initialization of ‘int Zahl [10]’
array2.cc:67:10: error: expected primary-expression before ‘}’ token
array2.cc:67:10: error: expected ‘;’ before ‘}’ token
array2.cc:72:22: error: ‘C’ was not declared in this scope
array2.cc:72:25: error: jump to case label
array2.cc:47:14: error: crosses initialization of ‘int tausch’
array2.cc:31:22: error: crosses initialization of ‘int Zahl [10]’
array2.cc:31:22: warning: unused variable ‘Zahl’
array2.cc:88:2: error: expected ‘while’ at end of input
array2.cc:88:2: error: expected ‘(’ at end of input
array2.cc:88:2: error: expected primary-expression at end of input
array2.cc:88:2: error: expected ‘)’ at end of input
array2.cc:88:2: error: expected ‘;’ at end of input
array2.cc:88:2: error: expected ‘}’ at end of input
Gruss
MathePower
|
|
|
|
|
Status: |
(Frage) überfällig | Datum: | 21:56 Di 04.12.2012 | Autor: | tiger1 |
Ich hab mein programm jetzt verbessert und es ist compilierbar.
ABer irgendwie scheint der Tauschalgorithmus nicht zu funktionieren.
#include <iostream>
using namespace std;
int main()
{
int zahl[] ={ 2, 4, 6, 8 , 10 , 12 , 14, 16 ,18 ,20 };
const int N = sizeof(zahl)/sizeof(zahl[0]); //
int n = N; // <== initiale Belegung der Anzahl
char Auswahl;
do
{
cout<< " (A)Das Array mit der vorgegebenen Zahl der Elemente soll (neu) eingelesen werden."<< endl;
cout<< " (B)Der Tauschalgorithmus ist durchzuführen"<< endl;
cout<< " (C)Das Array soll gespiegelt werden (Reihenfolge umkehren)."<< endl;
cout<< " (D)Das Array soll am Bildschirm angezeigt werden"<< endl;
cout<< " (E)Das Programm beenden";
cout<< "Drücken sie eine Buchstaben von 'A' bis 'E' " <<endl; //
cin>> Auswahl;
switch(Auswahl)
{
case('A'):
cout << " (1)Das Array mit der vorgegebenen Zahl wird eingelesen";
for (int i=0;i<n;i++)
cin >> zahl[i]; // <== hier fehlte das [i]
break;
case('B'):
cout << " Der Tauschalgorithmus wird durchgeführt"<< endl;
cout<<" Anzahl der einzulesenden Elemente/maximal " << N;
cin >> n;
{ // <== eigenen Scope für Variable 'tausch'
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: ";
break;
}
}
}
case('C'):
cout << " Das Array wird gespiegelt"<< endl;
for (int first=0, last=n-1;first < last; ++first, --last ) // <=== bevorzuge for vor while!
{
int hilf=zahl[first];
zahl[first]=zahl[last];
zahl[last]=hilf;
}
case 'D': // <=== case D: fehlt Wie mache ich das?
default: // <=== default am Ende des switch-Statements
break;
/
} // switch(auswahl)
} while( Auswahl != 'E' );
} // main
|
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 22:23 Di 04.12.2012 | Autor: | chrisno |
zahl(j) ist bei der Belegung nie größer als zahl(j+1)
|
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 22:20 Do 06.12.2012 | Autor: | matux |
$MATUXTEXT(ueberfaellige_frage)
|
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 23:47 Mo 03.12.2012 | Autor: | tiger1 |
Falls mein versuch wieder falsch ist .
Probiere ich es mt deinem Weg Event Horizon.
|
|
|
|