Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

Anonymous

unregistriert

1

12.01.2006, 18:02

Ich hab was aber weiß nicht wie es funktioniert

ich hab das buch etwa seit nem halben jahr (is echt super :))...
so allmählich hab ich angefangen zu lernen un jetz mal etwas rumprobiert
also hab ich folgendes programm geschrieben (wenn man es so nennen kann)


unsigned int seitenlaenge;

cout << "Seitenlaenge des Quadrates : ";
cin >> seitenlaenge;

/*
modulo nutzen um rest zu prüfen
*/

if (seitenlaenge % 2 != 0)
{
cout << endl;

for (int i=0 ; i< seitenlaenge ; i++)
{

for (int j=0 ; j< seitenlaenge ; j++)
{
if ((j!=seitenlaenge-i-1)&&(j!=i))
{
cout << "X";
}
else
{
cout << " ";
}

}

cout << endl;
}
cout << endl;
}

else
{
cout << "Falsche Eingabe!" << endl;
}


die bildausgabe ist so hier

xxx
x x x
xx xx
x x x
xxx

vielleicht hab ichs geschrieben aber wie es funktioniert weiß ich wirklich nicht kann mir es jemand erklären

2

12.01.2006, 18:22

soory

ähm bin neu un hab deshalb keine ahnung wie mans ordentlicher hinkriegt...
(ich bin ein noob der dringend hilfe brauch)[/cpp]

3

12.01.2006, 19:45

Erstmal fass ich das ganz in einen code zusammen und ändere den kommentar auf // anstatt /*.

C-/C++-Quelltext

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
 unsigned int seitenlaenge;

cout << "Seitenlaenge des Quadrates : ";
cin >> seitenlaenge;

// modulo nutzen um rest zu prüfen


if (seitenlaenge % 2 != 0)
{
cout << endl;

for (int i=0 ; i< seitenlaenge ; i++)
{

for (int j=0 ; j< seitenlaenge ; j++)
{
if ((j!=seitenlaenge-i-1)&&(j!=i))
{
cout << "X";
}
else
{
cout << " ";
}

}

cout << endl;
}
cout << endl;
}

else
{
cout << "Falsche Eingabe!" << endl;
} 


ist zwar nicht viel aber immerhin :top:

4

12.01.2006, 20:59

ja^^

hab mir angewöhnt /* kommentar */ zu machen weil eigentlich mehr drinstand was ich rausgenommen hab...
wollt euch nich mit meinen eselsbrücken etc die ich so reinschreib (quasi als selbstutorial) nerven.
aber wie funktioniert mein programm denn nun ??? ich komm nich dahinter wie ichs gepackt hab dass es wirklich macht was ich will :wirbel:

und wie hast duws in diese quellcode ansicht gekriegt?

5

12.01.2006, 21:41

hmm in dem er [cpp] am Anfang und [/cpp] am Ende des Codes gesetzt hat...
Devil Entertainment :: Your education is our inspiration
Der Spieleprogrammierer :: Community Magazin
Merlin - A Legend awakes :: You are a dedicated C++ (DirectX) programmer and you have ability to work in a team? Contact us!
Siedler II.5 RttR :: The old settlers-style is comming back!

Also known as (D)Evil

Meandor

Frischling

Beiträge: 55

Wohnort: Oberhausen

Beruf: Student

  • Private Nachricht senden

6

12.01.2006, 23:17

was hast du denn vor? Willst du dieses Rechteck mit den Trennlinien erstellen? (Listing 3.12)

oder was möchtest du was geklärt werden sollte? Denn nach Rechteck sieht ja das Ergebnis nicht gerade aus. Ein bisschen schief.

Oder willst du das man deinen Quelltext erläutert?

J.M.K.

Alter Hase

Beiträge: 500

Wohnort: BW Karlsruhe Ittersbach

Beruf: Schüler

  • Private Nachricht senden

7

13.01.2006, 09:07

Wie kann man einen funktionierenden Quelltext schreiben wenn man keine Ahnung hat was man dazu machen soll und es nicht versteht? Hab glaub noch nie was geschrieben was ich selbst nicht verstehe. ;)

8

13.01.2006, 13:40

herrje hier habter das ganze programm seht euch am besten an was passiert wenn ihrs startet

C-/C++-Quelltext

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
#include <iostream>

using namespace std;

int main ()
{
    unsigned int seitenlaenge;

    cout << "Seitenlaenge des Quadrates : ";
        cin >> seitenlaenge;    

    if (seitenlaenge % 2 != 0)
    {
        cout << endl;
            
        for (int i=0 ; i< seitenlaenge ; i++)
        {
            
            for (int j=0 ; j< seitenlaenge ; j++)
            {
                if ((j!=seitenlaenge-i-1)&&(j!=i))
                {
                    cout << "X";
                }
                else 
                {
                    cout << " ";
                }

            }   

            cout << endl;
        }
    cout << endl;
    }
    
    else
    {
        cout << "Falsche Eingabe!" << endl;
    }

    return 0;
}


is schwer zu erkläaren was ich wollte...
Ein quadrat mit gekreuzten leerstellen so wie ein X

meinen quelltext CHECK ICH NICHT
ich will nur wissen warum das rauskommt was rauskommt HILFAE!!

Lemming

Alter Hase

Beiträge: 550

Beruf: Schüler

  • Private Nachricht senden

9

13.01.2006, 14:43

naja das entscheidende ist einfach, dass du mit folgender if-anweisung:

C-/C++-Quelltext

1
2
3
4
5
6
7
8
if ((j!=seitenlaenge-i-1)&&(j!=i))
{
    cout << "X";
}
else
{
    cout << " ";
}
feststellst, ob sich zwischen dem aktuellen punkt und der rechten oder der linken oberen ecke ein quadrat bildet. und wenn das so ist, dann muss an der stelle ein leerzeichen gesetzt werden.
vielleicht gehst du deinen code einfach selber mal zeile für zeile durch und dann wirst du schon sehen, warum das passiert, was du haben willst...
und bennen 'i' und 'j' am besten in 'x' und 'y' um, dann hats mehr ähnlichkeit mit dem guten alten Koordinaten system
Es gibt Probleme, die kann man nicht lösen.
Für alles andere gibt es C++...

Meandor

Frischling

Beiträge: 55

Wohnort: Oberhausen

Beruf: Student

  • Private Nachricht senden

10

13.01.2006, 16:14

Also bei mir klappt das Programm und dein X lässt sich auf der Konsole erstellen.

Zitat


Ein quadrat mit gekreuzten leerstellen so wie ein X


Vielleicht klickst du in der Entwicklungsumgebung mal auf bereinigen und dann mit strg F5 nochmal erstellen.

dann müsste es klappen wenn du ungerade Zahlen eintippst.

Mfg Jens

Werbeanzeige