www.vorhilfe.de
Vorhilfe

Kostenlose Kommunikationsplattform für gegenseitige Hilfestellungen.
Hallo Gast!einloggen | registrieren ]
Startseite · Forum · Wissen · Kurse · Mitglieder · Team · Impressum
Navigation
 Startseite...
 Neuerdings beta neu
 Forum...
 vorwissen...
 vorkurse...
 Werkzeuge...
 Nachhilfevermittlung beta...
 Online-Spiele beta
 Suchen
 Verein...
 Impressum
Das Projekt
Server und Internetanbindung werden durch Spenden finanziert.
Organisiert wird das Projekt von unserem Koordinatorenteam.
Hunderte Mitglieder helfen ehrenamtlich in unseren moderierten Foren.
Anbieter der Seite ist der gemeinnützige Verein "Vorhilfe.de e.V.".
Partnerseiten
Weitere Fächer:

Open Source FunktionenplotterFunkyPlot: Kostenloser und quelloffener Funktionenplotter für Linux und andere Betriebssysteme
Forum "C/C++" - Array
Array < C/C++ < Programmiersprachen < Praxis < Informatik < Vorhilfe
Ansicht: [ geschachtelt ] | ^ Forum "C/C++"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien

Array: Frage (beantwortet)
Status: (Frage) beantwortet Status 
Datum: 18:41 Di 07.09.2010
Autor: Ice-Man

Hallo,

habe hier mal wieder ein Feld programmiert.
Es funktioniert soweit auch.

Nur habe ich ein kleines Problem, bzw. einen kleinen Denkfehler.

(Aufgabe war die verkauften Automodelle je Monat in eine Tabelle zu bringen)
Ich habe ja jetzt auch die "maximalen Verkaufszahlen" eines Monats bestimmt.

Nur jetzt weis ich leider nicht, welchen "Schritt" ich einfügen muss, damit auch der Monat in dem die meisten Autos verkauft wurden ausgegeben wird.
Kann mir jemand mal bitte einen Tipp geben??


Ich entschuldige mich schon einmal dafür, das es ein wenig unsauber geschrieben ist.
Bzw. die Ausgabe nicht symmetrisch erfolgt, da mein Texteditor eine kleines Problem hatte.

Dateianhänge:
Anhang Nr. 1 (Typ: txt) [nicht öffentlich]
        
Bezug
Array: Antwort
Status: (Antwort) fertig Status 
Datum: 19:00 Di 07.09.2010
Autor: fencheltee


> Hallo,
>  
> habe hier mal wieder ein Feld programmiert.
>  Es funktioniert soweit auch.
>  
> Nur habe ich ein kleines Problem, bzw. einen kleinen
> Denkfehler.
>  
> (Aufgabe war die verkauften Automodelle je Monat in eine
> Tabelle zu bringen)
>  Ich habe ja jetzt auch die "maximalen Verkaufszahlen"
> eines Monats bestimmt.
>  
> Nur jetzt weis ich leider nicht, welchen "Schritt" ich
> einfügen muss, damit auch der Monat in dem die meisten
> Autos verkauft wurden ausgegeben wird.
>  Kann mir jemand mal bitte einen Tipp geben??
>  
>
> Ich entschuldige mich schon einmal dafür, das es ein wenig
> unsauber geschrieben ist.
>  Bzw. die Ausgabe nicht symmetrisch erfolgt, da mein
> Texteditor eine kleines Problem hatte.

ich MUSS doch irgendwie jeden monat 9 autos eintippen, somit hab ich doch auch 9 verkäufe?!
ansonsten beschreibe dein programm mal ein wenig mehr

gruß tee


Bezug
                
Bezug
Array: Frage (beantwortet)
Status: (Frage) beantwortet Status 
Datum: 19:07 Di 07.09.2010
Autor: Ice-Man

Also muss ich ähnlich wie bei der "if-Anweisung" die jeweiligen "Zeilensummen" miteinader vergleichen?
Bzw. die jeweils 9 Verkäufe?

Bezug
                        
Bezug
Array: Antwort
Status: (Antwort) fertig Status 
Datum: 19:11 Di 07.09.2010
Autor: fencheltee


> Also muss ich ähnlich wie bei der "if-Anweisung" die
> jeweiligen "Zeilensummen" miteinader vergleichen?
>  Bzw. die jeweils 9 Verkäufe?

was soll das heissen??
du hast das programm doch geschrieben.. warum MUSS man denn 9 modelle eingeben? wenn ich nur 3 verkauft hab, ist das ja erstmal nich so der hit...
wenn das geklärt ist, kann man sich überlegen, wie man den ertragreichsten monat ausliest

Bezug
                                
Bezug
Array: Frage (überfällig)
Status: (Frage) überfällig Status 
Datum: 19:27 Di 07.09.2010
Autor: Ice-Man

Naja, das ist doch vom Prinzip her egal, oder?
Ob ich einem Monat 9 Modelle oder nur bspweise. 5 verkauft habe.
Bei denen die ich nicht verkauft habe, trage ich einfach ne Null ein.




Bzw.
ich häng mal noch nen Quelltext an.
Weis ja nicht ob es möglich ist, aber kann man hier irgendwie nen Befehl eingliedern, das man bestimmt, in welcher Zeile sich die max. Zeilensumme befindet?

Danke

Dateianhänge:
Anhang Nr. 1 (Typ: txt) [nicht öffentlich]
Bezug
                                        
Bezug
Array: Frage (reagiert)
Status: (Frage) reagiert/warte auf Reaktion Status 
Datum: 21:52 Mi 08.09.2010
Autor: Ice-Man

Ich habe hier jetz noch einen Befehl mit reingeschrieben.
x=Zeilen+1;

Jetzt funktioniert es ja auch, also das mir die Zeile ausgegeben wird, in der sich die maximale Summe befindet.

Nur wieso ist das so?
Ich mein, ich versteh nicht, warum ich das Ergebnis bekomm, nur weil ich eine neue Variable mit der Zeile "gleichsetze".

Kann mir das evtl. jemand erklären?

Danke


Dateianhänge:
Anhang Nr. 1 (Typ: txt) [nicht öffentlich]
Bezug
                                                
Bezug
Array: Antwort
Status: (Antwort) fertig Status 
Datum: 15:13 Fr 10.09.2010
Autor: Disap

Hallo Ice-Man

> Ich habe hier jetz noch einen Befehl mit reingeschrieben.
>  x=Zeilen+1;

Aha.

> Jetzt funktioniert es ja auch, also das mir die Zeile

Also der Ansatz vorher gibt dir auch die maximale Zeilensumme aus, nur halt nicht, welche Zeile es ist.

> ausgegeben wird, in der sich die maximale Summe befindet.
>  
> Nur wieso ist das so?

Weil du noch die entsprechende Zeile eingefügt hast.

>  Ich mein, ich versteh nicht, warum ich das Ergebnis
> bekomm, nur weil ich eine neue Variable mit der Zeile
> "gleichsetze".
>  
> Kann mir das evtl. jemand erklären?

Erst Mal muss ich sagen, dass ich gerade nicht nachvollziehen kann, was du genau willst.
Ich versuche es mal:

Dein Problem ist, dass du gerne wissen möchtest, warum die (Quell-)Zeile

x=Zeilen+1;

plötzlich dazu führt, dass am Ende auch die richtige Zeilennummer ausgeührt wird?

Das liegt einfach daran: Du hast 4 Forschleifen. Die ersten 2 dienen zum Einlesen von Zahlen. Die für dein Problem wichtigen, sind die nächsten beiden, die zur Ausgabe und Verrechnung der eingegebenen Daten dienen.

Du befindest dich in der 4. Forschleife:
1:
2: for (Spalten=0; Spalten<4; Spalten++)
3: {
4: printf("  %i  ",tabelle[Zeilen][Spalten]);
5: Summe=Summe+tabelle[Zeilen][Spalten];
6: }

Im ersten Durchlauf befindest du dich doch in der ersten Zeile (wegen der 3. Forschleife, und weil die 4. Forschleife ja in der 3. Forschleife enthalten ist). Also erster Durchlauf, erste Zeile. Dann berechnest du die Zeilensumme, indem du die 4 Spalten durchgehst. Jetzt ist die 4. Forschleife erst ein Mal komplett abgearbeitet und du springst heraus, zu dem nächsten Codesegment:

1:
2: if (max<Summe)
3: {
4: max=Summe;
5: x=Zeilen+1;
6: }
7:


Die Variable max ist noch gleich 0 (da es der 1. Durchlauf der dritten Forschleife ist). Also ist nun max = 1. Zeilensumme (durch das Zeilen+1).

Jetzt ist die dritte Forschleife abgearbeitet (es ist noch Zeile = 0) und wird nun auf Zeile =1 erhöht. Es geht wieder in die 4. Forschleife, die 2. Zeilensumme wird berechnet und du bist wieder beim if. Die IF-Anweisung wird natürlich nur dann ausgeführt, wenn die zweite Zeilensumme größer der ersten ist.
Ist das der Fall, wird x = 2. Zeilensumme gesetzt, ist das nicht der Fall, bleibt x = 1. Zeilensumme und es beginnt der dritte 3. Forschleifen durchlauf (also Zeile = 2 in der dritten Forschleife)

War das deine Frage?

Viele Grüße
Disap


Bezug
                                        
Bezug
Array: Fälligkeit abgelaufen
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 20:20 Do 09.09.2010
Autor: matux

$MATUXTEXT(ueberfaellige_frage)
Bezug
Ansicht: [ geschachtelt ] | ^ Forum "C/C++"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien


^ Seitenanfang ^
www.mathebank.de
[ Startseite | Forum | Wissen | Kurse | Mitglieder | Team | Impressum ]