Hypercell ein ] Hypercell aus ] Zeige Navigation ] Verstecke Navigation ]
c++.de  
   

Die mobilen Seiten von c++.de:
http://m.c-plusplus.de
Infos hier [BETA]

  
c++.de :: C++/CLI mit .NET ::  Meine erste Klasse läuft nur mit Schleife Probleme  
Gehen Sie zu Seite 1, 2  Weiter
  Zeige alle Beiträge auf einer Seite
Auf Beitrag antworten
Autor Nachricht
champman
Mitglied

Benutzerprofil
Anmeldungsdatum: 12.08.2007
Beiträge: 66
Beitrag champman Mitglied 19:23:51 29.05.2012   Titel:   Meine erste Klasse läuft nur mit Schleife Probleme            Zitieren

Hallo Leute

Mein Programm läuft nun so, wie ich es mir vorstelle. Nur die Schleife ist irgendwie missglückt. Habe ich sie an den falschen Stellen gesetzt oder die falsche Schleife gewählt?

Bin für jeden Hinweis dankbar.

[cli]#include "stdafx.h"

using namespace System;

ref class TV_Klasse
{
Int32 an_aus;
Int32 Programm;
Int32 Ton;

public:

Void init(Int32 zustand);
Void programm(Int32 kanal);
Void ton(Int32 aendern);
Void ausgabe();
};

Void TV_Klasse::init(Int32 zustand)
{
if (zustand != 0)

an_aus = 1;
else
an_aus = 0;
Programm = 1;
Ton = 5;
}

Void TV_Klasse::programm(Int32 kanal)
{
if ((Programm + kanal) > 1)
{
Programm = Programm + kanal - 1;
}
else
{
Programm = Programm - kanal;
}
}

Void TV_Klasse::ton(Int32 aendern)
{
if (aendern > 5)
{
Ton = Ton + aendern - 5;
}
else
{
Ton = Ton - aendern;
}
}

Void TV_Klasse::ausgabe()
{
Console::WriteLine("\n\nDas Gerät hat den Zustand {0} ",an_aus);
Console::WriteLine("Aktives Programm {0}",Programm);
Console::WriteLine("Die Lautsärke ist auf {0} \n\n\n",Ton);
}


int main(array<System::String ^> ^args)
{
TV_Klasse^ tivi;

tivi = gcnew TV_Klasse;

Int32 auswahl, x, z, schleife;
schleife = 0;

Console::WriteLine("Vor dem Einschalten.\n\n");
tivi -> ausgabe();

Console::WriteLine("Gerät einschalten: 1");
Console::WriteLine("Gerät ausschalten: 0\n");

auswahl = Console::Read();
Console::ReadLine();

switch (auswahl)
{
case '1':

x = 1;
tivi -> init(x);

Console::WriteLine("Nach dem Einschalten \n");

tivi ->ausgabe();

while (schleife >= 0)
{
Int32 y;

Console::WriteLine("Was möchten Sie tun?\n");
Console::WriteLine("Programm ändern: 1");
Console::WriteLine("Ton andern: 2");
Console::WriteLine("Gerät ausschalten: 0\n\n");
y = Convert::ToInt32(Console::Read());

Console::ReadLine();

switch (y)
{
case '1':

Int32 kanal, i;

Console::WriteLine("ARD: 1");
Console::WriteLine("ZDF: 2");
Console::WriteLine("NDR: 3");
Console::WriteLine("RTL: 4\n");
/*Console::WriteLine("Ausschalten: 0\n");*/
kanal = Convert::ToInt32(Console::Read());

switch (kanal)
{
case '1':

i = 1;
tivi -> programm(i);
break;

case '2':

i = 2;
tivi -> programm(i);
break;

case '3':

i = 3;
tivi -> programm(i);
break;

case '4':

i = 4;
tivi -> programm(i);
break;

}
break;

case '2':

z = 0;
Console::WriteLine("Um die Lautstärke zu änder eine Zahl eingeben.\n");
z = Convert::ToInt32(Console::ReadLine());

tivi -> ton(z);
break;

case '0':

z = 0;
tivi -> init(z);
break;

default:

Console::WriteLine("Falsche Auswahl.");
}
tivi -> ausgabe();

}/*while(schleife != 0);*/

}

Console::ReadKey();
return 0;
}

Gruß

champman
virusscript24
Mitglied

Benutzerprofil
Anmeldungsdatum: 17.02.2012
Beiträge: 55
Beitrag virusscript24 Mitglied 12:12:46 30.05.2012   Titel:              Zitieren

Das ist die lesbare Version
So erkennt man auch Klammerpaare besser:


C++/CLI:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
#include "stdafx.h"
 
using namespace System;
 
ref class TV_Klasse
{
    Int32 an_aus;
    Int32 Programm;
    Int32 Ton;
 
public:
 
    Void init(Int32 zustand);
    Void programm(Int32 kanal);
    Void ton(Int32 aendern);
    Void ausgabe();
};
 
Void TV_Klasse::init(Int32 zustand)
{
    if (zustand != 0)
    {
        an_aus = 1;
    } else {
        an_aus = 0;
    }
 
    Programm = 1;
    Ton = 5;
}
 
Void TV_Klasse::programm(Int32 kanal)
{
    if ((Programm + kanal) > 1)
    {
        Programm = Programm + kanal - 1;
    } else {
        Programm = Programm - kanal;
    }
}
 
Void TV_Klasse::ton(Int32 aendern)
{
    if (aendern > 5)
    {
        Ton = Ton + aendern - 5;
    } else {
        Ton = Ton - aendern;
    }
}
 
Void TV_Klasse::ausgabe()
{
    Console::WriteLine("\n\nDas Gerät hat den Zustand {0} ",an_aus);
    Console::WriteLine("Aktives Programm {0}",Programm);
    Console::WriteLine("Die Lautsärke ist auf {0} \n\n\n",Ton);
}
 
 
int main(array<System::String ^> ^args)
{
    TV_Klasse^ tivi;
 
    tivi = gcnew TV_Klasse;
 
    Int32 auswahl, x, z, schleife;
    schleife = 0;
 
    Console::WriteLine("Vor dem Einschalten.\n\n");
    tivi -> ausgabe();
 
    Console::WriteLine("Gerät einschalten:  1");
    Console::WriteLine("Gerät ausschalten:  0\n");
 
    auswahl = Console::Read();
    Console::ReadLine();
 
    switch (auswahl)
    {
        case '1':
            x = 1;
            tivi -> init(x);
 
            Console::WriteLine("Nach dem Einschalten \n");
 
            tivi ->ausgabe();
 
            while (schleife >= 0)
            {
                Int32 y;
 
                Console::WriteLine("Was möchten Sie tun?\n");
                Console::WriteLine("Programm ändern:    1");
                Console::WriteLine("Ton andern:  2");
                Console::WriteLine("Gerät ausschalten:  0\n\n");
                y = Convert::ToInt32(Console::Read());
 
                Console::ReadLine();
 
                switch (y)
                {
                    case '1':
 
                    Int32 kanal, i;
 
                    Console::WriteLine("ARD:    1");
                    Console::WriteLine("ZDF:    2");
                    Console::WriteLine("NDR:    3");
                    Console::WriteLine("RTL:    4\n");
                    /*Console::WriteLine("Ausschalten: 0\n");*/
                    kanal = Convert::ToInt32(Console::Read());
 
                    switch (kanal)
                    {
                    case '1':
                        i = 1;
                        tivi -> programm(i);
                    break;
 
                    case '2':
                        i = 2;
                        tivi -> programm(i);
                    break;
 
                    case '3':
                        i = 3;
                        tivi -> programm(i);
                    break;
 
                    case '4':
                        i = 4;
                        tivi -> programm(i);
                    break;
                }
 
            //Ich glaube, die Schleife sollte hier enden, oder?
            }
 
        break;
           
           
           
        case '2':
            z = 0;
            Console::WriteLine("Um die Lautstärke zu änder eine Zahl eingeben.\n");
            z = Convert::ToInt32(Console::ReadLine());
 
            tivi -> ton(z);
        break;
 
        case '0':
            z = 0;
            tivi -> init(z);
        break;
 
        default:
            Console::WriteLine("Falsche Auswahl.");
 
    }
    tivi -> ausgabe();
 
    // Wozu das denn? Es gingen doch schon alle Klammern zu
    //}/*while(schleife != 0);*/
    //}
 
    Console::ReadKey();
    return 0;
}



Allerdings werde ich aus dem Code nicht schlau,
was bewirkt der :confused: und
was für Fehlermeldungen kamen?


Ich hoffe, ich hab das falsch gesetzte Klammerpaar richtig interpretiert...

_________________
Wenn euch mein Name nicht gefällt, dann denkt euch an der Stelle xy97 oder so.
(Ich habe nämlich nicht vor, viren zu proggen & ich brauchte nen Namen, den noch niemand hat)
Mopperpot
Unregistrierter




Beitrag Mopperpot Unregistrierter 16:42:47 30.05.2012   Titel:              Zitieren

Ich glaub die Schleife soll da nicht enden. Und ich denke auch, dass genau das dann das Problem ist: die ganzen breaks, da erkenn ich jetzt nicht, ob das nun die Schleife oder nur die switch-Anweisung gebreaked (was fürn Wort) werden soll. In der Schleife das switch beenden wird etwas schwerer
virusscript24
Mitglied

Benutzerprofil
Anmeldungsdatum: 17.02.2012
Beiträge: 55
Beitrag virusscript24 Mitglied 16:44:36 30.05.2012   Titel:              Zitieren

In einer Schleife kann man ja mit break; auch die Schleife beenden,
woher soll ich das wissen :confused:

_________________
Wenn euch mein Name nicht gefällt, dann denkt euch an der Stelle xy97 oder so.
(Ich habe nämlich nicht vor, viren zu proggen & ich brauchte nen Namen, den noch niemand hat)
virusscript24
Mitglied

Benutzerprofil
Anmeldungsdatum: 17.02.2012
Beiträge: 55
Beitrag virusscript24 Mitglied 17:33:43 30.05.2012   Titel:              Zitieren

C++:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
#include "stdafx.h"
 
using namespace System;
 
ref class TV_Klasse
{
    Int32 an_aus;
    Int32 Programm;
    Int32 Ton;
 
public:
 
    Void init(Int32 zustand);
    Void programm(Int32 kanal);
    Void ton(Int32 aendern);
    Void ausgabe();
};
 
Void TV_Klasse::init(Int32 zustand)
{
    if (zustand != 0)
    {
        an_aus = 1;
    } else {
        an_aus = 0;
    }
 
    Programm = 1;
    Ton = 5;
}
 
Void TV_Klasse::programm(Int32 kanal)
{
    if ((Programm + kanal) > 1)
    {
        Programm = Programm + kanal - 1;
    } else {
        Programm = Programm - kanal;
    }
}
 
Void TV_Klasse::ton(Int32 aendern)
{
    if (aendern > 5)
    {
        Ton = Ton + aendern - 5;
    } else {
        Ton = Ton - aendern;
    }
}
 
Void TV_Klasse::ausgabe()
{
    Console::WriteLine("\n\nDas Gerät hat den Zustand {0} ",an_aus);
    Console::WriteLine("Aktives Programm {0}",Programm);
    Console::WriteLine("Die Lautsärke ist auf {0} \n\n\n",Ton);
}
 
 
int main(array<System::String ^> ^args)
{
    TV_Klasse^ tivi;
 
    tivi = gcnew TV_Klasse;
 
    Int32 auswahl, x, z, schleife;
    schleife = 0;
 
    Console::WriteLine("Vor dem Einschalten.\n\n");
    tivi -> ausgabe();
 
    Console::WriteLine("Gerät einschalten:    1");
    Console::WriteLine("Gerät ausschalten:    0\n");
 
    auswahl = Console::Read();
    Console::ReadLine();
 
    switch (auswahl)
    {
        case '1':
            x = 1;
            tivi -> init(x);
 
            Console::WriteLine("Nach dem Einschalten \n");
 
            tivi ->ausgabe();
 
            while (schleife >= 0)
            {
                Int32 y;
 
                Console::WriteLine("Was möchten Sie tun?\n");
                Console::WriteLine("Programm ändern:    1");
                Console::WriteLine("Ton andern:     2");
                Console::WriteLine("Gerät ausschalten:    0\n\n");
                y = Convert::ToInt32(Console::Read());
 
                Console::ReadLine();
 
                switch (y)
                {
                    case '1':
 
                        Int32 kanal, i;
 
                        Console::WriteLine("ARD:    1");
                        Console::WriteLine("ZDF:    2");
                        Console::WriteLine("NDR:    3");
                        Console::WriteLine("RTL:    4\n");
                        /*Console::WriteLine("Ausschalten: 0\n");*/
                        kanal = Convert::ToInt32(Console::Read());
 
                        switch (kanal)
                        {
                            case '1':
                                i = 1;
                                tivi -> programm(i);
                            break;
 
                            case '2':
                                i = 2;
                                tivi -> programm(i);
                            break;
 
                            case '3':
                                i = 3;
                                tivi -> programm(i);
                            break;
 
                            case '4':
                                i = 4;
                                tivi -> programm(i);
                            break;
                        }// 3. Switch is zu ende
                   
                    break;// Case 1 ist zu ende
 
                } // 2. Switch is zu ende
 
            } //Ich glaube, die Schleife sollte hier enden, oder?
 
        break;//Damit is Case 1 zu ende
           
           
           
        case '2':
            z = 0;
            Console::WriteLine("Um die Lautstärke zu änder eine Zahl eingeben.\n");
            z = Convert::ToInt32(Console::ReadLine());
 
            tivi -> ton(z);
        break;
 
        case '0':
            z = 0;
            tivi -> init(z);
        break;
 
        default:
            Console::WriteLine("Falsche Auswahl.");
 
    } // 1. Switch is zu ende
    tivi -> ausgabe();
 
 
/* Das kann man vergessen
    // Wozu das denn? Es gingen doch schon alle Klammern zu
    //}/*while(schleife != 0);*/

    //}
*/
 
 
    Console::ReadKey();
    return 0;
}


@champman:

Kommentier das Ganze bitte aus, sag uns was genau missglückt is
und meld dich wieder, ok?
Ich check den Code überhaupt nicht.

Weißt du in 4 Monaten noch, was das Ganze bewirken soll??

_________________
Wenn euch mein Name nicht gefällt, dann denkt euch an der Stelle xy97 oder so.
(Ich habe nämlich nicht vor, viren zu proggen & ich brauchte nen Namen, den noch niemand hat)


Zuletzt bearbeitet von virusscript24 am 17:34:19 30.05.2012, insgesamt 1-mal bearbeitet
champman
Mitglied

Benutzerprofil
Anmeldungsdatum: 12.08.2007
Beiträge: 66
Beitrag champman Mitglied 18:20:26 30.05.2012   Titel:              Zitieren

Hey virusscript24!

Nein, die Schleife soll schon dort enden, wo ich die Klammer gesetzt habe. Setze ich sie dort, wo Du sie mit grün interpretiert hast, dann will das Programm ständig auch den Ton ändern.

Ich möchte es so, das nur die drei Abfragen als Wiederholung dort auftauchen aber
das Programm beim eingeben von Null 1. Den Zustand ein auf aus schaltet und
2. Das Programm beendet oder die erste Abfrage Einschalten oder Ausschalten erscheint. :confused:

Mein Gedanke geht von einer wirklichen Fernbedienung aus. Die Fragt auch nicht Ständig danach den Ton zu ändern und wenn man Power drückt, dann ist der Fernseher entweder an oder aus.

Gruß und lieben Dank
champman
virusscript24
Mitglied

Benutzerprofil
Anmeldungsdatum: 17.02.2012
Beiträge: 55
Beitrag virusscript24 Mitglied 19:37:30 30.05.2012   Titel:              Zitieren

Oh, sry, aber ich bin aus dem Quelltext nicht schlau geworden...
Tut mir leid, aber könntest du bitte das ganze kommentieren & uns die Fehler erklären?
Ich wäre dir sehr dankbar

_________________
Wenn euch mein Name nicht gefällt, dann denkt euch an der Stelle xy97 oder so.
(Ich habe nämlich nicht vor, viren zu proggen & ich brauchte nen Namen, den noch niemand hat)
champman
Mitglied

Benutzerprofil
Anmeldungsdatum: 12.08.2007
Beiträge: 66
Beitrag champman Mitglied 20:33:23 30.05.2012   Titel:              Zitieren

Hallo

Natürlich! mach ich glatt. Zusätzlich die Bildschirmausgabe.


C++/CLI:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
#include "stdafx.h"
 
using namespace System;
 
ref class TV_Klasse         // Klasendefinition
{
    Int32 an_aus;           // Klassenelemente
    Int32 Programm;
    Int32 Ton;
 
public:
 
    Void init(Int32 zustand);       // Methoden der Klasse (Bekanntmachung)
    Void setprogramm(Int32 kanal);
    Void setton(Int32 aendern);
    Void ausgabe();
};
 
Void TV_Klasse::init(Int32 zustand) //Methode zur Initialisierung
{
    if (zustand != 0)
 
        an_aus = 1;
    else
        an_aus = 0;
        Programm = 1;
        Ton = 5;
}
 
Void TV_Klasse::setprogramm(Int32 kanal) // Methode zum Programm ändern
{
    Programm = kanal;
}
 
Void TV_Klasse::setton(Int32 aendern)   // Methode um Ton zu ändern
{
    Ton = aendern;
}
 
Void TV_Klasse::ausgabe()               //Methode für die Ausgabe der Veränderung
{
    Console::WriteLine("\n\nDas Gerät hat den Zustand {0} ",an_aus);
    Console::WriteLine("Aktives Programm {0}",Programm);
    Console::WriteLine("Die Lautsärke ist auf {0} \n\n\n",Ton);
}
 
 
int main(array<System::String ^> ^args)
{
   TV_Klasse^ tivi;
 
    tivi = gcnew TV_Klasse;
 
    Int32 auswahl, x, z;
    Int32 y = 0;
   
    Console::WriteLine("Vor dem Einschalten.\n\n");     // Erster Aufruf der Methode Ausgabe
    tivi -> ausgabe();                                  // um an zu zeigen das Gerät aus ist.
       
    Console::WriteLine("Gerät einschalten:  1");        // Einschalten des Gerätes
    Console::WriteLine("Gerät ausschalten:  0\n");      // Ausschalten des Gerätes
 
    auswahl = Console::Read();
    Console::ReadLine();
 
    switch (auswahl)
    {
    case '1':                   // Case-Zweig zum 1 Einschalten, da nur dann Änderungen möglich
 
        x = 1;
        tivi -> init(x);        // Veränderung bei an_aus
 
        Console::WriteLine("Nach dem Einschalten \n");
 
        tivi ->ausgabe();       // Ausgabe zeigt Änderungsstatus auf Eingeschaltet
               
         while (y != 3)         // Beginn der Schleife für die Auswahl zum Ton oder Programm ändern
        {                      
            Console::WriteLine("Was möchten Sie tun?\n");
            Console::WriteLine("Programm ändern:    1");   
            Console::WriteLine("Ton andern:     2");
            Console::WriteLine("Gerät ausschalten:  0\n\n");    //Hier soll das Programm anders Funktionieren
            y = Convert::ToInt32(Console::Read());              // Erläuterung bei Bildschirmausgbe
                           
            Console::ReadLine();
       
            switch (y)                  // Programm ändern
            {
            case '1':
 
                Int32  kanal, i;
 
                Console::WriteLine("ARD:    1");    // Auswahl der Kanäle
                Console::WriteLine("ZDF:    2");
                Console::WriteLine("NDR:    3");
                Console::WriteLine("RTL:    4\n");
                kanal = Convert::ToInt32(Console::Read());
 
                Console::ReadLine();
 
                switch (kanal)          // Die Auswertungen der Kanalauswahl
                {                       // damit Methode setprogramm auch
                case '1':               // nach dem eingegebenen Kanal umschaltet
 
                    i = 1;
                    tivi -> setprogramm(i);
                    break;
 
                case '2':
 
                    i = 2;
                    tivi -> setprogramm(i);
                    break;
 
                case '3':
 
                    i = 3;
                    tivi -> setprogramm(i);
                    break;
 
                case '4':
 
                    i = 4;
                    tivi -> setprogramm(i);
                    break;
                               
                }                           // Kanal Auswahl ende
                                           
                break;                      // stop von Kanal Auswahl
                           
            case '2':                       // Hir beginnt Zweit Ton ändern im Auswahlmenü nach Wihle
 
                z = 0;
                Console::WriteLine("Um die Lautstärke zu änder eine Zahl eingeben.\n");
                z = Convert::ToInt32(Console::ReadLine());
               
                tivi -> setton(z);          // damit Methode setton geändert wird
                break;
           
            case '0':                       // Hier wird ein_aus zwar auf Null gesetzt
                                            // aber Programm nicht beendet
                z = 0;
                tivi -> init(z);
                break;
                       
            default:
 
                Console::WriteLine("Falsche Auswahl.");
            }
            tivi -> ausgabe();              // Ausgabe nach Änderungen oder Änderung
       
        }
   
    }  
    Console::ReadKey();
    return 0;
}


Jetzt die Ausgabe:


Vor dem Einschalten. (Dies Ausgabe ist OK)

Das Gerät hat den Zustand 0
Aktives Programm 0
Die Lautsärke ist auf 0


Gerät einschalten: 1 (Das ist OK)
Gerät ausschalten: 0

1

Nach dem Einschalten ( Auch OK)

Das Gerät hat den Zustand 1
Aktives Programm 1
Die Lautsärke ist auf 5


Was möchten Sie tun? ( OK )

Programm ändern: 1
Ton andern: 2
Gerät ausschalten: 0

1

ARD: 1 ( Immer noch OK )
ZDF: 2
NDR: 3
RTL: 4

2

Das Gerät hat den Zustand 1 ( Ausgabe OK )
Aktives Programm 2
Die Lautsärke ist auf 5

Was möchten Sie tun? ( Ist auch OK)

Programm ändern: 1
Ton andern: 2
Gerät ausschalten: 0

2

Um die Lautstärke zu änder eine Zahl eingeben. (Wieder OK)

3

Das Gerät hat den Zustand 1 (Diese Ausgabe ist auch OK)
Aktives Programm 2
Die Lautsärke ist auf 3

Was möchten Sie tun? (Nochmal OK, weil noch nicht ausgeschaltet)

Programm ändern: 1
Ton andern: 2
Gerät ausschalten: 0

0

Das Gerät hat den Zustand 0 (Als Kontrollausgabe OK)
Aktives Programm 1
Die Lautsärke ist auf 5



Was möchten Sie tun? ( Nicht mehr OK )

Programm ändern: 1 ( Hier möchte ich entweder dass das Programm )
Ton andern: 2 ( schließt oder das Menü zum Ein und Ausschalten )
Gerät ausschalten: 0 ( wieder erscheint. z. B. 0 = ende oder so

Hoffe das es jetzt verständlicher ist und Du mein Problem besser verstehst.

Herzlichen Dank

champman
virusscript24
Mitglied

Benutzerprofil
Anmeldungsdatum: 17.02.2012
Beiträge: 55
Beitrag virusscript24 Mitglied 12:03:47 31.05.2012   Titel:              Zitieren

champman schrieb:

Was möchten Sie tun? ( Nicht mehr OK )

Programm ändern: 1 ( Hier möchte ich entweder dass das Programm )
Ton andern: 2 ( schließt oder das Menü zum Ein und Ausschalten )
Gerät ausschalten: 0 ( wieder erscheint. z. B. 0 = ende oder so


Wenn ich das richtig verstehe, willst du an dieser Stelle
entweder zum Programmende oder zum ein-/ausschalte menü kommen.

Das könntest du mit goto machen. Manchmal ganz praktisch,
aber sehr sparsam einsetzen.
C++:
1
2
3
4
5
6
7
8
9
10
11
12
int main(){
while(blabla){
    if(blabla){
        goto ende; // Um zum Ende zu Springen
    }
}
 
getchar();
ende:             // Um Sprungmarke zu setzen
 
return 0;
}



Ich hoffe, das war das was du gesucht hast...

Lg virusscript24

_________________
Wenn euch mein Name nicht gefällt, dann denkt euch an der Stelle xy97 oder so.
(Ich habe nämlich nicht vor, viren zu proggen & ich brauchte nen Namen, den noch niemand hat)
champman
Mitglied

Benutzerprofil
Anmeldungsdatum: 12.08.2007
Beiträge: 66
Beitrag champman Mitglied 19:23:18 31.05.2012   Titel:              Zitieren

Hey virusscrip24

Habe es mit "Label und goto" hinbekommen. Ist zwar nicht die eleganteste Lösung, aber funktioniert zu mindest.

Großen Dank
champman
c++.de :: C++/CLI mit .NET ::  Meine erste Klasse läuft nur mit Schleife Probleme  
Gehen Sie zu Seite 1, 2  Weiter
Auf Beitrag antworten

Zeige alle Beiträge auf einer Seite




Nächstes Thema anzeigen
Vorheriges Thema anzeigen
Sie können Beiträge in dieses Forum schreiben.
Sie können auf Beiträge in diesem Forum antworten.
Sie können Ihre Beiträge in diesem Forum nicht bearbeiten.
Sie können Ihre Beiträge in diesem Forum nicht löschen.
Sie können an Umfragen in diesem Forum nicht mitmachen.

Powered by phpBB © 2001, 2002 phpBB Group :: FI Theme

c++.de ist Teilnehmer des Partnerprogramms von Amazon Europe S.à.r.l. und Partner des Werbeprogramms, das zur Bereitstellung eines Mediums für Websites konzipiert wurde, mittels dessen durch die Platzierung von Werbeanzeigen und Links zu amazon.de Werbekostenerstattung verdient werden kann.

Die Vervielfältigung der auf den Seiten www.c-plusplus.de, www.c-plusplus.info und www.c-plusplus.net enthaltenen Informationen ohne eine schriftliche Genehmigung des Seitenbetreibers ist untersagt (vgl. §4 Urheberrechtsgesetz). Die Nutzung und Änderung der vorgestellten Strukturen und Verfahren in privaten und kommerziellen Softwareanwendungen ist ausdrücklich erlaubt, soweit keine Rechte Dritter verletzt werden. Der Seitenbetreiber übernimmt keine Gewähr für die Funktion einzelner Beiträge oder Programmfragmente, insbesondere übernimmt er keine Haftung für eventuelle aus dem Gebrauch entstehenden Folgeschäden.